Einstein Analytics データの実行、スケジュール、および REST API との同期
データフロージョブまたはレシピの開始と停止
REST API を使用して、データをデータセットに読み込むデータフロージョブまたはレシピの開始を自動化できます。この API は、データマネージャの [今すぐ実行] 機能に相当します。実行中のジョブを停止することもできます。データフロージョブには、wave/dataflows で定義されたデータフローと wave/recipes で定義されたレシピが含まれます。
- データフロージョブまたはレシピの開始
-
データフローまたはレシピを開始する POST 要求を指定した /wave/dataflowjobs エンドポイントを使用します。POST リクエストボディで、dataflowId パラメータを使用して開始するデータフローを指定します。レシピでは、dataflowId に targetDataflowId 値を使用します。
POST 要求が DataflowJobRepresentation を返します。
注意: 同期がまだ実行されていない場合や、前回の実行以降に更新されている場合は、この方法を使用してデータフローまたはレシピを実行すると、関連付けられているオブジェクトのデータ同期が自動的に実行されます。
- データフロージョブまたはレシピの停止
-
特定のデータフロージョブを停止する PATCH 要求を指定した /wave/dataflowjobs/<dataflowjobId> エンドポイントを使用します。PATCH 要求が、dataflowjobId 要求パラメータを使用して、停止するデータフローを指定します。
データフロージョブノードの探索
REST API を使用して、データフロージョブの各ノードを記述および探索できます。これには、標準データフローおよびレシピのノードが含まれます。
- すべてのデータフロージョブノードの表示
-
ノードをリストする GET 要求を指定した /wave/dataflowjobs/<dataflowJobId>/nodes エンドポイントを使用します。
GET 要求が DataflowJobNodeCollectionRepresentation を返します。
注意: この要求は、030、03C、または 0eP で始まる ID を持つデータフロージョブでのみ機能します。データフロージョブ ID が 030 で始まる場合、結果は空のコレクションになります。
- 1 つのデータフロージョブノードの表示
-
1 つのデータフロージョブノードの詳細を表示する GET 要求を指定した /wave/dataflowjobs/<dataflowJobId>/nodes/<nodeId> エンドポイントを使用します。
GET 要求が DataflowJobNodeRepresentation を返します。
データフロー、レシピ、データ同期のスケジュール
Analytics REST API を使用して、データフロー、レシピ、データ同期が時間ベースのスケジュール (時間、週、月、曜日、日付) で実行されるように自動化できます。たとえば、データフローをスケジュールして、特定の時刻までにデータを使用できるようにしたり、ジョブを営業時間外に実行したりできます。assetId 要求パラメータを使用して、スケジュールするデータのアセットタイプを指定します。
また、Salesforce Local Connection の同期後にデータフローまたはレシピが実行されるようにイベントベースのスケジュールを設定することもできます。データフローまたはレシピの実行前に同期する必要のある Salesforce オブジェクトのデータをデータフローまたはレシピで抽出する場合、イベントベースのスケジュールを設定します。イベントベースのスケジュールはデータフローおよびレシピにのみ適用され、現在データ同期には使用できません。
- データアセットのスケジュール
-
データアセットをスケジュールする PUT 要求を指定した /wave/asset/<assetId>/schedule エンドポイントを使用します。以下に、リクエストボディで設定可能な各種のスケジュールの例を示します。
時間単位のスケジュールの設定 - リクエストボディの例
このリクエストボディは、アメリカ/ロサンゼルス時間の毎日午前 2 時 30 分から 3 時間ごとに実行され、午後 8 時にキューへの追加が停止される時間ベースのスケジュールを設定します。
週単位のスケジュールの設定 - リクエストボディの例
このリクエストボディは、アメリカ/ロサンゼルス時間の毎週月曜日と木曜日の午前 12 時 45 分に実行される時間ベースのスケジュールを設定します。
月単位の特定のスケジュールの設定 - リクエストボディの例
このリクエストボディは、アメリカ/ロサンゼルス時間の毎月 1 日、15 日、31 日の午前 12 時に実行される時間ベースのスケジュールを設定します。
月単位の相対スケジュールの設定 - リクエストボディの例
このリクエストボディは、アメリカ/ロサンゼルス時間の毎月最終日曜日の午前 12 時に実行される時間ベースのスケジュールを設定します。
イベントベースのスケジュールの設定 - リクエストボディの例
このリクエストボディは、Salesforce ローカル接続の同期後にデータフローを実行するイベントベースのスケジュールを設定します。データ接続では、イベントベースのスケジュールがサポートされていません。
PUT 要求が、assetId 要求パラメータを使用して、スケジュールするデータフロー、レシピ、データ同期を指定します。
API エラーがある場合を除き、PUT 応答は空です。
DELETE 要求が、assetId 要求パラメータを使用して、削除するデータフロー、レシピ、データ同期スケジュールを指定します。
データ接続の同期
Analytics REST API を使用して、ローカルの Salesforce 組織または外部データソースからの接続済みデータの同期を自動化します。同期されたデータは、データフローやレシピで使用できるオブジェクトとして保存されます。この API は、データマネージャの [今すぐ実行] 機能に相当します。
- データ同期の今すぐ実行
- データ同期を開始する POST 要求を指定した /wave/dataConnectors/<connectorIdOrApiName>/ingest エンドポイントを使用します。リクエストボディは空のまま、URL への POST を実行します。
POST 要求が、connectorIdOrApiName 要求パラメータを使用して、実行するデータ同期を指定します。
POST 要求が RestoreDatasetVersionRepresentation を返します。