DCM Projectsの紹介:Snowflake向け宣言型インフラストラクチャ管理のパブリックプレビュー開始

図 1:Jan Sommerfeldが、新しいDCM Projectsを使用してSnowflakeオブジェクトを管理するための監査可能なワークフローを作成する方法を紹介します。

大規模なSnowflakeオブジェクトの管理には、何が存在し、何が変更され、誰が変更したかを追跡するという、慎重な調整が常に求められてきました。DCM Projectsは、Snowflakeオブジェクトをコードとして定義、展開、管理するための宣言型で監査可能な方法をSnowflakeユーザーに提供し、ソフトウェアエンジニアリングの厳密さをデータインフラストラクチャにもたらします。

「Snowflake DCM Projectsのおかげで、複雑なデータイニシアチブをチーム横断的に構造化できるようになりました。これにより、プロジェクトの本番移行に伴う一貫性を向上させるために、各チームが活用できるCI/CDワークフローの基盤が整いました」

—Johnny Stevens氏
Acadia Healthcare、シニアプリンシパルデータエンジニア

DCM Projectsで構築できること

DCM Projectsは、ソフトウェア開発ライフサイクルにおける特定のワークフロー管理を支援するために設計されています。現在は主に以下を支援しています。

  • プラットフォームインフラストラクチャ:データベース、スキーマ、ウェアハウス、テーブル、ロール、タグなど、組織が依存する基盤となるSnowflakeオブジェクトを定義および管理します。プラットフォームの標準をコードとして保存し、環境全体に一貫して展開して、すべての変更を長期的に追跡します。

  • データパイプライン:ビュー、ダイナミックテーブル、関数、タスク、およびそれらの間の依存関係を含むデータ変換レイヤーのライフサイクル全体を、単一の一貫したプロジェクトとして管理します。 

  • データガバナンス:ロールと権限付与を宣言的に定義することで、アクセス権限を大規模に管理します。アクセス制御レイヤーをコードとして定義すると、レビュー、バージョン管理、監査が可能になります。
  • MLインフラストラクチャとStreamlitアプリのサポート:現在開発中です。今後の情報にご期待ください。

「私たちはプレビューフェーズのごく初期段階でDCM Projectsに参加しましたが、開発スピードと機能全体の品質の両方に心から感銘を受けました。現在の進捗状況とロードマップを考慮すると、同機能が市場で最高のCI/CDソリューションの1つになる日は近いと確信しています」

—Vladimir Blaževic氏
Clarivate、シニアデベロッパー

DCM Projectsの仕組み

DCM Projectsは、ターゲットおよびテンプレート構成用のmanifest.ymlファイルと、Snowflakeオブジェクトのターゲット状態を記述するSQL定義ファイルを提供します。これらのファイルをローカルまたはSnowflake Workspaceで作成し、DCM Projectsを使用して変更の計画、プレビュー、展開を行います。DCM Projectsは、定義内容と現状との差分を算出し、依存関係を自動的に解決したうえで、正しい順序で変更を自動適用します。

同じ定義セットをパラメータ化して、複数の環境(開発、QA、本番)に確実に展開できるため、開発から本番までの一貫性があり再現可能な道筋を提供します。

DCM Projectsの主な機能

dcm

使用を開始する

DCM Projectsは現在、パブリックプレビューでご利用いただけます。DCM Projects開発者ガイドで実際にお試しいただき、ソフトウェアを管理するのと同じ方法でSnowflakeインフラストラクチャの管理を始めてください。

 

将来予想に関する記述

このページには、Snowflakeが将来提供する製品に関する記述を含め、将来の見通しに関する記述が含まれていますが、これはいかなる製品の提供も約束するものではありません。実際の結果や提供内容は異なる場合があり、既知および未知のリスクや不確実性の影響を受けます。詳細については、当社の最新の10-Qをご覧ください。

クイックスタート

Get Started with Snowflake DCM Projects

Snowflake DCM(データベース変更管理)Projectsでは、SQLベースの定義ファイルを用いてSnowflakeインフラストラクチャをコードとして定義できます。データベース、スキーマ、テーブル、ダイナミックテーブル、ビュー、ウェアハウス、ロール、権限付与などをすべて宣言的に定義し、Jinjaテンプレートを使用して複数の環境にわたって計画および展開できます。
記事をシェアする

Subscribe to our blog newsletter

Get the best, coolest and latest delivered to your inbox each week

Where Data Does More