1
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】公式ドキュメントを読み進めよう(Part 3)~Get started編③~

1
Posted at

はじめに

以下の記事の続きです。

■Part 1

■Part 2

このシリーズの制約

執筆(記事のたたきを含む)やまとめに生成AIは利用しません。
ただし、筆者が内容を理解するために生成AIを用いることがあります。
(まぁ普段から執筆に生成AIを使っていませんが……)

免責事項

本記事は執筆時点での情報をもとにまとめています。
そのため、読者の方が閲覧されるタイミングでは内容が変更されている可能性があります。

記事の内容と公式ドキュメントの記載に差異がある場合、または解釈にずれがある場合は、公式ドキュメントの記載を正とします。

今回読むドキュメント

【対象】
Get started for users

  • Snowsight tour
    ※Tutorial: Snowflake in 20 minutesは飛ばします

Snowsightのクイックツアー

Snowsightは様々な操作がWeb上で行えるUIです。
Snowsightを利用することで以下のタスクを実行することができます。

  • データの操作

    • SQLやPythonなどの複数のファイルをワークスペースという作業領域で管理し、Snowflake環境の構築・データの操作に利用することができます。
       
    • Snowpipe、コネクタ、タスク、およびストリームを使用して、データをインジェスト(取り込んで利用可能な状態にすること)および変換することができます。
       
    • Snowflake Cortex関数、エージェント、およびMLモデルを使用してAIでデータを操作します。
       
    • クエリ履歴、タスクグラフ、データロードなどのアクティビティをモニターすることができます。
       
    • Snowflake Marketplaceでデータを発見し、使用することができます。
       
  • Horizon Catalogを詳しく見る

    • ユニバーサル検索とカタログを用いてデータの探索を簡単に行うことができます。
      image.png
       
    • データ共有機能で他のSnowflakeアカウントとデータ製品を安全に共有できます。
       
    • マスキングポリシー、行アクセスポリシー、およびタグを使用してデータを管理および保護することができます。
       
  • アカウントを管理する

    • ウェアハウスやコンピューティングプールなどのコンピューティングリソースを最適化できます。
       
    • ユーザー、ロール、およびアクセス制御を管理できます。
       
    • 予算およびコスト管理ビューでコストを監視および制御することができます。
       
    • Snowflake内のPostgresインスタンスを管理することができます。
       
      上記以外にも、実行できるタスクもありますが、それはSnowsightのドキュメントを参照したときに解説します。

データを扱う

ワークスペース

Snowsightではワークスペースという作業スペースを使ってSQLの実行などを行います。
ワークスペース内にはいろいろなファイルを格納することができます。
image.png
image.png

また、追加の設定が必要ですが、Gitと統合することも可能です。

ワークスペースのノートブック

ワークスペース上でノートブックを作成すると、Jupyterの互換性があるノートブックを利用することができます。
ノートブックでは、SQL、Python、Markdownをセルという単位で記載することができます。
以下の画像は1つのノートブック内に記載した例です。
image.png

Streamlit

SnowflakeではStream in Snowflake(SiS)といって、Snowflake内でStreamlitのアプリケーションをホストすることが可能です。

以下はアプリ作成後のサンプルコードで実行された状態ですが、Streamlitを使うことで簡単なアプリケーションやダッシュボードの作成などが簡単に行えます。
image.png

dbtプロジェクト

dbtプロジェクトはGitリポジトリに接続して同期できるdbtプロジェクト用にウェブベースの統合開発環境(IDE)を提供する機能です。
SQLベースのデータ変換パイプラインをSnowflake内で直接ビルド、テスト、実行ができます。

プロジェクトは簡単に作成することができます。
image.png
image.png

インジェスチョン

継続的なインジェスチョン用のSnowpipe、各種データソースコネクタ、およびUIによるファイルアップロードを利用して、Snowflakeにデータを取り込むことができます。

変換

データの変換には、前述したdbtを用いた変換や、継続的に更新されるマテリアライズドビュー、ダイナミックテーブル、変換ワークフローをスケジュールするタスクなどを使用することができます。

AI&ML

AI StudioでAI駆動型アプリケーションを構築したり、Snowflake Intelligenceを使ってデータを対話形式で操作したり、Cortex AI関数を利用してテキスト分析やLLM機能を利用することができます。
image.png


AIを活用した機能は様々な種類があります。

利用ケース 機能名
自然言語でのやり取り Cortex Agents
データ分析 Cortex Alalyst
ベクトル類似性検索 Cortex Search
AIコーディング支援 Cortec Code

