[速報] Amazon Redshift クエリエディタがAmazon Q generative SQLの新機能が発表されました(プレビュー) #AWSreInvent

2023.11.30

データアナリティクス事業本部のコンサルティングチームの石川です。

本日、re:Invent2023のSwami Sivasubramanianさんのキーノートで、Amazon Redshift は、パブリックプレビューでAmazon Q generative SQL in Amazon Redshift Query Editorという、データから抽出したいことを自然言語で問い合わせして、SQLを生成する新機能が発表されました。

Amazon Q generative SQL in Amazon Redshift Query Editorとは

生成AI(Generative AI)をSQLに応用した生成SQL(Generative SQL)サービスです。具体的には、Amazon Redshift クエリエディタにデータから抽出したいことを自然言語で問い合わせすることで、SQLクエリの推奨事項が生成される機能です。この機能によって、アナリスト(非エンジニア)が効果的なSQLクエリを自然言語で迅速に作成できるようになります。

Amazon Q generative SQLの仕組み

Amazon Q generative SQLは、大規模言語モデル (LLM) とAmazon Bedrockを用いて、SQLクエリを生成します。プロンプトエンジニアリングや検索により強化した文章生成(RAG)などのさまざまな手法を使用して、接続しているデータベース、現在のスキーマ、クエリ履歴、およびオプションでクエリなどの背景に基づいてモデルを推論します。システムは以前の質問も記憶しており、以前に生成されたクエリを改良する会話型インターフェイスを提供します。

SQL生成モデルは、データスキーマに固有のメタデータを使用して、関連するクエリを生成します。例えば、テーブル名と列名、およびデータベース内のテーブル間の関係が考慮されます。さらに、データベース管理者は、AWSアカウント内のすべてのユーザーのクエリ履歴を使用して、さらに関連性の高いSQLステートメントを生成するモデルを承認できます。当社はお客様のクエリ履歴を他のAWS アカウントと共有したり、お客様のAWSアカウントからのデータを使用して生成モデルをトレーニングしたりすることはありません。よって情報漏洩を心配することなく、プライバシーとセキュリティが維持されます。

利用者にもたらすメリット

利用者は、列名とテーブル間の関係を検出するという手間を掛けずに、自然言語で要望を尋ねるだけで、SQLステートメントを自動的に生成されたクエリを利用できます。生成されたクエリは、ノートブックから直接実行できます。

例えば、「Find total revenue by region」などの質問を送信すると、Amazon Q generative SQL は複数のテーブルを結合することで、この頻繁なクエリパターンに適切なSQLコードを認識して提案します。

バージニアとオレゴンでパブリックプレビュー開始

Amazon Q generative SQL in Amazon Redshift Query Editor は、米国東部 (バージニア北部)、米国西部 (オレゴン) のリージョンでパブリックプレビューで利用できます。

最後に

生成AIのサービスを用いて、「自然言語による問い合わせでSQLを生成する」という事例は以前にも聞いたことがありますが、本サービスでは、生成されるSQLは、メタデータやデータの依存関係、クエリ履歴などを考慮して自動生成されます。クラウドが提供するフルマネージドサービスならではです。

アナリスト(非エンジニア)が自然言語によって対話的にSQLを作成することによって、分析がはかどることが期待できる新サービスです。

合わせて読みたい