0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Snowflake Cortex Analyst をプライベート環境(AWS PrivateLink等)で動作させる方法

Last updated at Posted at 2025-06-07

はじめに

この記事では,インターネット接続がないプライベート環境(AWS PrivateLink環境など)でSnowflake Cortex Analystを動作させる方法について説明する.

元記事「Streamlit in Snowflake(SiS) でsemantic-model-generator とcortex-analyst と動作させる方法」では,インターネット接続が前提となっていたが,セキュリティ要件により外部接続が制限された環境での実装方法を紹介する.

大まかな流れは元記事と同じであるが,SnowflakeからGitHubを直接参照しない点が異なる.

プライベート環境での課題

通常のCortex Analystの実装では以下の外部リソースへのアクセスが必要であるが,プライベート環境では制限される:

  • 外部リポジトリ(GitHub等)との連携
  • Snowflakeの公開エンドポイント
  • CDNからの静的リソース

環境構成

前提条件

  • AWS PrivateLink経由でSnowflakeに接続
  • 必要なファイルを事前にローカル環境に配置済み

必要なファイル構成

project/
├── semantic-model-generator-main-local/
└── sfguide-getting-started-with-cortex-analyst-main-local/

セットアップ手順

1. リポジトリのファイルの準備

プライベート環境用に準備されたリポジトリをクローンまたはダウンロードする:

# ローカル環境またはプライベートGitサーバーから取得
git clone <your-private-repo>/semantic-model-generator-main-local
git clone <your-private-repo>/sfguide-getting-started-with-cortex-analyst-main-local

または,以下からローカル環境にファイルを直接ダウンロードし,該当環境にファイル移送してもよい:

2. セマンティックモデルの生成(テーブルのメタ情報を作成する処理の実装)

セマンティックモデル(テーブルのメタ情報を作成する処理)を実装する.

2-1. 初期SQLの実行

semantic-model-generator-main-local内のファイルを使用する.

  1. SnowparkのSQLシートで以下のSQLを実行する
  2. [YOUR_STREAM_DATABASE]を構築環境に合わせて任意の値に置換する

実行ファイル: sissetup_snowsightgit_local_1.sql

SQLの実行画面

2-2. ファイルのアップロード

semantic-model-generator-main-localのファイルをSnowflakeの内部ステージにアップロードする.

ディレクトリ内のファイルは一度にアップロードできないため,ディレクトリ単位でフォルダーパスを指定してアップロードする必要がある.

ファイルアップロード画面

2-3. セットアップSQLの実行

SnowparkのSQLシートで以下のSQLを実行する:

実行ファイル: sissetup_snowsightgit_local_2.sql

[YOUR_STREAM_DATABASE]を構築環境に合わせて置換する.

SQLの実行画面

3. セマンティックモデル(テーブルのメタ情報)の作成

元記事のテーブルのメタ情報を作成する処理と同様の手順のため割愛する.

4. Cortex Analystアプリケーションの起動

sfguide-getting-started-with-cortex-analyst-main-local内のファイルを使用する.

4-1. Snowflakeオブジェクトの作成

SnowparkのSQLシートで以下のSQLを実行する:

実行ファイル: create_snowflake_objects_local.sql

[YOUR_STREAM_DATABASE]を構築環境に合わせて置換する.

SQLの実行画面

4-2. Streamlit権限の付与

作成したデータベースに対し,Streamlitの権限を付与する:

権限付与画面1

権限付与画面2

4-3. Streamlitアプリケーションの実行

SnowparkのStreamlitシートで以下のコードを実行する:

実行ファイル: cortex_analyst_sis_demo_app_local.py

重要: 25,26行目を先ほど作成したセマンティックモデルのyamlファイルパスに修正する必要がある.

Streamlitアプリ画面

まとめ

プライベート環境でのCortex Analystの構築方法について紹介した.

この構成により,厳格なセキュリティ要件が求められる企業環境でも,Snowflake Cortex Analystの自然言語データ分析機能を安全に活用することが可能である.

参考リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?