モニタリング

Snowflakeではクエリのパフォーマンスや、実行結果など、アクティビティなどシステム全体に関わる部分の監視をサポートしています。
パフォーマンスエクスプローラーという画面で、簡単に失敗したクエリなどを追跡することができます。
image.png

クエリ履歴の画面では、失敗したクエリ以外にもクエリの実行結果や、パフォーマンスに関する情報が確認できます。
image.png

Marketplace

Marketplaceは、データ製品の共有場所です。
データ製品といっても、アプリケーションパッケージであったり、データそのものであったりと公開されている情報は多岐にわたります。
image.png

Horizon Catalogを詳しく見る

カタログ

前述したユニバーサル検索とHorizonカタログを用いることで、データ資産全体のオブジェクトを検出することができます。
Horizonカタログは、Snowsight上のデータベースエクスプローラーや、データ共有で共有されたオブジェクト、それ以外のオブジェクトなどを検出し、統合管理するデータカタログ機能です。
特に登録や、更新などの操作は必要ないので、ユーザーが運用を意識することは必要ありません。
image.png

データ共有

前述したMarketplaceとは違い、特定の組織やアカウントに対してデータやパッケージを公開する手法です。

例えば以下のようなテーブルを作成します。
image.png

内部共有を選択してリストを選択することで、データの共有リストを作成することができます。
image.png
image.png
image.png

作成されたリストにデータ製品を登録することで共有が作成できます。
image.png

外部共有では、指定したコンシューマーに共有というオプションと直接共有というオプションの2つが存在します。
それぞれ、特徴が違いますが、簡単に共有したい場合は直接共有を利用します。
直接共有の場合は、同一のクラウドサービスプロバイダーや同一のリージョンでないと共有できないといった制約が存在します。
image.png

ガバナンスとセキュリティ

Snowflakeにはデータガバナンスを保証する様々な機能があります。
機密情報を保護するために、行レベルマスキングポリシー、列レベルマスキングポリシー、タグベースのマスキングポリシーなど様々なマスキングポリシーを駆使してデータを保護することができます。

さらに、ユーザーとロールでRBAC(ロールベースのアクセスコントロール)やUBAC(ユーザーベースのアクセスコントール)など、様々なアクセス制御方式を採用しています。
柔軟なアクセスコントールのおかげで、使い方次第では、大規模から小規模まであらゆる規模のシステムでアクセスコントロールをしつつ、運用負荷も軽減することが可能です。

また、全体に関わるアカウントセキュリティはTrust Centerという機能で監視・評価をすることができ継続的な運用改善、セキュリティ保護につなげることができます。

アカウントを管理する

コンピュート

Snowflakeで利用する仮想ウェアハウスや、コンテナベースのコンピューティングプールは、Snowsight上で管理することができます。
image.png
image.png

各ウェアハウスで実行されたクエリなども確認することができます。
image.png

Postgres

Snowflakeは保管や分析用途、データ活用に用いられることが多いため、OLAP(オンライン分析処理)用のプラットフォームだと思う方も多いですが、OLTP(オンライントランザクション処理)用にPostgreSQLを使うことができます。

Snowsightでは、作成したインスタンスを管理することができます。

管理者

管理者画面では、コストに関する情報の確認や設定、請求情報の確認・設定が可能です。
他にもデータ共有や複製時に利用するアカウントの管理なども可能です。

また、統合(INTEGRATION)では、Snowflake内で作成したインテグレーション設定の管理も行えます。

他にもPartner Connectでは、Snowflakeのビジネスパートナーが展開しているサードパーティツールを利用することができます。
実際の利用の際は、ビジネスパートナーを選択して、トライアルアカウントを作成する必要があります。
ここでいうトライアルアカウントは、Snowflakeの利用を始める際に作成できるトライアルアカウントとは異なり、Snowflakeビジネスパートナー側の話になります。
image.png

ユーザーメニュー

ユーザーメニューはSnowsightの左下にあるユーザー名とロールが表示されている個所を選択すると確認できます。

ここでは、ロールの切り替えや、アカウント情報の確認、その他の設定など様々な操作ができます。
image.png

おわりに

今回はSnowsightツアーのドキュメントを確認しました。
SnowsightはSnowflakeを触る以上、常に確認するといっても過言ではないくらいコアの機能なので、何ができるのかは押さえておきたいと思います。

1
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
1
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?