プロベナンス: DDC に対する操作
当ドキュメントでは、DDCに関連する操作方法を記述しています。
レコード数のカウント prov.count_ddc_records
作成済のddcのレコード数を取得したい場合のJSON-RPCのリクエスト例は下記の通りです。
{
"jsonrpc": "2.0",
"method": "prov.count_ddc_records",
"params": {"ddc_label": "ddc:xrain"},
"id": "provenance_jsonrpc_id"
}
レスポンスの形式は以下の通りです。
{
"result": 440,
"id": "provenance_jsonrpc_id",
"jsonrpc": "2.0"
}
パラメータ
params には以下のパラメータを指定します。
パラメータ名 | データ型 | 内容 | 既定値 |
---|---|---|---|
ddc_label | string | DDC名 | 必須 |
DDC 存在チェック prov.ddc_exists
指定したddcが存在するかどうか確認したい場合のJSON-RPCのリクエスト例は下記の通りです。
{
"jsonrpc": "2.0",
"method": "prov.ddc_exists",
"params": {"ddc_label": "ddc:xrain"},
"id": "provenance_jsonrpc_id"
}
レスポンスの形式は以下の通りです。
{
"result": true,
"id": "provenance_jsonrpc_id",
"jsonrpc": "2.0"
}
パラメータ
params には以下のパラメータを指定します。
パラメータ名 | データ型 | 内容 | 既定値 |
---|---|---|---|
ddc_label | string | DDC名 | 必須 |
カラム情報取得 prov.get_ddc_columns
指定したddcのカラム情報を取得したい場合のJSON-RPCのリクエスト例は下記の通りです。
{
"jsonrpc": "2.0",
"method": "prov.get_ddc_columns",
"params": {"ddc_label": "ddc:xrain"},
"id": "provenance_jsonrpc_id"
}
レスポンスの形式は以下の通りです。
{
"result": [{
"column_name": "start_datetime",
"data_type": "timestamp with time zone",
"nullable": false, "attnum": 1
}, {
"column_name": "end_datetime",
"data_type": "timestamp with time zone",
"nullable": false, "attnum": 2
}, {
"column_name": "location",
"data_type": "geometry",
"nullable": false, "attnum": 3
}, {
"column_name": "rain_map",
"data_type": "raster",
"nullable": false, "attnum": 4
}],
"id": "provenance_jsonrpc_id",
"jsonrpc": "2.0"
}
パラメータ
params には以下のパラメータを指定します。
パラメータ名 | データ型 | 内容 | 既定値 |
---|---|---|---|
ddc_label | string | DDC名 | 必須 |
DDC のメタデータを取得 prov.resolve_ddc
指定したddcのメタデータを取得したい場合のJSON-RPCのリクエスト例は下記の通りです。
{
"jsonrpc": "2.0",
"method": "prov.resolve_ddc",
"params": {"ddc_label": "ddc:xrain"},
"id": "provenance_jsonrpc_id"
}
レスポンスの形式は以下の通りです。
{
"result": {
"id": 1002,
"session_id": 43,
"usename": "xuser",
"ddc_type": "link",
"short_form": "xrain",
"long_form": "xrain_1611407057.670942",
"realname": "public.event_xrain_clipped",
"created_at": "2021-10-09 23:32:09.693272+09",
"committed_at": "2021-10-09 23:32:10.39546+09",
"prepared_activity_id": null
},
"id": "provenance_jsonrpc_id",
"jsonrpc": "2.0"
}
パラメータ
params には以下のパラメータを指定します。
パラメータ名 | データ型 | 内容 | 既定値 |
---|---|---|---|
ddc_label | string | DDC名 | 必須 |
Open API処理実行 prov.process
指定したddcで Open API を実行したい場合のJSON-RPCのリクエスト例は下記の通りです。 aggregate_geometry_table を例としています。
Open APIの各処理についてはリファレンスを参照してください。
{
"jsonrpc": "2.0",
"method": "prov.process",
"params": {
"method": "aggregate_geometry_table",
"params": {
"output_ddc": "ddc:agg_domingo",
"input_ddc": "ddc:domingo",
"start_datetime": "2021-10-15 10:09:30+09:00",
"end_datetime": "2021-10-15 10:30:30+09:00",
"spatial_extent": "{\"type":\"Polygon\",\"coordinates\":[[[139.25,35.25],[139.25,35.5],[139.625,35.5],[139.625,35.25],[139.25,35.25]]]}",
"continuous_column_names": ["fld"],
"discrete_column_names": [],
"no_exec": true,
},
},
"id": "provenance_jsonrpc_id"
}
レスポンスの形式は以下の通りです。
{
"result": {
"id": 1175,
"session_id": 37,
"usename": "test_user",
"ddc_type": "table",
"short_form": "agg_domingo",
"long_form": "agg_domingo_1635548980.90725",
"realname": "provenance.prov_ac5b5195430963ee5f5e0eab25a957e9",
"created_at": "2021-10-15T10:09:40.123456+09:00",
"committed_at": null,
"prepared_activity_id": 1204
},
"id": "provenance_jsonrpc_id",
"jsonrpc": "2.0"
}
パラメータ
params には以下のパラメータを指定します。JSON-RPCとしてのparamsの中に更にparamsがあることに注意してください。
パラメータ名 | データ型 | 内容 | 既定値 |
---|---|---|---|
method | string | 実行したいオープンAPIのメソッド名 | 必須 |
params | object | 実行したいオープンAPIのメソッドに対するパラメータ | 必須 |
DDC の処理履歴を取得 prov.get_ddc_activities, prov.get_ddc_last_activity
指定したddcの処理履歴を取得したい場合のJSON-RPCのリクエスト例は下記の通りです。
{
"jsonrpc": "2.0",
"method": "prov.get_ddc_activities",
"params": {"ddc_label": "ddc:xrain"},
"id": "provenance_jsonrpc_id"
}
レスポンスの形式は以下の通りです。
{
"result": [{
"context": "set_ddc('ddc:xrain','event_xrain_clipped','{NULL}','true','link',NULL)",
"end_at": "2021-10-09 23:33:09.693272+09",
"id": 1070,
"input_ddc_list": null,
"output_ddc": "xrain_1611407057.670942",
"query": "",
"relation_size": 65708032,
"report": "",
"start_at": "2021-10-09 23:32:10.39546+09",
"successed": true
}],
"id": "provenance_jsonrpc_id",
"jsonrpc": "2.0"
}
最後の処理だけを取得したい場合は get_ddc_last_activity
を実行します。
{
"jsonrpc": "2.0",
"method": "prov.get_ddc_last_activity",
"params": {"ddc_label": "ddc:xrain"},
"id": "provenance_jsonrpc_id"
}
{
"result": {
"context": "set_ddc('ddc:xrain','event_xrain_clipped','{NULL}','true','link',NULL)",
"end_at": "2021-10-09 23:33:09.693272+09",
"id": 1070,
"input_ddc_list": null,
"output_ddc": "xrain_1611407057.670942",
"query": "",
"relation_size": 65708032,
"report": "",
"start_at": "2021-10-09 23:32:10.39546+09",
"successed": true
},
"id": "provenance_jsonrpc_id",
"jsonrpc": "2.0"
}
パラメータ
prov.get_ddc_activities
, prov.get_ddc_last_activity
の params には以下のパラメータを指定します。
パラメータ名 | データ型 | 内容 | 既定値 |
---|---|---|---|
ddc_label | string | DDC名 | 必須 |
DDC の実行状態を取得 prov.ddc_processing_status
指定したddcの処理の実行状態を取得したい場合のJSON-RPCのリクエスト例は下記の通りです。
{
"jsonrpc": "2.0",
"method": "prov.ddc_processing_status",
"params": {"ddc_label": "ddc:xrain"},
"id": "provenance_jsonrpc_id"
}
レスポンスの形式は以下の通りです。
{
"result": {
"stat": "finished",
"message": "set_ddc('ddc:xrain','event_xrain_clipped','{NULL}','true','link',NULL)"
},
"id": "provenance_jsonrpc_id",
"jsonrpc": "2.0"
}
パラメータ
params には以下のパラメータを指定します。
パラメータ名 | データ型 | 内容 | 既定値 |
---|---|---|---|
ddc_label | string | DDC名 | 必須 |