データ・フローの実行

post

/api/20210901/catalog/dataflows/{dataflowId}/actions/run

指定されたIDの既存のデータ・フローを実行します。リクエスト本文にパラメータが含まれている場合、データ・フローは指定されたパラメータで実行されます。リクエスト本文が指定されていない場合、データ・フローはそのまま実行されます。進行状況をモニターできるように、oa-work-request-idを返します。

リクエスト

パス・パラメータ
  • Base64URLエンコーディングを使用したデータ・フローのオブジェクトID。たとえば、データ・フローにオブジェクトID 'User1'.'dataflow1'がある場合、Base64URLでエンコードされた値J1VzZXIxJy4nZGF0YWZsb3cxJw== を入力します。
サポートされているメディア・タイプ
リクエスト本文 - application/json ()
ルート・スキーマ: schema
Type: object
ソースを表示
先頭に戻る

レスポンス

202レスポンス

非同期操作が開始されました。
ヘッダー

400レスポンス

不正なリクエスト(無効な問合せパラメータ、不正なヘッダーなど)。
本文()
ルート・スキーマ: Error
Type: object
ソースを表示

403レスポンス

禁止(操作の権限がない、不明な理由によりリクエストが拒否されたなど)。
本文()
ルート・スキーマ: Error
Type: object
ソースを表示

404レスポンス

見つかりません。リクエストされたリソースが見つかりませんでした。
本文()
ルート・スキーマ: Error
Type: object
ソースを表示

409レスポンス

競合(操作によって制約違反が発生し、操作が現在の状態と互換性がないなど)。
本文()
ルート・スキーマ: Error
Type: object
ソースを表示

500レスポンス

内部サーバー・エラー。サーバーで、リクエストの履行を妨げる予期しない状況が発生しました。
本文()
ルート・スキーマ: Error
Type: object
ソースを表示
先頭に戻る

これらの例は、パラメータの有無に関係なく、特定のdataflowIDを使用してデータ・フローを実行する方法を示しています。
  • 例1 - パラメータを使用しないデータ・フローの実行
  • 例2 - パラメータを使用したデータ・フローの実行
  • 例3 - JSONファイル(複数のデータセット・ターゲット)で定義されたパラメータを使用したデータ・フローの実行
  • 例4 - JSONファイルのパラメータを使用したデータ・フローの実行(Essbaseキューブ・ターゲット)
データ・フローを実行するときに、リクエスト本文で複数のオプション・パラメータを指定できます。パラメータを使用すると、実行時にデータ・フローの入力および出力を指定できます。
  • parameterName - 置換されるソース・データセットまたはターゲット・データセットの識別子。
  • datasetName - データセットの名前。データセットが存在し、データ・フローでデータセットを使用する権限が必要です。
  • type - データ・フロー・パラメータのタイプ。有効な値: source、target、cube
  • appParameterName - ターゲットEssbaseアプリケーションの識別子。
  • appName - ターゲットEssbaseアプリケーションの名前。
  • cubeParameterName - ターゲットEssbaseキューブの識別子。
  • cubeName - ターゲットEssbaseキューブの名前。

例1 パラメータを使用しないデータ・フローの実行

この例では、特定のdataflowIDを使用してデータ・フロー・ジョブを実行します。データ・フローのオブジェクトIDは'adminuser'.'mySalesDataFlow2024'で、Base64URLセーフでエンコードされたdataflowID値はJ2FkbWludXNlcicuJ215U2FsZXNEYXRhRmxvdzIwMjQnです。

cURLの例:

まず、削除するデータ・フローのオブジェクトIDを取得し、この値をBase64URLセーフでエンコードしてdataflowIDを決定します。「オブジェクトID」の値は、Oracle Analytics Serverのデータ・フローの「検査」ダイアログから取得できます。

必要なdataflowIDを指定してcURLコマンドを実行します。

curl -i \
     --header 'Authorization: Bearer <token>' \
     --header 'Content-Type: application/json' \
     --request POST 'https://<hostname>/api/20210901/catalog/dataflows/J2FkbWludXNlcicuJ215U2FsZXNEYXRhRmxvdzIwMjQn/actions/run' \

リクエスト本文の例

None required

レスポンス・ヘッダーの例

適用不可。

レスポンス本文の例

Status 200:

例2 パラメータを使用したデータ・フローの実行

この例では、ソース・パラメータとターゲット・パラメータを使用してデータ・フローを実行します。データ・フローのオブジェクトIDは'adminuser'.'myOrdersDataFlow2024'で、Base64URLセーフでエンコードされたdataflowID値はJ2FkbWludXNlcicuJ215T3JkZXJzRGF0YUZsb3cyMDI0Jwです。

  • ソース・パラメータ - データ・フローの1つ以上のデータセット・ソースを識別します。この例では、データ・フローへの入力は単一のデータセットSalesDatasetです。
  • ターゲット・パラメータ - データ・フローから出力される1つ以上のデータセットを識別します。この例では、データ・フローからの出力は単一のデータセットmySalesDataset2024です。

cURLの例:

まず、削除するデータ・フローのオブジェクトIDを取得し、この値をBase64URLセーフでエンコードしてdataflowIDを決定します。「オブジェクトID」の値は、Oracle Analyticsのデータ・フローの「検査」ダイアログから取得できます。

必要なdataflowIDを指定してcURLコマンドを実行します。

