メタデータ管理 API を使用すると、データベース、テーブル、パーティション、ビューなどのメタデータオブジェクトに対して統一された操作を実行できます。これらの API を使用して、データ管理ニーズを満たすためにメタデータを効率的に作成、照会、更新、および削除できます。
権限付与情報
RAM アクセス制御
次の表に、API の権限付与情報を示します。この情報を Resource Access Management (RAM) ポリシー文の Action 要素で使用して、RAM ユーザーまたは RAM ロールにこれらの API を呼び出す権限を付与できます。
操作:具体的な権限です。
アクセスレベル:各操作のアクセスレベルです。有効な値は Write、Read、または List です。
リソースタイプ:操作の権限付与をサポートするリソースタイプです。
アスタリスク (*) は、必須のリソースタイプを示します。
リソースレベルの権限付与をサポートしない操作の場合、値は
All resourcesになります。
条件キー:クラウドプロダクトによって定義される条件キーです。
関連操作:操作を正常に実行するために必要な他の権限です。呼び出し元は、関連操作の権限も持っている必要があります。
操作 | アクセスレベル | リソースタイプ | 条件キー | 関連操作 |
dlf:See the specific API | See the specific API | *All resources
| None | None |
RAM アクセス制御の更新が有効になるまで、通常約 1 分かかります。
ACL 権限管理
詳細については、「認可管理」をご参照ください。
データベース API
ListDatabases - データベースの一覧取得
データカタログからデータベースの一覧を取得します。
RAM アクセス制御
戻り値
名前 | タイプ | 説明 | 例の値 |
| array | データカタログからのデータベース名の配列です。配列要素の順序は保証されません。 | [test_db1, test_db2] |
database | string | データベース名です。 | test_db1 |
例
List<String> databases = restApi.listDatabases();ListDatabasesPaged - データベースの一覧をページング取得
データカタログからデータベースの一覧をページングで取得します。データベース名でフィルターをかけられます。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
maxResults | integer | No | 各ページで返されるエントリ数です。このパラメーターを設定しない場合、サーバーのデフォルト値が使用されます。0 より大きい値を設定した場合、設定値とサーバーのデフォルト値のうち小さい方が使用されます。 | 10 |
pageToken | string | No | ページングクエリの開始位置です。最初のクエリでは null を入力します。後続のクエリでは、前の応答の NextPageToken 値を入力します。返された NextPageToken が空文字列の場合、これ以上データはありません。 | db_test |
databaseNamePattern | string | No | データベース名の SQL LIKE パターンで、末尾にワイルドカード (%) を含みます。このパラメーターを設定しないか空の場合、すべてのデータベースが返されます。 | db_test% |
戻り値
名前 | タイプ | 説明 | 例の値 |
- | object | 返されたデータです。 | |
| array | データカタログからのデータベース名の配列です。配列要素の順序は保証されません。 | [test_db1, test_db2] |
database | string | データベース名です。 | test_db1 |
nextPageToken | string | 次のページングクエリの開始位置です。 | test_db1 |
例
すべてのデータベースの一覧を取得
int maxResults = 10; List<String> results = new ArrayList<>(); Map<String, String> queryParams = Maps.newHashMap(); String pageToken = null; do { PagedResponse<String> response = restApi.listDatabasesPaged(10, pageToken, null); pageToken = response.getNextPageToken(); if (response.data() != null) { results.addAll(response.data()); } if (pageToken == null || response.data() == null || response.data().isEmpty()) { break; } } while (StringUtils.isNotEmpty(pageToken));名前パターンに一致するデータベースの一覧をページング取得
PagedList<String> pagedDatabases = restApi.listDatabasesPaged(10, null, "test_db%");
CreateDatabase - データベースの作成
データカタログに新しいメタデータベースを作成します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
name | string | No | 名前です。 | db_demo |
properties | map | No | 構成パラメーターの構造体です。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API には戻りパラメーターがありません。 | |||
例外
タイプ | 説明 |
AlreadyExistsException | REST リクエストが 409 を返します。これは、データベースがすでに存在することを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにデータベースを作成する権限がないことを示します。 |
例
Map<String, String> properties = new HashMap();
properties.put("k1", "v1");
api.createDatabase("db_demo", properties);GetDatabase - データベースの取得
データカタログからメタデータベースを取得します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
name | string | Yes | 名前です。 | db_demo |
戻り値
名前 | タイプ | 説明 | 例の値 |
- | object | 返されたデータです。 | |
id | string | データベース ID です。 | 6b168495-4a4f-48a5-be43-c258d6ce0715 |
name | string | データベース名です。 | db_demo |
location | string | データベースの場所です。 | |
options | map | 構成パラメーターの構造体です。 |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データベースが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにデータベースを取得する権限がないことを示します。 |
例
GetDatabaseResponse response = api.getDatabase(name);DropDatabase - データベースの削除
データカタログからデータベースを削除します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
name | string | Yes | 名前です。 | db_demo |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API には戻りパラメーターがありません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データベースが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにデータベースを削除する権限がないことを示します。 |
例
api.dropDatabase(name);AlterDatabase - データベースの変更
データカタログ内のデータベース情報を更新します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
name | string | Yes | 名前です。 | db_demo |
| array | No | 削除する構成のリストです。 | k1 |
removal | string | 削除する構成です。 | ||
updates | map | No | 更新する構成のキーと値のペアです。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API には戻りパラメーターがありません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データベースが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにデータベースを変更する権限がないことを示します。 |
例
List<String> removals = new ArrayList<>();
removals.add(“k1”)
Map<String, String> updates = new HashMap<>();
updates.put("k2", "v2")
api.alterDatabase(name, removals, updates);テーブル API
CreateTable - テーブルの作成
テーブルを作成します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル識別子です。 | ||
schema | Yes | テーブルスキーマです。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API には戻り値がありません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データベースが存在しないことを示します。 |
AlreadyExistsException | REST リクエストが 409 を返します。これは、テーブルがすでに存在することを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにテーブルを作成する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "test_table");
Schema schema =
new Schema(
Lists.newArrayList(
new DataField(0, "pk", DataTypes.INT()),
new DataField(1, "col1", DataTypes.STRING()),
new DataField(2, "col2", DataTypes.STRING())),
Collections.emptyList(),
Collections.emptyList(),
Maps.newHashMap(),
"");
restApi.createTable(identifier, schema);DropTable - テーブルの削除
テーブルを削除します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル識別子です。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API には戻り値がありません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、テーブルが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーに現在のテーブルを削除する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "new_table");
restApi.dropTable(identifier);RenameTable - テーブルの名前変更
テーブルの名前を変更します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
fromIdentifier | Yes | 元のテーブル識別子です。 | ||
toIdentifier | Yes | 移動先のテーブル識別子です。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API には戻り値がありません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、元のテーブルが存在しないことを示します。 |
AlreadyExistsException | REST リクエストが 409 を返します。これは、移動先のテーブルがすでに存在することを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーに現在のテーブルを変更する権限がないことを示します。 |
例
Identifier fromIdentifier = Identifier.create("test_db", "old_table");
Identifier toIdentifier = Identifier.create("test_db", "new_table");
restApi.renameTable(fromIdentifier, toIdentifier);AlterTable - テーブルの変更
識別子に基づいてテーブルを変更します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル記述子です。 | ||
| array | Yes | テーブル変更情報のリストです。 | |
schemaChange | Yes | テーブル変更情報です。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API には戻り値がありません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、テーブルが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーに現在のテーブルを変更する権限がないことを示します。 |
例
ArrayList<SchemaChange> schemaChanges = Lists.newArrayList(
SchemaChange.addColumn("col2", DataTypes.DATE()),
SchemaChange.addColumn("col3", DataTypes.STRING(), "col3 field"));
restApi.alterTable(
identifier,
schemaChanges);GetTable - テーブルの詳細取得
データレイク内のテーブルの詳細を取得します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル識別子です。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
getTableResponse | テーブルの詳細です。 |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、テーブルが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーに現在のテーブルを取得する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "test_table");
GetTableResponse response = restApi.getTable(identifier);ListTables - テーブルの一覧照会
データレイクからテーブル名の一覧を取得します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
databaseName | string | Yes | データベース名です。 | test_db |
戻り値
名前 | タイプ | 説明 | 例の値 |
| array | テーブル名のリストです。 | [test_table1, test_table2] |
table | string | テーブル名です。 | test_table |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データベースが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーに現在のデータベースを表示する権限がないことを示します。 |
例
String databaseName = "test_db";
List<String> tables = restApi.listTables(databaseName);ListTablesPaged - テーブル名の一覧をページング取得
データレイクからテーブルの一覧をページングで取得します。テーブル名でフィルターをかけられます。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
databaseName | string | Yes | データベース名です。 | test_db |
maxResults | string | No | ページサイズです。有効な値は、入力値とサーバーのデフォルト値のうち小さい方です。 | 10 |
pageToken | string | No | 結果から返されるページネーショントークンです。最初のクエリの場合は null を渡します。返された NextPageToken が空文字列の場合、これ以上データはありません。 | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
tableNamePattern | string | No | テーブル名の SQL スタイルのワイルドカードパターン (%) です。このパラメーターを設定しない場合、すべてのテーブルが返されます。 | test_table% |
戻り値
名前 | タイプ | 説明 | 例の値 |
- | object | 返されたデータです。 | |
| array | テーブル名のリストです。 | |
table | string | テーブル名です。 | test_table |
nextPageToken | string | ページネーショントークンです。 | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データベースが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーに現在のデータベースを表示する権限がないことを示します。 |
例
すべてのテーブルの一覧を取得
String databaseName = "db_test"; int maxResults = 10; List<String> results = new ArrayList<>(); Map<String, String> queryParams = Maps.newHashMap(); String pageToken = null; do { PagedResponse<String> response = restApi.listTablesPaged(databaseName, 10, pageToken, null); pageToken = response.getNextPageToken(); if (response.data() != null) { results.addAll(response.data()); } if (pageToken == null || response.data() == null || response.data().isEmpty()) { break; } } while (StringUtils.isNotEmpty(pageToken));名前パターンに一致するテーブルの一覧をページング取得
String databaseName = "test_db"; PagedList<String> pagedTables = restApi.listTablesPaged(databaseName, 10, pageToken, "test_table%");
ListTableDetailsPaged - テーブルの詳細一覧をページング取得
データレイクからテーブルの詳細一覧をページングで取得します。テーブル名でフィルターをかけられます。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
databaseName | string | Yes | データベース名です。 | test_db |
maxResults | string | No | ページサイズです。有効な値は、入力値とサーバーのデフォルト値のうち小さい方です。 | 10 |
pageToken | string | No | 結果から返されるページネーショントークンです。最初のクエリの場合は null を渡します。返された NextPageToken が空文字列の場合、これ以上データはありません。 | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
tableNamePattern | string | No | テーブル名の SQL スタイルのワイルドカードパターン (%) です。このパラメーターを設定しない場合、すべてのテーブルが返されます。 | test_table% |
戻り値
名前 | タイプ | 説明 | 例の値 |
- | object | 返されたデータです。 | |
| array | テーブルの詳細のリストです。 | |
tableDetail | テーブルの詳細です。 | ||
nextPageToken | string | ページネーショントークンです。 | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データベースが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーに現在のデータベースを表示する権限がないことを示します。 |
例
すべてのテーブルの詳細を取得
String databaseName = "test_db"; int maxResults = 10; List<GetTableResponse> results = new ArrayList<>(); Map<String, String> queryParams = Maps.newHashMap(); String pageToken = null; do { PagedResponse<String> response = restApi.listTablesPaged(databaseName, 10, pageToken, null); pageToken = response.getNextPageToken(); if (response.data() != null) { results.addAll(response.data()); } if (pageToken == null || response.data() == null || response.data().isEmpty()) { break; } } while (StringUtils.isNotEmpty(pageToken));名前パターンに一致するテーブルの一覧をページング取得
String databaseName = "test_db"; PagedList<GetTableResponse> pagedTableDetails = restApi.listTablesPaged(databaseName, 10, pageToken, "test_table%");
GetTableSnapshot - テーブルの最新スナップショットの取得
データレイク内のテーブルの最新スナップショット情報を取得します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル識別子です。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
TableSnapshot | テーブルのスナップショット情報です。 |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、テーブルまたは最新のスナップショットが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーに現在のテーブルを取得する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "test_table");
restApi.loadSnapshot(identifier)GetVersionSnapshot - 特定バージョンのスナップショットの取得
バージョン情報に基づいてテーブルのスナップショットを取得します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル識別子です。 | ||
version | String | Yes | バージョン情報です。 | "Latest", "EARLIEST", "1" |
戻り値
名前 | タイプ | 説明 | 例の値 |
Snapshot | テーブルのスナップショット情報です。 |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、テーブルまたは最新のスナップショットが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーに現在のテーブルを取得する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "test_table");
String version = "Latest";
restApi.loadSnapshot(identifier, version);ListSnapshotsPaged - スナップショットの一覧をページング取得
データレイク内のテーブルのスナップショット情報の一覧をページングで取得します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル識別子です。 | ||
maxResults | string | No | ページサイズです。有効な値は、入力値とサーバーのデフォルト値のうち小さい方です。 | 10 |
pageToken | string | No | 結果から返されるトークンです。最初のクエリの場合は null を渡します。返された NextPageToken が空文字列の場合、これ以上データはありません。 | 1 |
戻り値
名前 | タイプ | 説明 | 例の値 |
| array | テーブルスナップショットのリストです。 | |
snapshot | テーブルのスナップショット情報です。 | ||
nextPageToken | string | 次のページの結果用のトークンです。 | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 エラーを返します。これは、テーブルが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 エラーを返します。これは、現在のユーザーにテーブルを表示する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "test_table");
int maxResults = 10;
List<Snapshot> results = new ArrayList<>();
Map<String, String> queryParams = Maps.newHashMap();
String pageToken = null;
do {
PagedResponse<Snapshot> response = restApi.listSnapshotsPaged(identifier, maxResults, pageToken);
pageToken = response.getNextPageToken();
if (response.data() != null) {
results.addAll(response.data());
}
if (pageToken == null || response.data() == null || response.data().isEmpty()) {
break;
}
} while (StringUtils.isNotEmpty(pageToken));RollbackTable
データベース内のテーブルをロールバックします。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル記述子です。 | ||
instant | Yes | ロールバックインスタンスの情報です。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API は値を返しません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 エラーを返します。これは、テーブル、ロールバック用のスナップショット、またはタグが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 エラーを返します。これは、現在のユーザーにテーブルをロールバックする権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "test_table");
Instant instant = Instant.snapshot(snapshotId)
restApi.rollbackTo(identifier, instant);CreateBranch - テーブルブランチの作成
データベース内のテーブルのブランチを作成します。
リソースアクセス管理
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル記述子です。 | ||
branch | string | Yes | ブランチです。 | test_branch |
fromTag | string | No | タグです。 | test_tag |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API は戻り値を持ちません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データテーブルまたはタグが存在しないことを示します。 |
AlreadyExistsException | REST リクエストが 409 を返します。これは、ブランチがすでに存在することを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにブランチを作成する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "new_table");
restCatalog.createBranch(tableIdentifier, "test_branch", "tag_test");DropBranch - テーブルブランチの削除
データベース内のテーブルブランチを名前で削除します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル記述子です。 | ||
branch | string | Yes | ブランチ名です。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API は戻り値を持ちません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 エラーを返します。これは、ブランチが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 エラーを返します。これは、現在のユーザーにブランチを削除する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "test_table");
restApi.dropBranch(identifier, "branch_test");ForwardBranch - テーブルブランチのフォワード
転送テーブル ブランチ。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル記述子です。 | ||
branch | string | Yes | ブランチ名です。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
この API は値を返しません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 エラーを返します。これは、ブランチが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 エラーを返します。これは、現在のユーザーに現在のブランチを削除する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "test_table");
restApi.fastForward(identifier, "branch_test");ListBranches
データベース内のテーブルのブランチを取得します。
リソースアクセス管理
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例の値 |
identifier | Yes | テーブル記述子です。 |
戻り値
名前 | タイプ | 説明 | 例の値 |
| array | ブランチ名のリストです。 | [test_branch1, test_branch2] |
branch | string | テーブル名です。 | test_branch |
例外
タイプ | 説明 |
NoSuchResourceException | データテーブルが存在しない場合、REST リクエストが 404 エラーを返します。 |
ForbiddenException | 現在のユーザーにテーブルを表示する権限がない場合、REST リクエストが 403 エラーを返します。 |
例
Identifier identifier = Identifier.create("test_db", "test_table");
List<String> branches = restApi.listBranches(identifier);パーティション API
ListPartitions - パーティションの一覧取得
パーティションの一覧を取得します。
リソースアクセス管理
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例 |
identifier | Yes | テーブル記述子です。 |
戻り値
名前 | タイプ | 説明 | 例 |
| array | パーティションの詳細のリストです。 | |
partition | string | パーティションの詳細です。 |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データテーブルが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにテーブルに対する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "new_table");
List<Partition> tables = restApi.listPartitions(identifier);ListPartitionsPaged - パーティションの一覧をページング取得
パーティションの一覧をページングで取得します。パーティション名でフィルターをかけられます。
リソースアクセス管理
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例 |
identifier | Yes | テーブル識別子です。 | ||
maxResults | string | No | 各ページで返されるエントリ数です。有効な値は、指定された値とサーバーのデフォルト値のうち小さい方です。 | 10 |
pageToken | string | No | 前の応答からのページネーショントークンです。最初のリクエストの場合は空のままにしてください。応答の NextPageToken が空の場合、これ以上データはありません。 | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
partitionNamePattern | string | No | パーティション名の右側ワイルドカード一致のための SQL スタイルのパターンです。このパラメーターを指定しない場合、すべてのパーティションが返されます。 | year=2025% |
戻り値
名前 | タイプ | 説明 | 例 |
- | object | 返されたデータです。 | |
| array | パーティションの詳細のリストです。 | |
partition | パーティションの詳細です。 | ||
nextPageToken | string | ページネーショントークンです。 | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データテーブルが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにテーブルに対する権限がないことを示します。 |
例
すべてのパーティションの詳細一覧を取得
Identifier identifier = Identifier.create("test_db", "new_table"); int maxResults = 10; List<String> results = new ArrayList<>(); Map<String, String> queryParams = Maps.newHashMap(); String pageToken = null; do { PagedResponse<Partition> response = restApi.listPartitionsPaged(identifier, 10, pageToken, null); pageToken = response.getNextPageToken(); if (response.data() != null) { results.addAll(response.data()); } if (pageToken == null || response.data() == null || response.data().isEmpty()) { break; } } while (StringUtils.isNotEmpty(pageToken));パーティション名に一致するパーティションの詳細一覧をページング取得
Identifier identifier = Identifier.create("test_db", "new_table"); PagedList<Partition> pagedPartitions = restApi.listPartitionsPaged(identifier, 10, pageToken, "year=2025%");
MarkDonePartitions - パーティションを完了済みとしてマーク
パーティションを完了済みとしてマークします。
リソースアクセス管理
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例 |
identifier | Yes | テーブル記述子です。 | ||
| array | Yes | 完了済みとしてマークするパーティションのリストです。 | |
partition | Map | Yes | 完了済みとしてマークするパーティションです。 | {"year":"1025", "month": "05"} |
戻り値
名前 | タイプ | 説明 | 例 |
この API は戻り値を持ちません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データテーブルが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにテーブルに対する権限がないことを示します。 |
例
Identifier identifier = Identifier.create("test_db", "new_table");
List<Map<String, String>> partitions = new ArrayList<>();
LinkedHashMap<String, String> partition = new LinkedHashMap<>();
partition.put("year", "2025");
partition.put("month", "05");
restApi.markDonePartitions(identifier, partitions);ビュー API
ListViews - ビューの一覧照会
データベースからビューの一覧を取得します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例 |
databaseName | string | Yes | データベース名です。 | db_demo |
戻り値
名前 | タイプ | 説明 | 例 |
| array | ビュー名のリストです。 | |
view | string | ビュー名です。 | view_demo |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、ビューが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにビューを取得する権限がないことを示します。 |
例
List<String> viewNames = api.listViews(name);ListViewsPaged - ビューの一覧をページング照会
データベースからビューの一覧をページングで取得します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例 |
databaseName | string | Yes | データベース名です。 | db_demo |
maxResults | integer | No | 各ページで返されるエントリ数です。このパラメーターを設定しない場合、サーバーのデフォルト構成値が使用されます。0 より大きい値を設定した場合、設定値とサーバーのデフォルト値のうち小さい方が使用されます。 | 10 |
pageToken | string | No | ページングクエリの開始位置です。最初のクエリでは null を入力します。後続のクエリでは、前の応答の NextPageToken 値を入力します。返された NextPageToken が空文字列の場合、これ以上データはありません。 | view_test |
viewNamePattern | string | No | ビュー名の SQL LIKE 右側あいまい一致 (%) のパターンです。このパラメーターを設定しないか空の場合、すべてのビューが返されます。 | view_tes% |
戻り値
名前 | タイプ | 説明 | 例 |
- | object | 返されたデータです。 | |
| array | ビュー名のリストです。 | [view_demo] |
view | string | ビュー名です。 | view_demo |
nextPageToken | string | 次のページのトークンです。 | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、ビューが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにビューを取得する権限がないことを示します。 |
例
すべてのテーブルの一覧を取得
String databaseName = "db_test"; int maxResults = 10; List<String> results = new ArrayList<>(); Map<String, String> queryParams = Maps.newHashMap(); String pageToken = null; do { PagedResponse<String> response = restApi.listViewsPaged(databaseName, 10, pageToken, null); pageToken = response.getNextPageToken(); if (response.data() != null) { results.addAll(response.data()); } if (pageToken == null || response.data() == null || response.data().isEmpty()) { break; } } while (StringUtils.isNotEmpty(pageToken));ビュー名に一致するビューの一覧をページング取得
String databaseName = "test_db"; PagedList<String> pagedViews = restApi.listViewsPaged(databaseName, 10, null, "test_v%");
ListViewDetailsPaged - ビューの詳細一覧をページング照会
データベースからビューの詳細一覧をページングで取得します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例 |
databaseName | string | Yes | データベース名です。 | db_demo |
maxResults | integer | No | 各ページで返されるエントリ数です。このパラメーターを設定しない場合、サーバーのデフォルト構成値が使用されます。0 より大きい値を設定した場合、設定値とサーバーのデフォルト値のうち小さい方が使用されます。 | 10 |
pageToken | string | No | ページングクエリの開始位置です。最初のクエリでは null を入力します。後続のクエリでは、前の応答の NextPageToken 値を入力します。返された NextPageToken が空文字列の場合、これ以上データはありません。 | view_test |
viewNamePattern | string | No | ビュー名の SQL LIKE 右側あいまい一致 (%) のパターンです。このパラメーターを設定しないか空の場合、すべてのビューが返されます。 | view_tes% |
戻り値
名前 | タイプ | 説明 | 例 |
- | PagedList | 返されたデータです。 | |
| array | ビューの詳細のリストです。 | [view_demo] |
viewDetail | ビューの詳細です。 | ||
nextPageToken | string | 次のページのトークンです。 | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、ビューが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにビューの詳細を取得する権限がないことを示します。 |
例
すべてのビューの一覧を取得
String databaseName = "db_test"; int maxResults = 10; List<GetViewResponse> results = new ArrayList<>(); Map<String, String> queryParams = Maps.newHashMap(); String pageToken = null; do { PagedResponse<GetViewResponse> response = restApi.listViewDetailsPaged(databaseName, 10, pageToken, null); pageToken = response.getNextPageToken(); if (response.data() != null) { results.addAll(response.data()); } if (pageToken == null || response.data() == null || response.data().isEmpty()) { break; } } while (StringUtils.isNotEmpty(pageToken));ビュー名に一致するビューの一覧をページング取得
String databaseName = "test_db"; PagedList<GetViewResponse> pagedViewDetails = restApi.listViewDetailsPaged(databaseName, 10, null, "test_v%");
CreateView - ビューの作成
データベースにビューを作成します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例 |
identifier | Yes | ビュー記述子です。 | ||
schema | Yes | ビュー構造です。 |
例外
タイプ | 説明 |
AlreadyExistsException | REST リクエストが 409 を返します。これは、ビューがすでに存在することを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにビューを作成する権限がないことを示します。 |
例
Identifier identifier = new Identifier(databaseName, "my_view");
RowType rowType = RowType.builder().field("str",DataTypes.STRING()).build();
String query = "SELECT * FROM OTHER_TABLE";
Map<String, String> option = new HashMap<>();
Map<String, String> dialects = new HashMap<>();
dialects.put("spark", "SELECT * FROM SPARK_TABLE");
ViewSchema schema =
new ViewSchema(
rowType.getFields(),
query,
dialects,
"comment",
option));
api.createView(identifier, schema);GetView - ビューの取得
データベース内のビューの詳細を取得します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例 |
identifier | Yes | ビュー記述子です。 |
戻り値
名前 | タイプ | 説明 | 例 |
id | string | ビュー ID です。 | |
name | string | ビュー名です。 | |
schema | ビュー構造です。 |
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データベースが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにデータベースを取得する権限がないことを示します。 |
例
Identifier identifier = new Identifier(databaseName, "my_view");
GetViewResponse response = api.getView(identifier);DropView - ビューの削除
データベースからビューを削除します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例 |
identifier | Yes | ビュー記述子です。 |
戻り値
名前 | タイプ | 説明 | 例 |
この API は戻りパラメーターを持ちません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、データベースが存在しないことを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにデータベースを取得する権限がないことを示します。 |
例
Identifier identifier = new Identifier(databaseName, "my_view");
api.dropView(identifier);RenameView - ビューの名前変更
データベース内のビューの名前を変更します。
RAM アクセス制御
リクエストパラメーター
名前 | タイプ | 必須 | 説明 | 例 |
fromView | Yes | 元のビュー記述子です。 | ||
toView | Yes | 新しいビュー記述子です。 |
戻り値
名前 | タイプ | 説明 | 例 |
この API は戻りパラメーターを持ちません。 | |||
例外
タイプ | 説明 |
NoSuchResourceException | REST リクエストが 404 を返します。これは、ビューが存在しないことを示します。 |
AlreadyExistsException | REST リクエストが 409 を返します。これは、ビューがすでに存在することを示します。 |
ForbiddenException | REST リクエストが 403 を返します。これは、現在のユーザーにビューの名前を変更する権限がないことを示します。 |
例
Identifier fromView = new Identifier(databaseName, "from_view");
Identifier toView = new Identifier(databaseName, "to_view");
api.renameView(fromView, toView);