Intelligence Agent本体のセットアップについて
はじめに
Quollioが提供する各種Agentは、AWS Batchを中心としたAWSリソース群で構成されており、それらを「共通基盤環境」と「Agent本体」の2つのAWS CloudFormationのテンプレートを使用して環境構築を行います。
本ガイドでは、Snowflakeを例として「Intelligence Agent本体」のセットアップを行います。Metadata Agentとは異なり、Intelligence Agentの構築は任意です。
CloudFormationテンプレートのご利用には、Quollio Data Catalogへの事前登録が必要です。詳しくは、お問い合わせ | 株式会社Quollio Technologies ページよりご連絡ください。
生成されるViewの確認
Intelligence AgentはMetadata Agentとは異なり、複雑なSQLを発行するViewを作成するための dbt-core が仕込まれています。特に統計情報は、ランダムサンプリングなどを使用してなるべく負荷をかけずに生成するよう設計されているものの、1テーブル内のレコード数が多い場合、計算に大きな負荷がかかることが想定されます。
そのため、以下のライブラリをローカル端末にインストールし、可能であれば "build_view" コマンドのみを実行して、実際に生成されるViewをご確認いただくことを推奨しております。ローカル端末へのインストールが難しい場合は、AWS上のIntelligence Angetのコマンド設定の画面で "build_view" を選択して実行いただくとViewのみ生成されます。
外部API用のクレデンシャルを発行する
Intelligence Agentは、Quollioの外部APIを経由してメタデータの登録を行います。クレデンシャル管理 より、 新規追加する をクリックします。
任意のクライアント名を入力し、 確定 をクリックします。
発行された クライアントID と クライアントシークレット を控えてください。
パラメータストアにパラメータを登録する
Metadata Agent本体を構築する前に、データソースやQuollioへの接続情報をAWS Systems Managerのパラメータストアに保存します。以下のリンクに記載されているパラメータを すべて 登録していきます。Metadata Agentでも設定しているパラメータは、Intelligence Agentにて再利用することもできます。
AWS Systems Managerの画面より パラメータストア を選択し、 パラメータの作成 をクリックします。
名前 の欄にパス名、タイプは 安全な文字列 を選択し、 値 に対応する接続情報を入力してパラメータを作成します。
Metadata Agent - Snowflake
上記を繰り返し、必須の接続情報をすべて登録してください。
CloudFormationスタックの作成
Parameter Store設定後、下記のリンクをクリックし、CloudFormationスタック作成画面を開きます。
パラメータの入力画面では、Metadata Agentのテンプレートと同様のパラメータが存在しますが、 "Commands" パラメータの設定が重要です。以下の表を参考に、必要なパラメータをカンマ区切りで設定します。
コマンド | 概要 |
build_view | 内部に組み込まれているdbt-coreを使用して、リネージと統計情報を生成するビューをデータソース側に作成します。 |
load_lineage | build_viewコマンドで作成したビューからリネージデータをQuollioにロードします。 |
load_stats | build_viewコマンドで作成したビューから統計情報をQuollioにロードします。(負荷がかかりうる処理のため、デフォルトでは含まれていません) |
上記のスタックが構築できれば、セットアップは完了です。
AWS Batchジョブの手動実行
試しにAWS Batchを手動で起動し、アセットを登録してみます。AWS Batchの左メニューより ジョブ定義 をクリックし、先ほど構築した quollio-intell-snowflake をクリックします。
ジョブ定義の詳細が開いたら、右上の 新しいジョブを送信 をクリックします。
名前 の欄には任意の文字列を入力します。ジョブ定義 や ジョブキュー は今回構築したものを選択します。 以降のパラメータは全てデフォルト値のまま ジョブを作成 をクリックします。
画面が ジョブの詳細 に切り替わり、ジョブが開始されます。ステータスが SUCCEEDED になれば正常終了です。実行ログ ログストリーム名 から確認できます。
Quollioの画面に戻ると、自動取得が成功した分のリネージが反映されます。
以上でIntelligence Agent本体のセットアップは完了です。