curl -i \
     --header 'Authorization: Bearer <token>' \
     --header 'Content-Type: application/json' \
     --request POST 'https://<hostname>/api/20210901/catalog/dataflows/J2FkbWludXNlcicuJ215T3JkZXJzRGF0YUZsb3cyMDI0Jw/actions/run' \
     --data '{ "parameters": [ \
               { "parameterName": Source Input", "datasetName": "SalesDataset", "type": "source" },
               { "parameterName": "Target Output", "datasetName": "mySalesDataset2024", "type": "target" }]}'
 

リクエスト本文の例

{"parameters":       
      [
            {
               "parameterName":"Source Input",
               "datasetName":"SalesDataset",
               "type":"source"
             },            
             {
               "parameterName": "Target Output",
               "datasetName": "mySalesDataset2024",  
               "type": "target"
            }
       ]
}

レスポンス・ヘッダーの例

適用不可。

レスポンス本文の例

Status 200:

例3 JSONファイル(複数のデータセット・ターゲット)で定義されたパラメータを使用したデータ・フローの実行

この例では、JSONファイル(mydataflowparameters.json)で定義された複数のソースおよびターゲット・パラメータを使用してデータ・フローを実行します。データ・フローのオブジェクトIDは'adminuser'.'myProductSalesDataFlow2024'で、Base64URLセーフでエンコードされたdataflowID値はJ2FkbWludXNlcicuJ215UHJvZHVjdFNhbGVzRGF0YUZsb3cyMDI0Jwです。

  • ソース・パラメータ - データ・フローの1つ以上のデータセット・ソースを識別します。この例では、データ・フローへの2つの入力(Product1DatasetProduct2Dataset)があります。
  • ターゲット・パラメータ - データ・フローから出力される1つ以上のデータセットを識別します。この例では、データ・フローからの2つの出力(myProduct1Dataset2024myProduct2Dataset2024)があります。

cURLの例:

まず、削除するデータ・フローのオブジェクトIDを取得し、この値をBase64URLセーフでエンコードしてdataflowIDを決定します。「オブジェクトID」の値は、Oracle Analyticsのデータ・フローの「検査」ダイアログから取得できます。

次に、データ・フローの実行に必要なパラメータを含むJSONファイルを作成します。たとえば、次のようなペイロードを持つmydataflowparameters.jsonというJSONファイルを作成します。

{"parameters":       
      [
            {
               "parameterName":"Source Input - Product1",
               "datasetName":"Product1Dataset",
               "type":"source"
             },            
             {
               "parameterName": "Source Input - Product2",
               "datasetName": "Product2Dataset",  
               "type": "source"
            },          
            {
               "parameterName": "Target Output - newDatasetProduct1",     
               "datasetName": "myProduct1Dataset2024",
               "type":"target"
            },
            {
               "parameterName": "Target Output - newDatasetProduct2",
               "datasetName": "myProduct2Dataset2024",
               "type": "target"       
            }
       ]
}

必要なdataflowIDを指定してcURLコマンドを実行します。

curl -i \
     --header 'Authorization: Bearer <token>' \
     --header 'Content-Type: application/json' \
     --request POST 'https://<hostname>/api/20210901/catalog/dataflows/J2FkbWludXNlcicuJ215UHJvZHVjdFNhbGVzRGF0YUZsb3cyMDI0Jw/actions/run' \
     --data @mydataflowparameters.json

レスポンス・ヘッダーの例

適用不可。

レスポンス本文の例

Status 200:

例3 JSONファイル(Essbaseキューブ・ターゲット)で定義されたパラメータを使用したデータ・フローの実行

この例では、JSONファイル(mydataflowcubeparameters.json)で定義されたソースおよびターゲット・パラメータを使用してデータ・フローを実行します。データ・フローのオブジェクトIDは'adminuser'.'mySalesDataFlow'で、Base64URLセーフでエンコードされたdataflowID値はJ2FkbWludXNlcicuJ215U2FsZXNEYXRhRmxvdyc=です。

  • ソース・パラメータ - データ・フローの1つ以上のデータセット・ソースを識別します。この例では、データ・フローへの入力が1つあります: SalesDataset
  • ターゲット・パラメータ - ターゲットのEssbaseアプリケーションおよびデータ・フローからのキューブ出力を識別します。この例では、MyEssbaseAppおよびMySalesCubeです。

cURLの例:

まず、削除するデータ・フローのオブジェクトIDを取得し、この値をBase64URLセーフでエンコードしてdataflowIDを決定します。「オブジェクトID」の値は、Oracle Analyticsのデータ・フローの「検査」ダイアログから取得できます。

次に、データ・フローの実行に必要なパラメータを含むJSONファイルを作成します。たとえば、次のようなペイロードを持つmydataflowcubeparameters.jsonというJSONファイルを作成します。

{
         "parameters":
         [
            {
               "parameterName": "Source Input",
               "datasetName": "SalesDataset",
               "type": "source"
             },
             {
               "appParameterName": "Target - MyEssbaseApp",
               "appName": "MyEssbaseApp",
               "cubeParameterName": "Target - MySalesCube",
               "cubeName": "MySalesCube",
               "type": "cube"
            }
         ]
}

必要なdataflowIDを指定してcURLコマンドを実行します。

curl -i \
     --header 'Authorization: Bearer <token>' \
     --header 'Content-Type: application/json' \
     --request POST 'https://<hostname>/api/20210901/catalog/dataflows/J2FkbWludXNlcicuJ215U2FsZXNEYXRhRmxvdyc=/actions/run' \
     --data @mydataflowcubeparameters.json

レスポンス・ヘッダーの例

適用不可。

レスポンス本文の例

Status 200:
先頭に戻る