Panggil operasi ComputeSplitsBySize untuk membagi data tabel menjadi split logis dengan ukuran yang kira-kira sama. Tanggapan mencakup titik pemisah antar-split dan host tempat setiap split berada. Operasi ini umumnya digunakan untuk menentukan rencana eksekusi, seperti rencana konkurensi, bagi Mesin komputasi.
Untuk informasi selengkapnya, lihat ComputeSplitPointsBySize.
Prasyarat
-
Client telah diinisialisasi. Untuk informasi selengkapnya, lihat Inisialisasi client Tablestore.
-
Tabel data telah dibuat dan data telah dituliskan ke dalamnya. Untuk informasi selengkapnya, lihat Buat tabel data.
Operasi API
/**
* Secara logis membagi data dalam tabel menjadi beberapa split yang ukurannya mendekati ukuran yang ditentukan, lalu mengembalikan titik pemisah antar-split dan memberikan informasi tentang host tempat split tersebut berada.
* Dalam sebagian besar kasus, operasi ini digunakan untuk menentukan rencana eksekusi seperti rencana konkurensi bagi Mesin komputasi.
* @api
* @param [] $request Parameter permintaan.
* @return [] Tanggapan.
* @throws OTSClientException Pengecualian yang dilemparkan ketika terjadi kesalahan parameter atau server Tablestore mengembalikan kesalahan verifikasi.
* @throws OTSServerException Pengecualian yang dilemparkan 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 perkiraan setiap split. Satuan: 100 MB. |
Sintaksis permintaan
$result = $client->ComputeSplitsBySize([
'table_name' => '<string>', // Wajib. Nama tabel data.
'split_size' => <integer> // Wajib. Ukuran perkiraan setiap split.
]); Informasi tanggapan
Parameter tanggapan
Parameter | Deskripsi |
consumed | Unit kapasitas (CUs) yang dikonsumsi oleh operasi ini. capacity_unit mencakup CU baca dan tulis yang dikonsumsi:
|
primary_key_schema | Skema primary key dari tabel data, yang sesuai dengan skema yang didefinisikan saat pembuatan tabel. |
splits | Titik pemisah antar-split. Setiap split berisi bidang-bidang berikut:
|
Sintaksis tanggapan
[
'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
Contoh berikut membagi data tabel menjadi split logis dengan ukuran masing-masing sekitar 100 MB (split_size = 1), lalu mencetak lokasi dan rentang primary key setiap split.
$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']);
}