Anda dapat memanggil operasi ComputeSplitsBySize untuk membagi data dalam tabel menjadi beberapa pemisahan logis yang ukurannya mendekati nilai yang ditentukan. Informasi mengenai titik-titik pemisah di antara pemisahan dan host tempat pemisahan tersebut berada akan dikembalikan. Operasi ini biasanya digunakan untuk menentukan rencana eksekusi, seperti rencana konkurensi untuk mesin komputasi.
Untuk informasi lebih lanjut, lihat ComputeSplitPointsBySize.
Prasyarat
Sebuah instance OTSClient telah diinisialisasi. Untuk informasi lebih lanjut, lihat Inisialisasi Instance OTSClient.
Sebuah tabel data telah dibuat dan data telah ditulis ke tabel tersebut. Untuk informasi lebih lanjut, lihat Buat Tabel Data.
Operasi API
/**
* Pisahkan secara logis data dalam tabel menjadi beberapa pemisahan yang ukurannya mendekati ukuran yang ditentukan, dan kembalikan titik-titik pemisah di antara pemisahan serta prompt tentang host tempat pemisahan tersebut berada.
* Dalam kebanyakan kasus, operasi ini digunakan untuk menentukan rencana eksekusi seperti rencana konkurensi untuk mesin komputasi.
* @api
* @param [] $request Parameter permintaan.
* @return [] Respons.
* @throws OTSClientException Pengecualian yang dilempar ketika terjadi kesalahan parameter atau server Tablestore mengembalikan kesalahan verifikasi.
* @throws OTSServerException Pengecualian yang dilempar ketika server Tablestore mengembalikan kesalahan.
*/
public function computeSplitPointsBySize(array $request)
Parameter
Informasi permintaan
Parameter permintaan
Parameter | Deskripsi |
table_name | Nama tabel data. |
split_size | Ukuran yang ditentukan untuk setiap pemisahan. Satuan: 100 MB. |
Sintaks permintaan
$result = $client->ComputeSplitsBySize([
'table_name' => '<string>', // Tentukan nama tabel data. Parameter ini wajib.
'split_size' => <integer> // Tentukan ukuran setiap pemisahan. Parameter ini wajib.
]); Informasi respons
Parameter respons
Parameter | Deskripsi |
consumed | Jumlah unit kapasitas (CUs) yang dikonsumsi oleh operasi ini. capacity_unit menunjukkan jumlah CUs baca dan tulis yang dikonsumsi.
|
primary_key_schema | Skema kunci utama untuk tabel data, yang sama dengan skema yang ditentukan saat tabel data dibuat. |
splits | Titik-titik pemisah di antara pemisahan. Parameter ini mencakup item konfigurasi berikut:
|
Sintaks respons
[
'consumed' => [
'capacity_unit' => [
'read' => <integer>,
'write' => <integer>
]
],
'primary_key_schema' => [
['<string>', <PrimaryKeyType>],
['<string>', <PrimaryKeyType>, <PrimaryKeyOption>]
]
'splits' => [
[
'lower_bound' => [
['<string>', <PrimaryKeyValue>, <PrimaryKeyType>],
['<string>', <PrimaryKeyValue>, <PrimaryKeyType>]
],
'upper_bound' => [
['<string>', <PrimaryKeyValue>, <PrimaryKeyType>],
['<string>', <PrimaryKeyValue>, <PrimaryKeyType>]
],
'location' => '<string>'
],
// ...
]
] Contoh
Berikut adalah contoh kode sampel yang menunjukkan cara membagi data dalam tabel menjadi beberapa pemisahan yang ukurannya mendekati 100 MB:
$result = $client->ComputeSplitsBySize([
'table_name' => 'MyTable',
'split_size' => 1
]);
foreach($result['splits'] as $split) {
print_r($split['location']);
print_r($split['lower_bound']);
print_r($split['upper_bound']);
}