このドキュメントでは、次の方法について説明します。
- Dataform のワークスペースのコンセプトとその機能について説明します。
- Dataform 開発ワークスペースを作成します。
- 空の Dataform 開発ワークスペースを初期化します。
- Dataform 開発ワークスペースを削除します。
開発ワークスペースの概要
Dataform では、ワークフロー コードは開発ワークスペースで操作します。開発ワークスペースとは、リポジトリの編集可能コピーです。ワークスペースでは、同じリポジトリで作業している他のユーザーに影響を与えることなく、リポジトリのコンテンツを作成、編集、削除できます。その後、変更を commit してリポジトリに push します。
ワークフローは、 Dataform コアまたは JavaScriptを使用して開発できます。Dataform は、コードをリアルタイムで SQL クエリにコンパイルします。
開発ワークスペースでは、次のタスクを実行できます。
- Dataform 設定を構成する。
- テーブルを作成する サポートされているすべてのタイプの。
- テーブルを文書化する。
- テーブルを分割する。
- BigQuery ラベルと ポリシータグをテーブルに追加する。
- テーブル設定をオーバーライドする。
- 追加のアクションを構成する。
- ワークフローのデータソースを宣言する。
- カスタム SQL オペレーションと タグをワークフローに追加する。
- ワークフローまたは選択したアクションの 実行をトリガーする。
- 実行ログをモニタリングする。
開発ワークスペースのコンポーネント
Dataform 開発ワークスペースは、次のセクションで説明するタブで構成されています。
コードタブ
[コード] タブの開発環境を使用して、ファイルの探索、クエリの開発、変更のバージョン管理、BigQuery への実行のトリガーを行うことができます。このタブには、ワークフローを開発するための次のコンポーネントが含まれています。
- [ファイル] ペイン: ワークスペースのファイル構造を表示し、ファイル構造への編集を自動保存します。選択したファイルは、開発ペインのタブで開きます。[検索する文字列を入力] フィールドで、パスを指定してワークスペース内のファイルまたはディレクトリを検索できます。
- [バージョン管理] ペイン: ワークスペースのバージョン管理ステータスとバージョン管理オプションが表示されます。
- [開発] ペイン: 開いているファイルがタブに表示されます。編集したファイルに変更を自動保存します。
- [Run] ボタン: コンパイルされた SQL クエリの プレビューを実行します。
- [フォーマット] ボタン: Dataform のコアまたは JavaScript コードの書式を設定します。
- [コンパイル] ステータス: ワークスペース内のコードのコンパイル ステータスが表示されます。
- [メタデータ] ペイン: 編集したファイルのメタデータが表示されます。
- [コンパイルされたクエリ] ペイン: 編集したファイルのクエリを SQL にコンパイルします。クエリのコンパイルが失敗した場合、ペインにコンパイル エラーが表示されます。クエリのコンパイルが成功した場合、コンパイルされたクエリが表示され、BigQuery に対するドライランで検証されます。クエリの検証が失敗した場合、ペインに検証エラーが表示されます。クエリの検証が成功すると、BigQuery に対するクエリの実行に必要なバイト数が表示されます。
- [実行を開始] メニュー: ワークスペース内のワークフロー全体または選択した要素の実行をトリガーするオプションが表示されます。
コンパイル完了グラフのタブ
[コンパイル済みグラフ] タブでは、ワークスペースで定義されたコンパイル済みワークフローをインタラクティブな有向非巡回グラフ(DAG)として確認できます。グラフには、ワークフロー内のすべてのアクションとそれらの関係が表示されます。ワークフローにコンパイル エラーがある場合、タブにはグラフではなくエラー メッセージが表示されます。
グラフでは、ズームインとズームアウト、ドラッグ&ドロップによる移動が可能です。
グラフは、次のプロパティでフィルタできます。
- 名前
- タグ
- 種類
- アサーション
- 宣言
- 増分テーブル
- マテリアライズド ビュー
- 運用
- テーブル
- 不明
- 表示
複数のフィルタを一度に選択できます。Dataform はそれらを OR 条件で適用します。
グラフ内のアクションをクリックすると、次のペインに詳細が表示されます。
- [メタデータ] ペイン: 選択したアクションの完全な名前、タイプ、依存関係、依存関係を表示します。
- [クエリ] ペイン: 選択したアクションのコンパイル済み SQL クエリが表示されます。
[実行] タブ
このタブには、ワークスペースでトリガーされたすべての実行のログが表示されます。選択した実行のアクションとその詳細を表示することもできます。詳細については、 実行ログをモニタリングするをご覧ください。
ワークスペースでのバージョン管理
ワークスペースでは、Git ベースのバージョン管理を使用してリポジトリを操作します。ワークスペース内のファイルに対して行った編集は、commit 可能な commit されていないローカル変更として開始され、すべてのリポジトリ ユーザーが使用できるようにリポジトリに commit して push されます。
リポジトリがリモートの Git プロバイダに接続されている場合は、ワークスペースからメインの開発ブランチに変更を push します。リポジトリをリモートの Git プロバイダに接続するときに、メインブランチを選択します。接続されていない Dataform リポジトリでは、変更をデフォルト ブランチに push します。
Dataform リポジトリまたはリモート リポジトリから変更を pull して、開発ワークスペースのローカル変更とマージすることもできます。Dataform のバージョン管理の詳細については、 コードのバージョン管理をご覧ください。
始める前に
まだ作成していない場合は、 Dataform リポジトリを作成します。
必要なロール
開発ワークスペースの作成、初期化、削除に必要な権限を取得するには、ワークスペースに対するDataform 編集者 (roles/dataform.editor)IAM ロールの付与を管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
Dataform 開発ワークスペースを作成する
新しいリポジトリで開発ワークスペースを初めて作成すると、Dataform が動作するために必要な一連の構成ファイルを使用して開発ワークスペースを初期化するように求められます。
初期化された開発ワークスペースには、次のディレクトリとファイルが含まれています。
definitions/: Dataform コアまたは JavaScript のアセット定義のディレクトリ。includes/: リポジトリ全体で再利用できるスクリプトと変数の空のディレクトリ。workflow_settings.yaml: プロジェクト ID と BigQuery スキーマを含むデフォルトの Dataform 構成ファイル。 Google Cloud デフォルト設定を オーバーライド してニーズに合わせてカスタマイズできますが、Dataform の使用を 開始するためにカスタマイズは必須ではありません。package.json: 最新バージョンの@dataform/coreを含むデフォルトの Dataform 依存関係構成ファイル。このファイルを使用して パッケージをインポートできます。definitions/sample.sqlx: 開始に役立つサンプル SQLX ファイル。
新しい Dataform 開発ワークスペースを作成する手順は次のとおりです。
コンソールで、[Dataform] ページに移動します。 Google Cloud
新しい開発ワークスペースを作成するリポジトリを選択します。
リポジトリ ページで、[開発ワークスペースを作成] をクリックします。
[開発ワークスペースを作成] ウィンドウで、次の操作を行います。
[ワークスペース ID] フィールドに、開発ワークスペースの一意の ID を入力します。
ID には数字、英字、ハイフン、アンダースコアのみを使用できます。
[作成] をクリックします。
Dataform リポジトリでワークスペースを初期化する
Dataform 開発ワークスペースを初期化する手順は次のとおりです。
コンソールで、[Dataform] ページに移動します。 Google Cloud
空のワークスペースを初期化するリポジトリを選択します。
[開発ワークスペース] タブで、初期化する空のワークスペースの名前をクリックします。
開発ワークスペース ページで、[ワークスペースを初期化] をクリックします。
Dataform ワークスペースを削除する
Dataform 開発ワークスペースの作成に伴う費用は発生しません。ただし、開発ワークスペースを削除する場合は、次の手順に沿って操作します。
コンソールで、[Dataform] ページに移動します。 Google Cloud
削除するワークスペースを含むリポジトリを選択します。
commit されていない変更が削除されないようにするには、 変更を commit して Git リポジトリに push します。
[開発ワークスペース] タブで、削除する開発ワークスペースを選択し、[選択したワークスペースを削除] をクリックします。
複数のワークスペースを一度に削除できます。
[削除] をクリックして確定します。
次のステップ
- Dataform コードのバージョン管理方法については、 コードのバージョン管理をご覧ください。
- テーブルの作成方法については、 テーブルを作成するをご覧ください。
- プレビューを実行して SQL クエリをテストする方法については、 SQL クエリをプレビューするをご覧ください。