Gemini 지원으로 SQL 작성

이 문서에서는Google Cloud의 AI 기반 공동작업 도구인 Gemini를 사용하여 PostgreSQL용 AlloyDB에서 다음 작업을 수행하는 방법을 설명합니다.

Google Cloud 용 Gemini가 사용자의 데이터를 사용하는 방법과 시점을 알아보세요.

이 문서는 AlloyDB에 익숙하고 SQL 및 데이터 분석에 어느 정도 익숙한 데이터베이스 관리자 및 데이터 엔지니어를 대상으로 합니다. AlloyDB를 처음 사용하는 경우 AlloyDB 개요를 참고하세요.

시작하기 전에

선택사항: 이 문서의 예시를 따라 하려면 다음 스키마를 사용하여 Singers 테이블을 만듭니다.

```sql
CREATE TABLE Singers (
  BirthDate  TIMESTAMPTZ,
  SingerId   BIGINT PRIMARY KEY,
  FirstName  VARCHAR(1024),
  LastName   VARCHAR(1024),
  SingerInfo BYTEA
);
```
After you create the `Singers` table, click
<span class="material-symbols-outlined">refresh</span>**Refresh** to
update your database schema.

AlloyDB에서 Gemini 기능을 사용 중지하려면 이 단계를 반복한 다음 사용 중지하려는 Gemini 기능을 선택 해제합니다.

필수 역할 및 권한

AlloyDB에서 Gemini를 사용하려면 다음 권한이 필요합니다.

  • alloydb.clusters.get
  • alloydb.databases.list
  • alloydb.instances.executeSql
  • alloydb.instances.list
  • alloydb.users.list

roles/alloydb.admin 역할을 통해 이 권한을 얻을 수 있습니다. 이 역할이 없으면 조직 관리자에게 문의하여 액세스 권한을 요청하세요. 커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.

또한 인증에 사용할 데이터베이스에 대한 데이터베이스 수준 권한이 있는지 확인합니다.

자연어 프롬프트를 사용하여 SQL 쿼리 생성

자연어 주석(또는 프롬프트)으로 Gemini가 스키마에 따른 쿼리를 생성하게 할 수 있습니다. 예를 들어 Gemini가 다음 프롬프트에 대한 응답 SQL을 생성하도록 유도할 수 있습니다.

  • '고객 만족도 설문조사 결과를 추적하는 테이블을 만들어 줘.'
  • 'Singers 테이블에 생일이라는 날짜 열을 추가해 줘.'
  • '90년대에 태어난 가수는 몇 명이야?'

새 테이블 또는 열 추가와 같이 스키마가 변경된 경우 Gemini를 사용하기 전에 refresh새로고침을 클릭하여 스키마를 업데이트해야 합니다.

Gemini 지원을 통해 AlloyDB에 SQL을 생성하려면 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 AlloyDB 페이지를 엽니다.

    AlloyDB로 이동

  2. 목록에서 클러스터를 선택합니다.

  3. 탐색 메뉴에서 AlloyDB를 클릭합니다.

  4. 데이터베이스와 사용자를 선택하고 사용자의 비밀번호를 입력합니다.

  5. 인증을 클릭합니다. 탐색기 창에 데이터베이스의 객체 목록이 표시됩니다.

  6. 데이터베이스를 쿼리하려면 새 SQL 편집기 탭을 클릭합니다. SQL 생성이 사용 설정되어 있는지 확인합니다.

  7. SQL을 생성하려면 쿼리 편집기에서 --로 시작하고 그 뒤에 한 줄 주석이 있는 주석을 입력한 다음 반환을 누릅니다.

    예를 들어 -- add a row to table singers 프롬프트를 입력하고 반환 키를 누르면 Gemini에서 다음과 유사한 SQL을 생성합니다.

    INSERT INTO Singers (SingerId, FirstName, LastName, BirthDate)
    VALUES (1, Alex, 'M.', '1977-10-16');
    

    Singers 테이블을 사용하여 예시를 계속 진행하면 -- show all singers born in the 70s 프롬프트를 입력하면 Gemini가 다음과 비슷한 SQL을 생성합니다.

    SELECT *
    FROM Singers
    WHERE Singers.BirthDate
    BETWEEN '1970-01-01' AND '1979-12-31'
    
  8. SQL 추천을 검토하고 다음 작업을 수행합니다.

    • Gemini에서 생성한 SQL을 수락하는 옵션을 표시하려면 쿼리 위에 포인터를 가져갑니다. 다음 옵션이 표시됩니다.
      • 수락: 추천 쿼리를 수락하려면 Tab을 누른 후 실행을 클릭합니다.
      • 단어 수락: 추천 쿼리를 부분적으로 수락하려면 Control+Right arrow(또는 macOS의 경우 Command+Right arrow)를 누른 다음 실행을 클릭합니다.
    • 원래 SQL을 수정하려면 Tab을 누르고 SQL을 수정한 후 실행을 클릭합니다.
    • 추천을 닫으려면 Esc를 누르거나 계속 입력합니다.

코딩 작성 지원 도구

