API manajemen metadata memungkinkan Anda melakukan operasi terpadu pada objek metadata, seperti database, tabel, partisi, dan tampilan. Anda dapat menggunakan API ini untuk membuat, mengkueri, memperbarui, dan menghapus metadata secara efisien guna memenuhi kebutuhan manajemen data Anda.
Informasi otorisasi
Kontrol akses RAM
Tabel berikut mencantumkan informasi otorisasi untuk API. Anda dapat menggunakan informasi ini dalam elemen Action pernyataan kebijakan Resource Access Management (RAM) untuk memberikan izin kepada Pengguna RAM atau Peran RAM agar dapat memanggil API ini.
Operasi: Izin spesifik.
Tingkat akses: Tingkat akses untuk setiap operasi. Nilai yang valid adalah Write, Read, atau List.
Jenis resource: Jenis resource yang mendukung otorisasi untuk operasi tersebut.
Tanda bintang (*) menunjukkan jenis resource yang wajib.
Untuk operasi yang tidak mendukung otorisasi tingkat resource, nilainya adalah
All resources.
Kunci kondisi: Kunci kondisi yang didefinisikan oleh produk cloud.
Operasi terkait: Izin lain yang diperlukan agar operasi berhasil dijalankan. Pemanggil juga harus memiliki izin untuk semua operasi terkait tersebut.
Operasi | Tingkat akses | Jenis resource | Kunci kondisi | Operasi terkait |
dlf:See the specific API | See the specific API | *All resources
| None | None |
Pembaruan kontrol akses RAM biasanya memerlukan waktu sekitar satu menit untuk berlaku.
Pengelolaan izin ACL
Untuk informasi selengkapnya, lihat Manajemen otorisasi.
API Database
ListDatabases - Dapatkan daftar database
Mengambil daftar database dari katalog data.
Kontrol akses RAM
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
| array | Array nama database dari katalog data. Urutan elemen array tidak dijamin. | [test_db1, test_db2] |
database | string | Nama database. | test_db1 |
Contoh
List<String> databases = restApi.listDatabases();ListDatabasesPaged - Dapatkan daftar database terpaginasi
Mengambil daftar database terpaginasi dari katalog data. Anda dapat memfilter database berdasarkan nama.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
maxResults | integer | No | Jumlah entri yang dikembalikan per halaman. Jika parameter ini tidak diatur, nilai default server akan digunakan. Jika Anda mengatur parameter ini ke nilai lebih besar dari 0, sistem akan menggunakan nilai yang lebih kecil antara pengaturan Anda dan nilai default server. | 10 |
pageToken | string | No | Posisi awal untuk kueri terpaginasi. Untuk kueri pertama, masukkan null. Untuk kueri berikutnya, masukkan nilai NextPageToken dari respons sebelumnya. Jika NextPageToken yang dikembalikan berupa string kosong, tidak ada data tambahan yang tersedia. | db_test |
databaseNamePattern | string | No | Pola LIKE SQL untuk nama database, dengan wildcard (%) di akhir. Jika parameter ini tidak diatur atau kosong, semua database akan dikembalikan. | db_test% |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
- | object | Data yang dikembalikan. | |
| array | Array nama database dari katalog data. Urutan elemen array tidak dijamin. | [test_db1, test_db2] |
database | string | Nama database. | test_db1 |
nextPageToken | string | Posisi awal untuk kueri terpaginasi berikutnya. | test_db1 |
Contoh
Ambil daftar semua database
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));Ambil daftar database terpaginasi yang sesuai dengan pola nama
PagedList<String> pagedDatabases = restApi.listDatabasesPaged(10, null, "test_db%");
CreateDatabase - Buat database
Membuat metadatabase baru di katalog data.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
name | string | No | Nama. | db_demo |
properties | map | No | Struktur parameter konfigurasi. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak memiliki parameter kembali. | |||
Pengecualian
Tipe | Deskripsi |
AlreadyExistsException | Permintaan REST mengembalikan 409, yang menunjukkan bahwa database sudah ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk membuat database. |
Contoh
Map<String, String> properties = new HashMap();
properties.put("k1", "v1");
api.createDatabase("db_demo", properties);GetDatabase - Dapatkan database
Mengambil metadatabase dari katalog data.
Kontrol akses RAM
Parameter permintaan
Nama | Type | Wajib | Deskripsi | Nilai contoh |
name | string | Yes | Nama. | db_demo |
Nilai kembali
Nama | Jenis | Deskripsi | Nilai contoh |
- | object | Data yang dikembalikan. | |
id | string | ID database. | 6b168495-4a4f-48a5-be43-c258d6ce0715 |
name | string | Nama database. | db_demo |
location | string | Lokasi database. | |
options | map | Struktur parameter konfigurasi. |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa database tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mengambil database. |
Contoh
GetDatabaseResponse response = api.getDatabase(name);DropDatabase - Hapus database
Menghapus database dari katalog data.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
name | string | Yes | Nama. | db_demo |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak memiliki parameter kembali. | |||
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa database tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk menghapus database. |
Contoh
api.dropDatabase(name);AlterDatabase - Ubah database
Memperbarui informasi database di katalog data.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
name | string | Yes | Nama. | db_demo |
| array | No | Daftar konfigurasi yang akan dihapus. | k1 |
removal | string | Konfigurasi yang akan dihapus. | ||
updates | map | No | Pasangan kunci-nilai konfigurasi yang akan diperbarui. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak memiliki parameter kembali. | |||
Pengecualian
Jenis | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa database tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mengubah database. |
Contoh
List<String> removals = new ArrayList<>();
removals.add(“k1”)
Map<String, String> updates = new HashMap<>();
updates.put("k2", "v2")
api.alterDatabase(name, removals, updates);API Tabel
CreateTable - Buat tabel
Membuat tabel.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Identifier tabel. | ||
schema | Yes | Skema tabel. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak memiliki nilai kembali. | |||
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa database tidak ada. |
AlreadyExistsException | Permintaan REST mengembalikan 409, yang menunjukkan bahwa tabel sudah ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk membuat tabel. |
Contoh
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 - Hapus tabel
Menghapus tabel.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Identifier tabel. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak memiliki nilai kembali. | |||
Pengecualian
Jenis | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tabel tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk menghapus tabel saat ini. |
Contoh
Identifier identifier = Identifier.create("test_db", "new_table");
restApi.dropTable(identifier);RenameTable - Ubah nama tabel
Mengubah nama tabel.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
fromIdentifier | Yes | Identifier tabel asli. | ||
toIdentifier | Yes | Identifier tabel tujuan. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak memiliki nilai kembali. | |||
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tabel asli tidak ada. |
AlreadyExistsException | Permintaan REST mengembalikan 409, yang menunjukkan bahwa tabel tujuan sudah ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mengubah tabel saat ini. |
Contoh
Identifier fromIdentifier = Identifier.create("test_db", "old_table");
Identifier toIdentifier = Identifier.create("test_db", "new_table");
restApi.renameTable(fromIdentifier, toIdentifier);AlterTable - Ubah tabel
Mengubah tabel berdasarkan identifier-nya.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Deskriptor tabel. | ||
| array | Yes | Daftar informasi perubahan tabel. | |
schemaChange | Yes | Informasi perubahan tabel. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak memiliki nilai kembali. | |||
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tabel tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mengubah tabel saat ini. |
Contoh
ArrayList<SchemaChange> schemaChanges = Lists.newArrayList(
SchemaChange.addColumn("col2", DataTypes.DATE()),
SchemaChange.addColumn("col3", DataTypes.STRING(), "col3 field"));
restApi.alterTable(
identifier,
schemaChanges);GetTable - Dapatkan detail tabel
Mengambil detail tabel di data lake.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Identifier tabel. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
getTableResponse | Detail tabel. |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tabel tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mengambil tabel saat ini. |
Contoh
Identifier identifier = Identifier.create("test_db", "test_table");
GetTableResponse response = restApi.getTable(identifier);ListTables - Kueri daftar tabel
Mengambil daftar nama tabel dari data lake.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
databaseName | string | Yes | Nama database. | test_db |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
| array | Daftar nama tabel. | [test_table1, test_table2] |
table | string | Nama tabel. | test_table |
Pengecualian
Type | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa database tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk melihat database saat ini. |
Contoh
String databaseName = "test_db";
List<String> tables = restApi.listTables(databaseName);ListTablesPaged - Dapatkan daftar nama tabel terpaginasi
Mengambil daftar tabel terpaginasi dari data lake. Anda dapat memfilter tabel berdasarkan nama.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
databaseName | string | Yes | Nama database. | test_db |
maxResults | string | No | Ukuran halaman. Nilai efektif adalah nilai yang lebih kecil antara nilai input dan nilai default server. | 10 |
pageToken | string | No | Token paginasi, yang dikembalikan dari hasil. Jika ini adalah kueri pertama Anda, berikan null. Jika NextPageToken yang dikembalikan berupa string kosong, tidak ada data tambahan yang tersedia. | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
tableNamePattern | string | No | Pola wildcard bergaya SQL (%) untuk nama tabel. Jika Anda tidak mengatur parameter ini, semua tabel akan dikembalikan. | test_table% |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
- | object | Data yang dikembalikan. | |
| array | Daftar nama tabel. | |
table | string | Nama tabel. | test_table |
nextPageToken | string | Token paginasi. | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
Pengecualian
Jenis | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa database tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk melihat database saat ini. |
Contoh
Ambil daftar semua tabel
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));Ambil daftar tabel terpaginasi yang sesuai dengan pola nama
String databaseName = "test_db"; PagedList<String> pagedTables = restApi.listTablesPaged(databaseName, 10, pageToken, "test_table%");
ListTableDetailsPaged - Dapatkan daftar detail tabel terpaginasi
Mengambil daftar detail tabel terpaginasi dari data lake. Anda dapat memfilter tabel berdasarkan nama.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
databaseName | string | Yes | Nama database. | test_db |
maxResults | string | No | Ukuran halaman. Nilai efektif adalah nilai yang lebih kecil antara nilai input dan nilai default server. | 10 |
pageToken | string | No | Token paginasi, yang dikembalikan dari hasil. Jika ini adalah kueri pertama Anda, berikan null. Jika NextPageToken yang dikembalikan berupa string kosong, tidak ada data tambahan yang tersedia. | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
tableNamePattern | string | No | Pola wildcard bergaya SQL (%) untuk nama tabel. Jika Anda tidak mengatur parameter ini, semua tabel akan dikembalikan. | test_table% |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
- | object | Data yang dikembalikan. | |
| array | Daftar detail tabel. | |
tableDetail | Detail tabel. | ||
nextPageToken | string | Token paginasi. | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa database tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk melihat database saat ini. |
Contoh
Ambil detail semua tabel
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));Ambil daftar tabel terpaginasi yang sesuai dengan pola nama
String databaseName = "test_db"; PagedList<GetTableResponse> pagedTableDetails = restApi.listTablesPaged(databaseName, 10, pageToken, "test_table%");
GetTableSnapshot - Dapatkan snapshot terbaru tabel
Mengambil informasi snapshot terbaru untuk tabel di data lake.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Identifier tabel. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
TableSnapshot | Informasi snapshot tabel. |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tabel atau snapshot terbaru tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mengambil tabel saat ini. |
Contoh
Identifier identifier = Identifier.create("test_db", "test_table");
restApi.loadSnapshot(identifier)GetVersionSnapshot - Dapatkan snapshot versi tertentu
Mengambil snapshot tabel berdasarkan informasi versinya.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Identifier tabel. | ||
version | String | Yes | Informasi versi. | "Latest", "EARLIEST", "1" |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
Snapshot | Informasi snapshot tabel. |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tabel atau snapshot terbaru tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mengambil tabel saat ini. |
Contoh
Identifier identifier = Identifier.create("test_db", "test_table");
String version = "Latest";
restApi.loadSnapshot(identifier, version);ListSnapshotsPaged - Dapatkan daftar snapshot terpaginasi
Mengambil daftar informasi snapshot terpaginasi untuk tabel di data lake.
Kontrol akses RAM
Parameter permintaan
Nama | Jenis | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Identifier tabel. | ||
maxResults | string | No | Ukuran halaman. Nilai efektif adalah nilai yang lebih kecil antara nilai input dan nilai default server. | 10 |
pageToken | string | No | Token paginasi, yang dikembalikan dari hasil. Jika ini adalah kueri pertama Anda, berikan null. Jika NextPageToken yang dikembalikan berupa string kosong, tidak ada data tambahan yang tersedia. | 1 |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
| array | Daftar snapshot tabel. | |
snapshot | Informasi snapshot tabel. | ||
nextPageToken | string | Token untuk halaman hasil berikutnya. | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan error 404. Ini menunjukkan bahwa tabel tidak ada. |
ForbiddenException | Permintaan REST mengembalikan error 403. Ini menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk melihat tabel. |
Contoh
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
Menjalankan rollback tabel di database.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Deskriptor tabel. | ||
instant | Yes | Informasi instance rollback. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak mengembalikan nilai. | |||
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan error 404, yang menunjukkan bahwa tabel, snapshot untuk rollback, atau tag tidak ada. |
ForbiddenException | Permintaan REST mengembalikan error 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk menjalankan rollback tabel. |
Contoh
Identifier identifier = Identifier.create("test_db", "test_table");
Instant instant = Instant.snapshot(snapshotId)
restApi.rollbackTo(identifier, instant);CreateBranch - Buat branch tabel
Membuat branch untuk tabel di database.
Resource Access Management
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Deskriptor tabel. | ||
branch | string | Yes | Cabang. | test_branch |
fromTag | string | No | Tag. | test_tag |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak memiliki nilai kembali. | |||
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404. Ini menunjukkan bahwa tabel data atau tag tidak ada. |
AlreadyExistsException | Permintaan REST mengembalikan 409. Ini menunjukkan bahwa branch sudah ada. |
ForbiddenException | Permintaan REST mengembalikan 403. Ini menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk membuat branch. |
Contoh
Identifier identifier = Identifier.create("test_db", "new_table");
restCatalog.createBranch(tableIdentifier, "test_branch", "tag_test");DropBranch - Hapus branch tabel
Menghapus branch tabel di database berdasarkan nama.
Kontrol akses RAM
Parameter permintaan
Nama | Jenis | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Deskriptor tabel. | ||
branch | string | Yes | Nama branch. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak memiliki nilai kembali. | |||
Pengecualian
Type | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan error 404. Ini menunjukkan bahwa branch tidak ada. |
ForbiddenException | Permintaan REST mengembalikan error 403. Ini menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk menghapus branch. |
Contoh
Identifier identifier = Identifier.create("test_db", "test_table");
restApi.dropBranch(identifier, "branch_test");ForwardBranch - Cabang tabel penerusan
Cabang tabel penerusan.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Deskriptor tabel. | ||
branch | string | Yes | Nama branch. |
Nilai kembali
Nama | Tipe | Deskripsi | Nilai contoh |
API ini tidak mengembalikan nilai. | |||
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan error 404. Ini berarti branch tidak ada. |
ForbiddenException | Permintaan REST mengembalikan error 403. Ini berarti pengguna saat ini tidak memiliki izin untuk menghapus branch saat ini. |
Contoh
Identifier identifier = Identifier.create("test_db", "test_table");
restApi.fastForward(identifier, "branch_test");ListBranches
Mengambil branch-branch tabel di database.
Resource Access Management
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Nilai contoh |
identifier | Yes | Deskriptor tabel. |
Nilai kembali
Nama | Type | Deskripsi | Nilai contoh |
| array | Daftar nama branch. | [test_branch1, test_branch2] |
branch | string | Nama tabel. | test_branch |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan error 404 jika tabel data tidak ada. |
ForbiddenException | Permintaan REST mengembalikan error 403 jika pengguna saat ini tidak memiliki izin untuk melihat tabel. |
Contoh
Identifier identifier = Identifier.create("test_db", "test_table");
List<String> branches = restApi.listBranches(identifier);API Partisi
ListPartitions - Dapatkan daftar partisi
Mengambil daftar partisi.
Resource Access Management
Parameter permintaan
Nama | Jenis | Wajib | Deskripsi | Contoh |
identifier | Yes | Deskriptor tabel. |
Nilai kembali
Nama | Type | Deskripsi | Contoh |
| array | Daftar detail partisi. | |
partition | string | Detail partisi. |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tabel data tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin pada tabel. |
Contoh
Identifier identifier = Identifier.create("test_db", "new_table");
List<Partition> tables = restApi.listPartitions(identifier);ListPartitionsPaged - Dapatkan daftar partisi terpaginasi
Mengambil daftar partisi terpaginasi. Anda dapat memfilter partisi berdasarkan nama.
Resource Access Management
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Contoh |
identifier | Yes | Identifier tabel. | ||
maxResults | string | No | Jumlah entri yang dikembalikan per halaman. Nilai efektif adalah minimum antara nilai yang ditentukan dan nilai default server. | 10 |
pageToken | string | No | Token paginasi dari respons sebelumnya. Biarkan kosong untuk permintaan pertama. Token NextPageToken kosong dalam respons menunjukkan tidak ada data lagi. | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
partitionNamePattern | string | No | Pola bergaya SQL untuk pencocokan wildcard sisi kanan nama partisi. Jika Anda tidak menentukan parameter ini, semua partisi akan dikembalikan. | year=2025% |
Nilai kembali
Nama | Tipe | Deskripsi | Contoh |
- | object | Data yang dikembalikan. | |
| array | Daftar detail partisi. | |
partition | Detail partisi. | ||
nextPageToken | string | Token paginasi. | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
Pengecualian
Type | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tabel data tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin pada tabel. |
Contoh
Ambil daftar semua detail partisi
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));Ambil daftar partisi terpaginasi dengan mencocokkan nama partisi
Identifier identifier = Identifier.create("test_db", "new_table"); PagedList<Partition> pagedPartitions = restApi.listPartitionsPaged(identifier, 10, pageToken, "year=2025%");
MarkDonePartitions - Tandai partisi sebagai selesai
Menandai partisi sebagai selesai.
Resource Access Management
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Contoh |
identifier | Yes | Deskriptor tabel. | ||
| array | Yes | Daftar partisi yang akan ditandai sebagai selesai. | |
partition | Map | Yes | Partisi yang akan ditandai sebagai selesai. | {"year":"1025", "month": "05"} |
Nilai kembali
Nama | Type | Deskripsi | Contoh |
API ini tidak memiliki nilai kembali. | |||
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tabel data tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin pada tabel. |
Contoh
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);Lihat API
ListViews - Kueri daftar tampilan
Mengambil daftar tampilan dari database.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Contoh |
databaseName | string | Yes | Nama database. | db_demo |
Nilai kembali
Nama | Tipe | Deskripsi | Contoh |
| array | Daftar nama tampilan. | |
view | string | Nama tampilan. | view_demo |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tampilan tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mendapatkan tampilan. |
Contoh
List<String> viewNames = api.listViews(name);ListViewsPaged - Lakukan kueri terpaginasi untuk daftar tampilan
Mengambil daftar tampilan terpaginasi dari database.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Contoh |
databaseName | string | Yes | Nama database. | db_demo |
maxResults | integer | No | Jumlah entri yang dikembalikan per halaman. Jika parameter ini tidak diatur, nilai konfigurasi default server akan digunakan. Jika Anda mengatur parameter ini ke nilai lebih besar dari 0, sistem akan menggunakan nilai yang lebih kecil antara pengaturan Anda dan nilai default server. | 10 |
pageToken | string | No | Posisi awal untuk kueri terpaginasi. Untuk kueri pertama, masukkan null. Untuk kueri berikutnya, masukkan nilai NextPageToken dari respons sebelumnya. Jika NextPageToken yang dikembalikan berupa string kosong, tidak ada data tambahan yang tersedia. | view_test |
viewNamePattern | string | No | Pola nama tampilan untuk pencocokan kabur sisi kanan bergaya LIKE SQL (%). Jika parameter ini tidak diatur atau kosong, semua tampilan akan dikembalikan. | view_tes% |
Nilai kembali
Nama | Tipe | Deskripsi | Contoh |
- | object | Data yang dikembalikan. | |
| array | Daftar nama tampilan. | [view_demo] |
view | string | Nama tampilan. | view_demo |
nextPageToken | string | Token untuk halaman berikutnya. | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tampilan tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mendapatkan tampilan. |
Contoh
Ambil daftar semua tabel
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));Ambil daftar tampilan terpaginasi yang sesuai dengan nama tampilan
String databaseName = "test_db"; PagedList<String> pagedViews = restApi.listViewsPaged(databaseName, 10, null, "test_v%");
ListViewDetailsPaged - Lakukan kueri terpaginasi untuk daftar detail tampilan
Mengambil daftar detail tampilan terpaginasi dari database.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Contoh |
databaseName | string | Yes | Nama database. | db_demo |
maxResults | integer | No | Jumlah entri yang dikembalikan per halaman. Jika parameter ini tidak diatur, nilai konfigurasi default server akan digunakan. Jika Anda mengatur parameter ini ke nilai lebih besar dari 0, sistem akan menggunakan nilai yang lebih kecil antara pengaturan Anda dan nilai default server. | 10 |
pageToken | string | No | Posisi awal untuk kueri terpaginasi. Untuk kueri pertama, masukkan null. Untuk kueri berikutnya, masukkan nilai NextPageToken dari respons sebelumnya. Jika NextPageToken yang dikembalikan berupa string kosong, tidak ada data tambahan yang tersedia. | view_test |
viewNamePattern | string | No | Pola nama tampilan untuk pencocokan kabur sisi kanan bergaya LIKE SQL (%). Jika parameter ini tidak diatur atau kosong, semua tampilan akan dikembalikan. | view_tes% |
Nilai kembali
Nama | Tipe | Deskripsi | Contoh |
- | PagedList | Data yang dikembalikan. | |
| array | Daftar detail tampilan. | [view_demo] |
viewDetail | Detail tampilan. | ||
nextPageToken | string | Token untuk halaman berikutnya. | 2cb472ec1bf84f8d92f9c4baa0d21c19aa |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tampilan tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mendapatkan detail tampilan. |
Contoh
Ambil daftar semua tampilan
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));Ambil daftar tampilan terpaginasi yang sesuai dengan nama tampilan
String databaseName = "test_db"; PagedList<GetViewResponse> pagedViewDetails = restApi.listViewDetailsPaged(databaseName, 10, null, "test_v%");
CreateView - Buat tampilan
Membuat tampilan di database.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Contoh |
identifier | Yes | Deskriptor tampilan. | ||
schema | Yes | Struktur tampilan. |
Pengecualian
Tipe | Deskripsi |
AlreadyExistsException | Permintaan REST mengembalikan 409, yang menunjukkan bahwa tampilan sudah ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk membuat tampilan. |
Contoh
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 - Dapatkan tampilan
Mengambil detail tampilan di database.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Contoh |
identifier | Yes | Deskriptor tampilan. |
Nilai kembali
Nama | Type | Deskripsi | Contoh |
id | string | ID tampilan. | |
name | string | Nama tampilan. | |
schema | Struktur tampilan. |
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa database tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mendapatkan database. |
Contoh
Identifier identifier = new Identifier(databaseName, "my_view");
GetViewResponse response = api.getView(identifier);DropView - Hapus tampilan
Menghapus tampilan dari database.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Contoh |
identifier | Yes | Deskriptor tampilan. |
Nilai kembali
Nama | Tipe | Deskripsi | Contoh |
API ini tidak memiliki parameter kembali. | |||
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa database tidak ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mendapatkan database. |
Contoh
Identifier identifier = new Identifier(databaseName, "my_view");
api.dropView(identifier);RenameView - Ubah nama tampilan
Mengubah nama tampilan di database.
Kontrol akses RAM
Parameter permintaan
Nama | Tipe | Wajib | Deskripsi | Contoh |
fromView | Yes | Deskriptor tampilan asli. | ||
toView | Yes | Deskriptor tampilan baru. |
Nilai kembali
Nama | Type | Deskripsi | Contoh |
API ini tidak memiliki parameter kembali. | |||
Pengecualian
Tipe | Deskripsi |
NoSuchResourceException | Permintaan REST mengembalikan 404, yang menunjukkan bahwa tampilan tidak ada. |
AlreadyExistsException | Permintaan REST mengembalikan 409, yang menunjukkan bahwa tampilan sudah ada. |
ForbiddenException | Permintaan REST mengembalikan 403, yang menunjukkan bahwa pengguna saat ini tidak memiliki izin untuk mengubah nama tampilan. |
Contoh
Identifier fromView = new Identifier(databaseName, "from_view");
Identifier toView = new Identifier(databaseName, "to_view");
api.renameView(fromView, toView);