SELECTSELECT

SELECT

Snowflake最新情報:2025年6月版

By Jeff SkoldbergJul 13, 20257 min read

このページはEnglishDeutschEspañolFrançaisItalianoPortuguêsでもご覧いただけます。

Last Month in Snowflake 2025年6月号へようこそ。本記事では、先月発表されたアップデートの中から特にインパクトの大きいものを取り上げます。6月はSnowflake Summitの開催もあり、発表ラッシュの月となりました。ただし、Summit 2025まとめ記事で紹介した30以上の発表内容は本記事では繰り返しません。代わりに、一般的なSnowflakeユーザーにとって2025年6月で最も影響の大きかった発表(Summit発表との一部重複あり)にフォーカスしてお届けします。それでは見ていきましょう!

Snowsightのアップデート

Snowsightで特に注目したいアップデートをご紹介します。

Workspaces — パブリックプレビュー

Summitで最も話題を集めた発表のひとつが、新機能Workspacesです。Snowsight内に組み込まれたモダンなファイルベースIDEで、Git(GitHub、GitLabなど)と連携します。フォルダ管理、Git連携、AIによるコード補完、dbtのネイティブサポートといったIDE的な機能をSnowflake UIで利用できます。Workspacesを使えば、コードをプロジェクト単位で整理し、コラボレーションを進めやすくし、GitHub(その他のGitプロバイダーも可)とのpush/pullを行い、Snowflakeプラットフォームから離れることなく開発ワークフローを効率化できます。

WorkspacesはGitリポジトリと接続することで真価を発揮します。リポジトリ追加に必要なのはAPI Integration(リポジトリが非公開の場合はSecretも)だけで、あとはすべてGUIで完結します。

WorkspacesのGit連携は直感的で、ブランチの選択、push、pull、UI上での差分比較まで一通り行えます。

Workspacesの総合的な所感

個人的には、もうWorksheetsは使わずWorkspacesに完全に乗り換えました。ファイルをフォルダで整理でき、Worksheetsのインターフェースよりもファイルツリーが扱いやすい、それだけでも十分な理由です。Gitリポジトリに接続していない場合でも、レイアウトの改善、クエリ履歴へのアクセス、インラインのCopilotがあるので、Workspacesを選んでいます。

Workspacesには紹介しきれないほど多くの機能があります。今後、dbtプロジェクトを含めたWorkspacesのTips & Tricksを専用記事でお届けする予定です。

dbt Projects in Snowflake — パブリックプレビュー

WorkspacesではSnowsight UI上で直接dbtプロジェクトを実行できます。最も手軽な始め方は、上記のように既存のリポジトリを接続することです。dbtリポジトリを接続したWorkspaceを用意すると、Snowflakeからprofiles.ymlの作成を求められます。これが済めば、GUIからdbtコマンドを実行できます!

下部のペインでは、Query History、DAG View、Outputを切り替えながら確認できます。

クエリ履歴ビューからはクエリプロファイルへ直接遷移できます。なお、この機能はdbtプロジェクト専用ではなく、すべてのWorkspaceでクエリ履歴が表示されます。とはいえ、dbtのクエリ履歴がIDE内で見られるのは特にありがたいポイントです。

任意のモデルで「Compile SQL」ボタンをクリックすると、テンプレート化されたSQLの隣にコンパイル済みSQLが表示されます。「Show in DAG」ボタンをクリックすると、下のDAGペインで該当モデルがハイライトされます。

デプロイの準備ができたら、右上の「Connect」をクリックし、続いて「Deploy dbt」をクリックします。

デプロイ後は、Data → Database / Schema → dbt projectsからdbtプロジェクトを確認でき、Monitoring → dbtからすべてのdbtプロジェクトの実行履歴を確認できます。

気づいた点と所感:

  • 良い点:Snowsight内でdbtプロジェクトを作成・スケジューリング・監視できるというコンセプトは非常に魅力的です。
  • 気になる点:dbt depsdbt buildといったコマンドはコールドスタートにかなり時間がかかるようです。
  • 気になる点:ログが実行完了まで出力されず、どこで時間がかかっているのかが分かりにくくなっています。
  • 気になる点:buildコマンドをすべてGUIから実行しなければならないのはやや使い勝手が悪いです。コマンドラインでDAGスライスを実行できる手軽さが恋しくなります。(buildコマンドに引数を渡すUIも非常に煩雑で、改善の余地があります。)

dbtプロジェクトの実行については語り切れていない部分がまだ多くあります。詳しい解説記事をお楽しみに!

アカウントレベルのTask概要とGraph — GA

これまでもデータベース単位でTask Graphを確認することは可能でしたが、今回からはTask Monitoring権限に応じて、アカウント内のすべてのタスクをまとめて俯瞰できるようになりました。

