최근 몇 년 동안, 데이터의 현대화는 조직의 의사 결정 및 혁신을 주도하는 데 중추적이되었습니다. 그러나 통찰력을 추출하는 것은 종종 전문 SQL 기술을 가진 소수의 직원에게 의존하여 의미있는 정보에 액세스하는 데 마찰과 지연을 만듭니다. NQL은 생성 AI를 사용하여 자연어와 SQL의 격차를 해소함으로써 조직 전체의 데이터 중심의 통찰력을 민주화하는 것을 목표로합니다. 검색 엔진처럼 작동하면 모든 사용자가 일반 언어로 질문을 입력하고 원하는 데이터를 검색하기 위해 쿼리를 자동으로 생성 할 수 있습니다. 이는 조직의 모든 구성원에 대한 데이터 액세스를 간소화하고 열어야하며 민첩성을 높이고 데이터 중심 의사 결정을 촉진합니다.
이 프로젝트는 현재 개발 후반에 있습니다. 아직 개선되지 않은 것이 있지만 상업적으로 사용할 수있는 완전히 작동하는 데모입니다.
현재 NQL은 쿼리를 지원합니다.
다른 관계형 데이터베이스는 현재 기간 동안 지원되지 않습니다.

일반 파이썬, venv 또는 콘다를 사용할 수 있습니다. 이것이 당신이 선택할 수있는 옵션이라고 가정합니다.
./setup.sh 테스트를 위해 Jupyter 노트북을 사용하려면 /notebooks 디렉토리에서 .ipynb 노트북을 만들고 필요한 종속성을 다운로드 할 수 있습니다.
pip install -r requirements-dev.txtRDS에 로컬로 연결하려면 단순성으로 인해 EC2 요새 호스트를 사용하는 것이 좋습니다. 그러나 보안 준수로 인해 포트 22의 모든 연결을 허용하기 위해 Ingress Network를 설정 하지 않습니다 . 대신 AWS 시스템 관리자를 사용하여 SSH를 통해 액세스하십시오. 이 기사를 참조하십시오 : AWS Systems Manager Session Manager에서 포트 전달을 사용하여 원격 호스트에 연결하십시오.
이 스크립트를 사용하여 Bastion 호스트를 통해 포트 터널링을 실행하십시오.
aws ssm start-session --target < ec2_instance_id > --document-name AWS-StartPortForwardingSessionToRemoteHost --parameters ' {"portNumber":["<port_number>"],"localPortNumber":["<port_number>"],"host":["<host>"]} make rundocker-compose up구성 할 백엔드의 주요 구성 요소에는 다음이 포함됩니다.
RDS 클러스터를 만들고 SecretSmanager 내에 자격 증명을 저장하려면 선택하십시오. 비밀 이름은 응용 프로그램에 의해 검색 될 수있는 환경 내부에서 참조됩니다. 원하는 데이터를 RDS 데이터베이스로 가져옵니다.
일부 샘플 데이터를 사용하기 위해 PostgreSQL 용 Pagila를 사용하는 것이 좋습니다. 다음 명령을 사용하여 EC2 인스턴스에서 가져올 수 있습니다.
psql -U postgres -d < DATABASE_NAME > -f /tmp/psql_data/pagila-schema.sql ; psql -U postgres -d < DATABASE_NAME > -f /tmp/psql_data/pagila-insert-data.sql ; Temenos 데이터의 경우 SQL 덤프 파일은 이미 Amazon WorkDocs 내에 있습니다. 덤프 데이터는 Temenos.nql 파일을 참조하십시오.
psql -U postgres -d < DATABASE_NAME > -f /tmp/psql_data/temenos.sql ; AWS 콘솔의 AWS Secrets Manager로 이동하여 Store a new secret 하십시오.

Secret Type 섹션에서 Other type of secret 선택하십시오

Key/value pairs 에서 Plaintext 섹션을 선택하십시오.

아래 JSON 형식의 데이터베이스 자격 증명을 아래의 JSON 형식으로 채우고 Plaintext 섹션에 붙여 넣습니다.
{
"host" : " DB_HOST_NAME " ,
"username" : " DB_USERNAME " ,
"password" : " DB_PASSWORD " ,
"engine" : " postgresql " ,
"port" : " DB_PORT " ,
"dbname" : " DB_NAME "
} 비밀 이름을 입력하고 비밀을 만드십시오. ARN을 복사하여 RDS_SECRETS_MANAGER_ARN 에 환경 변수의 값으로 붙여 넣습니다.
이 튜토리얼을 참조하십시오 : AWS ECS & Fargate로 Docker 컨테이너를 배포하십시오.