All Products
Search
Document Center

OpenLake:Gunakan API metadata

Last Updated:Feb 01, 2026

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

Catatan

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListDatabases

List

*All resources

*

None

None

Nilai kembali

Nama

Tipe

Deskripsi

Nilai contoh

  • databases

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListDatabases

List

*All resources

*

None

None

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.

  • elements

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:CreateDatabase

*All resources

*

None

None

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:GetDatabase

Get

*All resources

*

None

None

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:DropDatabase

*All resources

*

None

None

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:AlterDatabase

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

name

string

Yes

Nama.

db_demo

  • removals

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:CreateTable

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

identifier

Identifier

Yes

Identifier tabel.

schema

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:DropTable

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

identifier

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:RenameTable

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

fromIdentifier

Identifier

Yes

Identifier tabel asli.

toIdentifier

Identifier

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:AlterTable

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

identifier

Identifier

Yes

Deskriptor tabel.

  • changes

array

Yes

Daftar informasi perubahan tabel.

schemaChange

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:GetTable

Get

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

identifier

Identifier

Yes

Identifier tabel.

Nilai kembali

Nama

Tipe

Deskripsi

Nilai contoh

getTableResponse

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListTables

List

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

databaseName

string

Yes

Nama database.

test_db

Nilai kembali

Nama

Tipe

Deskripsi

Nilai contoh

  • tables

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListTables

List

*All resources

*

None

None

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.

  • pagedTables

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListTableDetails

List

*All resources

*

None

None

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.

  • pagedTableDetails

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:GetTableSnapshot

Get

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

identifier

Identifier

Yes

Identifier tabel.

Nilai kembali

Nama

Tipe

Deskripsi

Nilai contoh

TableSnapshot

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

Operasi

Tingkat akses

Jenis sumber daya

Kunci kondisi

Operasi terkait

dlf:GetVersionSnapshot

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

identifier

Identifier

Yes

Identifier tabel.

version

String

Yes

Informasi versi.

"Latest", "EARLIEST", "1"

Nilai kembali

Nama

Tipe

Deskripsi

Nilai contoh

Snapshot

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListSnapshots

List

*All resources

*

None

None

Parameter permintaan

Nama

Jenis

Wajib

Deskripsi

Nilai contoh

identifier

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

  • elements

array

Daftar snapshot tabel.

snapshot

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:RollbackTable

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

identifier

Identifier

Yes

Deskriptor tabel.

instant

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:CreateBranch

create

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

identifier

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:DropBranch

*All resources

*

None

None

Parameter permintaan

Nama

Jenis

Wajib

Deskripsi

Nilai contoh

identifier

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ForwardBranch

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

identifier

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListBranches

list

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Nilai contoh

identifier

Identifier

Yes

Deskriptor tabel.

Nilai kembali

Nama

Type

Deskripsi

Nilai contoh

  • branches

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListPartitions

list

*All resources

*

None

None

Parameter permintaan

Nama

Jenis

Wajib

Deskripsi

Contoh

identifier

Identifier

Yes

Deskriptor tabel.

Nilai kembali

Nama

Type

Deskripsi

Contoh

  • partitions

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListPartitions

list

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Contoh

identifier

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.

  • pagedPartitions

array

Daftar detail partisi.

partition

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:MarkDonePartitions

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Contoh

identifier

Identifier

Yes

Deskriptor tabel.

  • partitions

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListViews

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Contoh

databaseName

string

Yes

Nama database.

db_demo

Nilai kembali

Nama

Tipe

Deskripsi

Contoh

  • views

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListViews

*All resources

*

None

None

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.

  • elements

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:ListViewDetails

*All resources

*

None

None

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.

  • elements

array

Daftar detail tampilan.

[view_demo]

viewDetail

GetViewResponse

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:CreateView

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Contoh

identifier

Identifier

Yes

Deskriptor tampilan.

schema

ViewSchema

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:GetView

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Contoh

identifier

Identifier

Yes

Deskriptor tampilan.

Nilai kembali

Nama

Type

Deskripsi

Contoh

id

string

ID tampilan.

name

string

Nama tampilan.

schema

ViewSchema

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:DropView

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Contoh

identifier

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

Operasi

Tingkat akses

Jenis resource

Kunci kondisi

Operasi terkait

dlf:RenameView

*All resources

*

None

None

Parameter permintaan

Nama

Tipe

Wajib

Deskripsi

Contoh

fromView

Identifier

Yes

Deskriptor tampilan asli.

toView

Identifier

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);