左サイドバーのMonitoringをクリックし、Task Historyを選択します。アカウント内のすべてのタスクがフィルタリング可能なリストで表示され、過去の実行ステータスを視覚的に確認できます。

Task Runsタブでは、アカウント内の各タスク実行を一覧で確認できます。

完了した実行のDAGと「Total Duration Breakdown」もここでチェックできます。

全体としてUIの完成度は非常に高いと感じます!特にPrevious Runsのツールチップがお気に入りで、可観測性を高める非常に有用な機能だと思います。

SnowsightでのIntegration管理 — GA

SnowflakeのIntegrationは、ストレージアカウントやGitリポジトリといった外部リソースへの接続、ネットワークルールの作成、APIアクセスなどに使われます。これまではSQLでしか管理・確認できませんでしたが、Snowsight UI上で作成・管理・確認できるようになりました。可観測性の面で大きな前進です。

Data → Integrationsに移動すると、アカウント全体のIntegrationを一覧できます。既存のIntegrationを管理するには3点リーダーから操作します。

作成画面からは新しいIntegrationを手軽に作成できます。

「create integration」GUIは最終的にWorksheetに似たSQLページへ遷移しますが、「Open in Worksheets」をクリックしない限り、このページは一時的なものとして扱われます。

Integration作成を100%GUIで完結できるフローが提供されることを願いますが、Integrationには非常に多くのプロパティがあるため、難しい部分があるのも理解できます。

詳しくは公式ドキュメントをご覧ください。

SQLのアップデート

Summitでは、SnowflakeからAI関連SQLに向けたSQL方言の拡張がいくつか発表されました。ここではそれらは繰り返さず、最も実用的な拡張のひとつであるUNION BY NAMEに絞ってご紹介します。

Union [all] by Name演算子 — GA

従来のSQLでは、unionunion allを使う際、各クエリの列数を揃え、列を同じ順序で並べる必要がありました。新しいUnion by Name構文では、列名に基づいて自動的に列が揃えられます。列名が存在しなかったり、列数が一致しなかったりした場合、Snowflakeはunionの該当部分について欠落している列に自動的にnullを返してくれます。以下は例です。

with data1 as
(
    select
        'jeff' as first_name,
        'engineering' as department,
),
data2 as
(
    select
        'skoldberg' as last_name,
        'engineering' as department,
)
select * from data1
union all by name
select * from data2;

dbt_utils.union_relationsマクロを数え切れないほど使ってきた身としては、ViewやTableだけでなくCTEにも使えるこのSnowflakeネイティブ機能の登場は大歓迎です。これは本当に大きな進歩です!

データエンジニアリングのアップデート

6月のデータエンジニアリング分野では(Summit発表分を除いて)大きな変更が1つありました。

Artifact Repository — GA

Artifact Repositoryは、Python Package Index(PyPI)のPythonパッケージをSnowpark Pythonのユーザー定義関数(UDF)やストアドプロシージャ内で利用できるようにする機能です。残念ながらNotebookやPython Worksheetでは利用できませんが、人気の高いパッケージは以前からこれらでも使えるようになっています。

この機能を使うには、組み込みロールpypi_repository_userをユーザーロールに付与する必要があります。

1GRANT DATABASE ROLE SNOWFLAKE.PYPI_REPOSITORY_USER TO ROLE data_engineering;

あとは、プロシージャのシグネチャでARTIFACT_REPOSITORY引数を指定しつつ、任意のPyPIパッケージを指定するだけです。例えば次のように書きます。

CREATE OR REPLACE FUNCTION sklearn_udf()
  RETURNS FLOAT
  LANGUAGE PYTHON
  RUNTIME_VERSION = 3.9
  ARTIFACT_REPOSITORY = snowflake.snowpark.pypi_shared_repository
  PACKAGES = ('scikit-learn')
  HANDLER = 'udf'
  AS
$$

これまではPython wheelをSnowflake Stageにコピーする必要があったので、大幅な改善です。Snowflakeは人気ライブラリをますます使いやすくしてくれていますね!

詳しくはArtifact Repository overviewをご覧ください。

その他(Summit以外)のアップデート

まとめ

繰り返しになりますが、2025年6月の発表の多くはSummitまとめ記事で既に紹介済みのため、本記事では取り上げていません。今後の「Last Month in Snowflake」はほぼ網羅的な内容にしていく予定です。これからも、Snowflakeの押さえておきたい変更点を随時お届けしていきます!

Jeffは15年以上の経験を持つData & Analyticsコンサルタントで、インサイトの自動化やデータを活用したビジネスプロセスの制御を専門としています。技術面ではSnowflake + dbt + Tableauを得意とし、業界面では公益事業、臨床試験、出版、CPG、製造業での経験があります。お気軽にご連絡ください:[email protected]