코드 작성 지원 도구를 사용하려면 다음 단계를 수행합니다.

  1. Google Cloud 콘솔에서 AlloyDB 페이지를 엽니다.

    AlloyDB로 이동

  2. 목록에서 클러스터를 선택합니다.

  3. 탐색 메뉴에서 AlloyDB를 클릭합니다.

  4. 데이터베이스와 사용자를 선택하고 사용자의 비밀번호를 입력합니다.

  5. 인증을 클릭합니다. 탐색기 창에 데이터베이스의 객체 목록이 표시됩니다.

  6. 데이터베이스를 쿼리하려면 새 탭을 클릭합니다.

  7. 쿼리 편집기 옆에 있는 pen_spark 코드 작성 지원을 클릭합니다.

  8. 코드 작성 지원 창에 프롬프트를 입력합니다. 예를 들어 add a row to table singers이고 생성을 클릭합니다.

    Gemini는 다음과 유사한 SQL을 생성합니다.

    INSERT INTO Singers (SingerId, FirstName, LastName, BirthDate)
    VALUES (1, Alex, 'M.', '1977-10-16');
    
  9. 생성된 SQL을 검토하고 다음 작업 중 하나를 수행합니다.

    • Gemini에서 생성한 SQL을 수락하려면 삽입을 클릭하여 문을 쿼리 편집기에 삽입합니다. 그런 다음 실행을 클릭하여 추천 SQL을 실행합니다.
    • Gemini에 새 쿼리를 생성하라고 요청하려면 수정을 클릭합니다. 프롬프트를 수정한 후 업데이트를 클릭합니다. 그런 다음 새로 생성된 문을 수락하거나 추천을 닫을 수 있습니다.
    • 추천을 닫으려면 코드 작성 지원 창을 닫습니다.

쿼리 편집기에서 SQL 문 완성

AlloyDB의 Gemini는 SQL 코드를 작성하는 데 도움이 되도록 AI 지원 코드 완성 제안을 제공합니다. Gemini가 사용 설정된 상태에서 AlloyDB 쿼리 편집기에 텍스트를 입력하면 Gemini가 SQL 코드를 예측하고 자동 완성합니다.

인라인 코드 추천을 사용하려면 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 AlloyDB 페이지를 엽니다.

    AlloyDB로 이동

  2. 목록에서 클러스터를 선택합니다.

  3. 탐색 메뉴에서 AlloyDB를 클릭합니다.

  4. 데이터베이스와 사용자를 선택하고 사용자의 비밀번호를 입력합니다.

  5. 인증을 클릭합니다. 탐색기 창에 데이터베이스의 객체 목록이 표시됩니다.

  6. 데이터베이스를 쿼리하려면 새 SQL 편집기 탭을 클릭합니다. SQL 완성이 사용 설정되어 있는지 확인합니다.

  7. 쿼리를 입력하고 줄 끝에 공백 또는 줄바꿈을 입력합니다. 텍스트를 입력하면 Gemini가 선택한 데이터베이스 스키마에서 지원되는 객체를 기반으로 추천 SQL을 표시합니다.

    예를 들어 Singers 테이블에 행을 추가하려면 SQL INSERT INTO Singers를 작성합니다.

    Gemini는 다음과 유사한 SQL을 제안합니다.

    INSERT INTO Singers
    (SingerId, FirstName, LastName, BirthDate)
    VALUES
      (1, 'Marc', 'Singer', '1970-03-24')
    
  8. SQL 추천을 검토하고 다음 작업을 수행합니다.

    • Gemini에서 생성한 SQL을 수락하려면 Tab을 누른 다음 실행을 클릭하여 추천 SQL을 실행합니다.
    • Gemini에서 생성한 SQL을 수정하려면 Tab을 누르고 SQL을 수정한 후 실행을 클릭합니다.
    • 추천 항목을 닫으려면 Esc를 누르거나 계속 입력합니다.

쿼리 편집기에서 SQL 문 설명

AlloyDB에서 Gemini를 사용하여 자연어로 SQL 쿼리를 설명할 수 있습니다. 이 설명은 복잡하거나 긴 쿼리에 대한 구문, 기본 스키마, 비즈니스 컨텍스트를 이해하는 데 도움이 될 수 있습니다.

  1. Google Cloud 콘솔에서 AlloyDB 페이지를 엽니다.

    AlloyDB로 이동

  2. 목록에서 클러스터를 선택합니다.

  3. 탐색 메뉴에서 AlloyDB를 클릭합니다.

  4. 데이터베이스와 사용자를 선택하고 사용자의 비밀번호를 입력합니다.

  5. 인증을 클릭합니다. 탐색기 창에 데이터베이스의 객체 목록이 표시됩니다.

  6. 데이터베이스를 쿼리하려면 새 탭을 클릭합니다.

  7. 쿼리 편집기에서 쿼리를 붙여넣습니다.

  8. Gemini에서 설명할 쿼리를 강조 표시한 다음 pen_spark 이 쿼리 설명을 클릭합니다.

    SQL 설명이 Gemini 채팅 창에 표시됩니다.

다음 단계