이 문서에서는Google Cloud의 AI 기반 공동작업 도구인 Gemini를 사용하여 PostgreSQL용 AlloyDB에서 다음 작업을 수행하는 방법을 설명합니다.
Google Cloud 를 위한 Gemini에서 사용자 데이터를 사용하는 방법과 시점을 알아보세요.
이 문서는 AlloyDB에 익숙하고 SQL 및 데이터 분석에 어느 정도 익숙한 데이터베이스 관리자와 데이터 엔지니어를 대상으로 합니다. AlloyDB를 처음 사용하는 경우 AlloyDB 개요를 참조하세요.
시작하기 전에
Gemini Cloud Assist가 Google Cloud 사용자 계정과 프로젝트에 설정되어 있는지 확인합니다.
선택사항: 이 문서의 예시를 따라 하려면 다음 스키마를 사용하여
Singers테이블을 만듭니다.CREATE TABLE Singers ( BirthDate TIMESTAMPTZ, SingerId BIGINT PRIMARY KEY, FirstName VARCHAR(1024), LastName VARCHAR(1024), SingerInfo BYTEA );Singers테이블을 만든 후 refresh새로고침을 클릭하여 데이터베이스 스키마를 업데이트합니다.
AlloyDB에서 Gemini 기능을 사용 중지하려면 이 단계를 반복한 다음 사용 중지하려는 Gemini 기능을 선택 해제합니다.
필수 역할 및 권한
AlloyDB에서 Gemini를 사용하려면 다음 권한이 필요합니다.
alloydb.clusters.getalloydb.databases.listalloydb.instances.executeSqlalloydb.instances.listalloydb.users.listcloudaicompanion.companions.generateCodecloudaicompanion.instances.generateCodeserviceusage.services.get또는serviceusage.services.list
roles/alloydb.admin 역할을 통해 이 권한을 얻을 수 있습니다. 이 역할이 없으면 조직 관리자에게 문의하여 액세스 권한을 요청하세요. 커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.
또한 인증에 사용할 데이터베이스에 대한 데이터베이스 수준 권한이 있는지 확인합니다.
자연어 프롬프트를 사용하여 SQL 쿼리 생성
자연어 주석(또는 프롬프트)으로 Gemini가 스키마에 따른 쿼리를 생성하게 할 수 있습니다. 예를 들어 Gemini가 다음 프롬프트에 대한 응답 SQL을 생성하도록 유도할 수 있습니다.
- '고객 만족도 설문조사 결과를 추적하는 테이블을 만들어 줘.'
- 'Singers 테이블에 생일이라는 날짜 열을 추가해 줘.'
- '90년대에 태어난 가수는 몇 명이야?'
새 테이블 또는 열 추가와 같이 스키마가 변경된 경우 Gemini를 사용하기 전에 refresh새로고침을 클릭하여 스키마를 업데이트해야 합니다.
Gemini 지원으로 AlloyDB에서 SQL을 생성하려면 다음 단계를 따르세요.
Google Cloud 콘솔에서 AlloyDB 페이지를 엽니다.
목록에서 클러스터를 선택합니다.
탐색 메뉴에서 AlloyDB를 클릭합니다.
데이터베이스와 사용자를 선택하고 사용자의 비밀번호를 입력합니다.
인증을 클릭합니다. 탐색기 창에 데이터베이스의 객체 목록이 표시됩니다.
데이터베이스를 쿼리하려면 새 SQL 편집기 탭을 클릭합니다. SQL 생성이 사용 설정되어 있는지 확인합니다.
SQL을 생성하려면 쿼리 편집기에서
--로 시작하고 그 뒤에 한 줄 주석이 있는 주석을 입력한 다음 반환을 누릅니다.예를 들어
-- add a row to table singers프롬프트를 입력하고 Return을 누르면 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'SQL 추천을 검토하고 다음 작업을 수행합니다.
- Gemini에서 생성한 SQL을 수락하는 옵션을 표시하려면 쿼리 위에 포인터를 가져갑니다. 다음 옵션이 표시됩니다.
- 수락: 추천 쿼리를 수락하려면
Tab을 누른 후 실행을 클릭합니다. - 단어 수락: 추천 쿼리를 부분적으로 수락하려면
Control+Right arrow(또는 macOS의 경우Command+Right arrow)를 누른 다음 실행을 클릭합니다.
- 수락: 추천 쿼리를 수락하려면
- 원래 SQL을 수정하려면
Tab을 누르고 SQL을 수정한 후 실행을 클릭합니다. - 추천을 닫으려면
Esc를 누르거나 계속 입력합니다.
- Gemini에서 생성한 SQL을 수락하는 옵션을 표시하려면 쿼리 위에 포인터를 가져갑니다. 다음 옵션이 표시됩니다.
코드 작성 지원 도구
코딩 도우미 도구를 사용하려면 다음 단계를 수행합니다.
Google Cloud 콘솔에서 AlloyDB 페이지를 엽니다.
목록에서 클러스터를 선택합니다.
탐색 메뉴에서 AlloyDB를 클릭합니다.
데이터베이스와 사용자를 선택하고 사용자의 비밀번호를 입력합니다.
인증을 클릭합니다. 탐색기 창에 데이터베이스의 객체 목록이 표시됩니다.
데이터베이스를 쿼리하려면 새 탭을 클릭합니다.
쿼리 편집기 옆에 있는 pen_spark 코딩 도우미를 클릭합니다.
코딩 도우미 창에 프롬프트를 입력합니다. 예를 들어
add a row to table singers이고 생성을 클릭합니다.Gemini는 다음과 유사한 SQL을 생성합니다.
INSERT INTO Singers (SingerId, FirstName, LastName, BirthDate) VALUES (1, Alex, 'M.', '1977-10-16');생성된 SQL을 검토하고 다음 작업 중 하나를 수행합니다.
- Gemini에서 생성한 SQL을 수락하려면 삽입을 클릭하여 문을 쿼리 편집기에 삽입합니다. 그런 다음 실행을 클릭하여 추천 SQL을 실행합니다.
- Gemini에 새 쿼리를 생성하라고 요청하려면 수정을 클릭합니다. 프롬프트를 수정한 후 업데이트를 클릭합니다. 그런 다음 새로 생성된 문을 수락하거나 추천을 닫을 수 있습니다.
- 추천을 닫으려면 코딩 도우미 창을 닫습니다.
쿼리 편집기에서 SQL 문 설명
자연어 쿼리를 입력하여 SQL 쿼리에 대한 설명을 요청할 수 있습니다. 이러한 설명은 복잡하거나 긴 쿼리에 대한 문법, 기본 스키마, 비즈니스 컨텍스트를 이해하는 데 도움이 될 수 있습니다.
Google Cloud 콘솔에서 AlloyDB 페이지를 엽니다.
목록에서 클러스터를 선택합니다.
탐색 메뉴에서 AlloyDB를 클릭합니다.
데이터베이스와 사용자를 선택하고 사용자의 비밀번호를 입력합니다.
인증을 클릭합니다. 탐색기 창에 데이터베이스의 객체 목록이 표시됩니다.
데이터베이스를 쿼리하려면 새 탭을 클릭합니다.
쿼리 편집기에서 쿼리를 붙여넣습니다.
Gemini에서 설명할 쿼리를 강조표시한 후 pen_spark 이 쿼리 설명을 클릭합니다.
SQL 설명이 Gemini 채팅 창에 표시됩니다.
Gemini를 사용하여 쿼리의 오류 수정
Gemini는 쿼리 편집기를 종료하지 않고도 AlloyDB 쿼리의 오류를 수정할 수 있는 확장된 기능을 제공합니다.
Gemini의 AI 기반 기능은 쿼리 편집기 내에 통합되어 다음과 같은 이점을 제공합니다.
- 쿼리 편집기를 사용하여 추천 변경사항이 적용된 새 쿼리 옆에 원래 쿼리를 행별로 비교합니다.
- 문제를 일으킬 수 있는 원래 쿼리의 세그먼트를 강조 표시하고 변경사항의 자연어 요약을 제공합니다.
- 정확하고 관련성 있는 수정사항을 제공하기 위해 쿼리와 연결된 정확한 오류 메시지 및 스키마 정보를 참조합니다.
- 미묘한 차이를 고려하지 못하고 데이터가 잠재적인 보안 위험에 노출될 수 있는 서드 파티 범용 LLM을 사용할 필요가 없습니다.
- 구문, 스키마, 런타임 오류와 같은 일반적인 문제에 대한 더 빠르고 효율적인 문제 해결을 제공합니다.
필수 권한
시작하기 전에 다음 권한이 있는지 확인하세요.
- 필수 권한에 설명된 권한
- Google Cloud API용 Gemini 권한,
cloudaicompanion.googleapis.com/instances.generateCode
Gemini를 사용하여 쿼리 수정하기
Gemini의 기능을 사용하여 쿼리의 특정 오류를 수정하려면 다음 단계를 완료하세요.
Google Cloud 콘솔에서 PostgreSQL용 AlloyDB 페이지를 엽니다.
목록에서 클러스터를 선택합니다.
탐색 메뉴에서 AlloyDB Studio를 클릭합니다.
데이터베이스와 사용자를 선택하고 사용자의 비밀번호를 입력합니다.
인증을 클릭합니다. 탐색기 창에 데이터베이스의 객체 목록이 표시됩니다.
작업 표시줄에서 pen_sparkGemini를 클릭하여 AlloyDB의 Gemini 기능을 확인합니다.
데이터베이스를 쿼리하려면 새 탭을 클릭합니다.
쿼리 편집기에 잘못되었거나 완전하지 않은 쿼리를 입력합니다.
실행을 클릭합니다.
쿼리에 문제가 있으면 결과 탭에 오류가 표시됩니다.
수정을 클릭합니다.
쿼리 창의 탭에 차이점 편집기('diff 편집기')가 열리고 기존 쿼리와 추천 변경사항이 행별로 비교되어 표시됩니다. 쿼리 편집기에는 제안된 수정사항의 요약도 표시됩니다.
쿼리에 대해 제안된 변경사항을 검토하고 필요에 따라 업데이트합니다.
변경사항을 수락하고 새 쿼리를 실행하려면 수락 및 실행을 클릭합니다.
제한사항
- 이 기능은Google Cloud 콘솔의 AlloyDB Studio 쿼리 편집기에서만 액세스할 수 있습니다.
- 현재 Gemini 컨텍스트 윈도우 한도가 적용됩니다.
다음 단계
- Google Cloud 를 위한 Gemini 개요 읽어보기
- Gemini에서 사용자 데이터를 사용하는 방법 알아보기
- Gemini를 사용하여 Google Cloud 에서 데이터를 분석하는 방법 알아보기