ジョブを提出する際、インラインデータを含めることも、リクエストの中でデータを参照することもできます。 このデータは、データ識別子と同じ名前のファイルにマッピングされ、モデルによって使用される。 データ識別子の拡張子は、使用されるファイルのフォーマットを定義する。 使用する入力データとその収集方法(インラインデータまたは参照データ)を定義できる。
インライン・データ
リクエストにインラインデータを埋め込むことができます。
- 表形式のインライン・データ
- この例では、モデル入力ファイルとして使われる
diet_food.csv
ファイルを生成します。csv
ファイルだけがサポートされています。"input_data": [{ "id":"diet_food.csv", "fields" : ["name","unit_cost","qmin","qmax"], "values" : [ ["Roasted Chicken", 0.84, 0, 10] ] }]
- 生のインライン・データ
- このタイプのインラインデータは、OPLの
.dat
ファイルや.lp
ファイルなどに便利です。"input_data": [{ "id":"model.lp", "content":"<model encoded as base64 string>" }]
参照されているデータ
表形式データのデータまたは接続アセットを使用する場合は、アセットタイプに関係なく、'id
フィールドのデータ識別子の拡張子として'.csv
使用する。 データコネクターは必要な変換を行うので、データのフォーマットを変更することなくデータをロードすることができる。 そのため、データ・コネクタを使用してデータを参照することで、さまざまなデータ・ソース・タイプやフォーマットで同じDecision Optimizationモデルを使用できます。 他のdata-identifier拡張子を使用した場合、データは変換されずに生データのバイナリファイルとしてロードされる。
- データ資産
- データ資産参照を使用して、スペースに存在するあらゆるデータ資産を検索し、データ・コネクタ統合機能の恩恵を受けることができます。 プロジェクトのデータ資産を使用するには、まず自分のスペースにそれらを昇格させる必要があります。
この例では、スペース内のデータ資産への入力データ参照を定義する。
"input_data_references": [{ "type": "data_asset", "id": "diet_food.csv", "connection": {}, "location": { "href": "/v2/assets/<ASSET_ID>?space_id=<SPACE_ID>" } }]
この例では、Microsoft Excelファイルのアセット<ASSET_ID>をスペース<SPACE_ID>から読み込む方法を示します。
"input_data_references": [{ "type": "data_asset", "id": "kpis.csv", "connection": {}, "location": { "href": "/v2/assets/<ASSET_ID>?space_id=<SPACE_ID>" } }]
- 接続資産
- 接続アセットを使用して任意のデータを参照し、その都度認証情報を指定することなく接続を参照することができます。 セキュア接続を参照すると、ペイロードでインライン資格情報を使用する必要がなくなり、セキュリティーの向上にもつながります。
id
を使って接続を識別することができます。 例:"input_data_references": [{ "type": "connection_asset", "id": "diet_food.csv", "connection": { "id" : "<CONNECTION_ID>", } "location": { <Data-connector interaction properties depending on connection type> } }]
<CONNECTION_ID>
は、接続のグローバル一意識別子です。 この識別子は、接続を作成し、プロジェクトで接続を編集するときに見つけることができます。 この識別子は、接続の編集ウィンドウのURLに表示されます。ジョブの定義については、配置ジョブの定義を参照してください。
location
フィールドには、接続に必要なインタラクション・プロパティを指定することができる。この例では、COS/S3バケットに接続している。 相互作用のプロパティは「location
フィールドに記載されている。"location": { "file_name" : "<FILENAME>", "bucket" : "<BUCKET_NAME>" }
この例では、Db2 アセットに接続しています。 相互作用のプロパティは「location
フィールドに記載されている。"location" : { "table_name" : "<TABLE_NAME>", "schema_name" : "<SCHEMA_NAME>" }
この例では、COS/S3バケットに接続している。 接続リファレンスは「
id
フィールドに記載される。"input_data_references": [{ "type": "connection_asset", "id": "diet_food.csv", "connection": { "id" : "<CONNECTION_ID>" }, "location": { "file_name" : "<FILENAME>", "bucket" : "<BUCKET_NAME>" } }]
この例では、COS/S3バケットからMicrosoft Excelファイルをロードする方法を示します。"input_data_references": [{ "type": "kpis.csv", "id": "diet_food.csv", "connection": { "id" : "<CONNECTION_ID>" }, "location": { "file_name" : "<kpis.xlsx>", "bucket" : "<BUCKET_NAME>" } }]
この例では、Db2 アセットに接続する方法を示します。 接続リファレンスは「id
フィールドに記載される。"input_data_references": [{ "type" : "connection_asset", "id" : "diet_food.csv", "connection" : { "id" : "<CONNECTION_ID>" }, "location" : { "table_name" : "<TABLE_NAME>", "schema_name" : "<SCHEMA_NAME>" } }]
location
フィールドで使えるインタラクション・プロパティの詳細については、メインメニューのプラットフォーム接続を参照してください。 接続ページで、接続リソース >接続プロパティを選択します。 次に、関連するコネクタの Interaction properties > As a source タブを選択します。 Platform assets catalogを作成する必要があるかもしれません。Decision Optimizationで利用可能なさまざまな接続の詳細については、 Decision Optimizationでサポートされているデータソースを参照してください。
- URL参照データ
- URL参照データを使えば、特定のURLからデータを読み込むことができる。この例では、 Decision Optimization 配置ジョブの入力データとして、
GET
コマンドを使用して URL からdiet_food.csv
ファイルを取得します。"input_data_references": { "type": "url", "id": "diet_food.csv", "connection": { "verb": "GET", "url": "https://myserver.com/diet_food.csv", "headers": { "Content-Type": "application/x-www-form-urlencoded" } }, "location": {} }
同じリクエストで異なるタイプのデータを組み合わせることができます。 データ定義の詳細については、分析プロジェクトにデータを追加するを参照してください。