テーブルAPI¶
テーブル作成¶
指定されたテーブル名でテーブルを作成、または変更します。
テーブルについての詳細は、テーブルをご覧ください。
リクエスト情報¶
シンタックス¶
PUT /v1/{cluster name}/{database name}/{table name}?table HTTP1.1
Host: analysis-dag.iijgio.com
Date: {date}
Authorization: {authorization string}
{
"format" : {format},
"schema" : {schema},
"comment" : {comment}
}
リクエストパラメータ¶
この操作ではリクエストパラメータは使用しません。
リクエストボディ¶
この操作では以下のリクエストボディを使用します。
名前 | 説明 | 必須 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
format |
|
☓ | ||||||||
schema |
|
☓ | ||||||||
comment |
|
☓ |
レスポンス情報¶
レスポンスボディ¶
この操作はレスポンスボディを返しません。
エラー情報¶
この操作では以下のエラーを返します。
コード | 内容 | ステータス |
---|---|---|
InvalidClusterState | 操作出来ないクラスタのステータスです。 | 400 Bad Request |
InvalidClusterName | 指定されたクラスタ名が不正です。 | 400 Bad Request |
InvalidDatabaseName | 指定されたデータベース名が不正です。 | 400 Bad Request |
InvalidTableName | 指定されたテーブル名が不正です。 | 400 Bad Request |
InvalidFormat | 指定されたformatの値が不正です。 | 400 Bad Request |
InvalidSchema | 指定されたschemaの値が不正です。 | 400 Bad Request |
InvalidDDLStatement | 使用できないschemaが指定されました。 | 400 Bad Request |
CommentIsTooLong | 指定されたcommentの文字数が長すぎます。 | 400 Bad Request |
CommentMustBeAsciiString | 指定されたcommentが不正です。 | 400 Bad Request |
ClusterNotFound | 存在しないクラスタ名が指定されました。 | 404 Not Found |
DatabaseNotFound | 存在しないデータベースが指定されました。 | 404 Not Found |
サンプル¶
- sampleCluster1クラスタのsampledbデータベースにsampletblをjsonフォーマットで作成するサンプル
- リクエスト
PUT /v1/sampleCluster1/sampledb/sampletbl?table HTTP1.1 Host: analysis-dag.iijgio.com Content-Length: 75 Date: Wed, 25 Nov 2009 12:00:00 GMT Authorization: IIJGIO 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE= { "format" : "json", "comment" :"sample table" }
- レスポンス
HTTP/1.1 204 No Content Date: Wed, 25 Nov 2009 12:00:00 GMT Server: IIJAnalysisDag x-iijgio-request-id: YgIPIfBiKa2bj0KMgUAdQkf3ShJTOOpXUueF6QKo Content-Type: text/plain Content-Length: 0 Connection: close
テーブル一覧取得¶
指定されたデータベースに作成されているテーブルの一覧を取得します。
1度のリクエストで最大で100件のテーブル情報を返すことができ、maxパラメータを変更することで一覧に含まれるテーブルの件数(最大100件)を指定できます。
レスポンスに含まれるテーブル情報が、上記で指定した件数を超える場合には、その一覧が部分的であることをisTruncated要素で通知します。
部分的な一覧の場合にはmarkerを指定して、再度リクエストすることで次の一覧を取得できます。
リクエスト情報¶
シンタックス¶
GET /v1/{cluster name}/{database name}?table HTTP1.1
Host: analysis-dag.iijgio.com
Date: {date}
Authorization: {authorization string}
リクエストパラメータ¶
パラメータ名 | 説明 | 必須 | ||||||
---|---|---|---|---|---|---|---|---|
max |
|
☓ | ||||||
marker |
|
☓ |
リクエストボディ¶
この操作ではリクエストボディは使用しません。
レスポンス情報¶
レスポンスボディ¶
この操作では以下のレスポンスボディを返します。
名前 | 説明 | ||
---|---|---|---|
nextMarker |
|
||
isTruncated |
|
||
tables |
|
名前 | 説明 | ||
---|---|---|---|
databaseName |
|
||
tableName |
|
||
format |
|
||
comment |
|
||
location |
|
||
createTime |
|
||
modifiedTime |
|
||
partitions |
|
||
columns |
|
名前 | 説明 | ||
---|---|---|---|
name |
|
||
type |
|
エラー情報¶
この操作では以下のエラーを返します。
コード | 内容 | ステータス |
---|---|---|
InvalidClusterState | 操作出来ないクラスタのステータスです。 | 400 Bad Request |
InvalidClusterName | 指定されたクラスタ名が不正です。 | 400 Bad Request |
InvalidDatabaseName | 指定されたデータベース名が不正です。 | 400 Bad Request |
InvalidTableName | markerに指定されたテーブル名が不正です。 | 400 Bad Request |
InvalidMaxRange | maxの値が範囲外です。 | 400 Bad Request |
InvalidMax | maxの値が不正です。 | 400 Bad Request |
ClusterNotFound | 存在しないクラスタ名が指定されました。 | 404 Not Found |
DatabaseNotFound | 存在しないデータベースが指定されました。 | 404 Not Found |
サンプル¶
- sampleCluster1クラスタのsampledbに作成されたテーブルを最大10件取得するサンプル
- リクエスト
GET /v1/sampleCluster1/sampledb?table&max=10 HTTP1.1 Host: analysis-dag.iijgio.com Content-Length: 0 Date: Wed, 25 Nov 2009 12:00:00 GMT Authorization: IIJGIO 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
- レスポンス
HTTP/1.1 200 OK Date: Wed, 25 Nov 2009 12:00:00 GMT Server: IIJAnalysisDag x-iijgio-request-id: YgIPIfBiKa2bj0KMgUAdQkf3ShJTOOpXUueF6QKo Content-Type: application/json Content-Length: 232 Connection: close { "isTruncated" : false, "tables" : [{ "databaseName": "sampledb", "tableName": "sampletbl", "format": "json_agent", "comment": "test comment", "location" : "dag://sampledb/sampletbl", "createTime": 1398999768, "modifiedTime": 1398999768, "partitions" : [ { "type": "string", "name": "date" }, { "type": "string", "name": "hour" } ], "columns": [ { "type": "int", "name": "time" }, { "type": "map<string,string>", "name": "v" } ] }, { "databaseName": "sampledb", "tableName": "samplefiles1", "format": "csv", "comment": "test comment", "location" : "dag://sampledb/samplefiles1", "createTime": 1398999768, "modifiedTime": 1398999768, "columns": [ { "type": "array<string>", "name": "v" } ] } ] }
テーブル情報取得¶
指定したテーブルの情報を取得します。
リクエスト情報¶
シンタックス¶
GET /v1/{cluster name}/{database name}/{table name}?table HTTP1.1
Host: analysis-dag.iijgio.com
Date: {date}
Authorization: {authorization string}
リクエストパラメータ¶
この操作ではリクエストパラメータは使用しません。
リクエストボディ¶
この操作ではリクエストボディは使用しません。
レスポンス情報¶
レスポンスボディ¶
この操作では以下のレスポンスボディを返します。
名前 | 説明 | ||
---|---|---|---|
databaseName |
|
||
tableName |
|
||
format |
|
||
comment |
|
||
location |
|
||
createTime |
|
||
modifiedTime |
|
||
partitions |
|
||
columns |
|
名前 | 説明 | ||
---|---|---|---|
name |
|
||
type |
|
エラー情報¶
この操作では以下のエラーを返します。
コード | 内容 | ステータス |
---|---|---|
InvalidClusterState | 操作出来ないクラスタのステータスです。 | 400 Bad Request |
InvalidClusterName | 指定されたクラスタ名が不正です。 | 400 Bad Request |
InvalidDatabaseName | 指定されたデータベース名が不正です。 | 400 Bad Request |
InvalidTableName | 指定されたテーブル名が不正です。 | 400 Bad Request |
ClusterNotFound | 存在しないクラスタ名が指定されました。 | 404 Not Found |
DatabaseNotFound | 存在しないデータベースが指定されました。 | 404 Not Found |
TableNotFound | 存在しないテーブルが指定されました。 | 404 Not Found |
サンプル¶
- sampleCluster1クラスタのsampledbに作成されたsampletblテーブルの情報を取得するサンプル
- リクエスト
GET /v1/sampleCluster1/sampledb/sampletbl?table HTTP1.1 Host: analysis-dag.iijgio.com Content-Length: 0 Date: Wed, 25 Nov 2009 12:00:00 GMT Authorization: IIJGIO 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
- レスポンス
HTTP/1.1 200 OK Date: Wed, 25 Nov 2009 12:00:00 GMT Server: IIJAnalysisDag x-iijgio-request-id: YgIPIfBiKa2bj0KMgUAdQkf3ShJTOOpXUueF6QKo Content-Type: application/json Content-Length: 232 Connection: close { "databaseName": "sampledb", "tableName": "sampletbl", "format": "json_agent", "comment": "test comment", "location" : "dag://sampledb/sampletbl", "createTime": 1398999768, "modifiedTime": 1398999768, "partitions" : [ { "type": "string", "name": "date" }, { "type": "string", "name": "hour" } ], "columns": [ { "type": "int", "name": "time" }, { "type": "map<string,string>", "name": "v" } ] }
テーブル削除¶
指定されたテーブルを削除します。
実行中のクエリでテーブルを参照している場合は、そのクエリがエラーとなる場合がありますので、クエリが完了してからテーブルを削除してください。
Note
テーブル生成時に作成されたDAGストレージ上のオブジェクト{table name}_$folder$
は削除されません。
リクエスト情報¶
シンタックス¶
DELETE /v1/{cluster name}/{database name}/{table name}?table HTTP1.1
Host: analysis-dag.iijgio.com
Date: {date}
Authorization: {authorization string}
リクエストパラメータ¶
この操作ではリクエストパラメータは使用しません。
リクエストボディ¶
この操作ではリクエストボディは使用しません。
レスポンス情報¶
レスポンスボディ¶
この操作はレスポンスボディを返しません。
エラー情報¶
この操作では以下のエラーを返します。
コード | 内容 | ステータス |
---|---|---|
InvalidClusterState | 操作出来ないクラスタのステータスです。 | 400 Bad Request |
InvalidClusterName | 指定されたクラスタ名が不正です。 | 400 Bad Request |
InvalidDatabaseName | 指定されたデータベース名が不正です。 | 400 Bad Request |
InvalidTableName | 指定されたテーブル名が不正です。 | 400 Bad Request |
ClusterNotFound | 存在しないクラスタ名が指定されました。 | 404 Not Found |
DatabaseNotFound | 存在しないデータベースが指定されました。 | 404 Not Found |
TableNotFound | 存在しないテーブルが指定されました。 | 404 Not Found |
サンプル¶
- sampleCluster1クラスタのsampledbに作成されたsampletblテーブルを削除するサンプル
- リクエスト
DELETE /v1/sampleCluster1/sampledb/sampletbl?table HTTP1.1 Host: analysis-dag.iijgio.com Content-Length: 0 Date: Wed, 25 Nov 2009 12:00:00 GMT Authorization: IIJGIO 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
- レスポンス
HTTP/1.1 204 No Content x-iijgio-request-id: YgIPIfBiKa2bj0KMgUAdQkf3ShJTOOpXUueF6QKo Date: Wed, 25 Nov 2009 12:00:00 GMT Server: IIJAnalysisDag Content-Type: text/plain Content-Length: 0 Connection: close