Gunakan metode describeTable dalam Tablestore SDK untuk Java guna mengambil skema, konfigurasi, dan metadata tabel data.
Prasyarat
Client telah diinisialisasi. Untuk informasi selengkapnya, lihat Inisialisasi client Tablestore.
Metode
public DescribeTableResponse describeTable(DescribeTableRequest request) throws TableStoreException, ClientException
Kode contoh
Contoh berikut mengambil informasi tentang tabel data bernama test_table, termasuk skemanya, konfigurasi, pengaturan Stream, pengaturan enkripsi, throughput baca/tulis yang dicadangkan, serta indeks sekundernya.
public static void describeTableExample(SyncClient client) {
DescribeTableRequest request = new DescribeTableRequest("test_table");
DescribeTableResponse response = client.describeTable(request);
// Kueri informasi skema tabel data.
TableMeta tableMeta = response.getTableMeta();
System.out.println("* Nama tabel data: " + tableMeta.getTableName());
System.out.println("* Informasi kunci primer");
for(PrimaryKeySchema primaryKeySchema : tableMeta.getPrimaryKeyList()) {
System.out.println(primaryKeySchema);
}
System.out.println("* Informasi kolom yang telah ditentukan");
for(DefinedColumnSchema definedColumnSchema : tableMeta.getDefinedColumnsList()) {
System.out.println(definedColumnSchema);
}
// Kueri informasi konfigurasi tabel data.
TableOptions tableOptions = response.getTableOptions();
System.out.println("* Informasi konfigurasi tabel");
System.out.println("Versi maksimum: " + tableOptions.getMaxVersions());
System.out.println("Time to live: " + tableOptions.getTimeToLive());
System.out.println("Offset versi maksimum: " + tableOptions.getMaxTimeDeviation());
System.out.println("Apakah pembaruan diizinkan: " + tableOptions.getAllowUpdate());
// Kueri informasi Stream tabel data.
StreamDetails streamDetails = response.getStreamDetails();
System.out.println("* Apakah Stream diaktifkan: " + streamDetails.isEnableStream());
if(streamDetails.isEnableStream())
System.out.println("Periode validitas Stream: " + streamDetails.getExpirationTime());
// Kueri pengaturan enkripsi tabel data.
SSEDetails sseDetails = response.getSseDetails();
System.out.println("* Apakah enkripsi diaktifkan untuk tabel data: " + sseDetails.isEnable());
if(sseDetails.isEnable())
System.out.println("Metode enkripsi: " + sseDetails.getKeyType());
// Kueri throughput baca/tulis yang dicadangkan untuk tabel data.
ReservedThroughputDetails reservedThroughputDetails = response.getReservedThroughputDetails();
System.out.println("* Throughput baca/tulis yang dicadangkan");
System.out.println("Throughput baca yang dicadangkan: " + reservedThroughputDetails.getCapacityUnit().getReadCapacityUnit());
System.out.println("Throughput tulis yang dicadangkan: " + reservedThroughputDetails.getCapacityUnit().getWriteCapacityUnit());
// Kueri informasi indeks sekunder.
for(IndexMeta indexMeta : response.getIndexMeta()) {
System.out.println("* Nama indeks sekunder: " + indexMeta.getIndexName());
System.out.println("Kolom kunci primer: " + indexMeta.getPrimaryKeyList().toString());
System.out.println("Kolom yang telah ditentukan: " + indexMeta.getDefinedColumnsList().toString());
System.out.println("Tipe indeks sekunder: " + indexMeta.getIndexType());
System.out.println("Mode pembaruan indeks sekunder: " + indexMeta.getIndexUpdateMode());
}
}