

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mendukung Apache Cassandra membaca dan menulis tingkat konsistensi dan biaya terkait
<a name="consistency"></a>

Topik di bagian ini menjelaskan tingkat konsistensi Apache Cassandra mana yang didukung untuk operasi baca dan tulis di Amazon Keyspaces (untuk Apache Cassandra). 

**Topics**
+ [Tulis tingkat konsistensi](#WriteConsistency)
+ [Baca tingkat konsistensi](#ReadConsistency)
+ [Tingkat konsistensi yang tidak didukung](#UnsupportedConsistency)

## Tulis tingkat konsistensi
<a name="WriteConsistency"></a>

 Amazon Keyspaces mereplikasi semua operasi penulisan tiga kali di beberapa Availability Zone untuk daya tahan dan ketersediaan tinggi. Tulisan disimpan dengan tahan lama sebelum diakui menggunakan tingkat `LOCAL_QUORUM` konsistensi. Untuk setiap penulisan 1 KB, Anda ditagih 1 unit kapasitas tulis (WCU) untuk tabel menggunakan mode kapasitas yang disediakan atau 1 unit permintaan tulis (WRU) untuk tabel menggunakan mode sesuai permintaan.

Anda dapat menggunakan `cqlsh` untuk mengatur konsistensi untuk semua kueri dalam sesi saat ini untuk `LOCAL_QUORUM` menggunakan kode berikut.

```
CONSISTENCY LOCAL_QUORUM;
```

Untuk mengkonfigurasi tingkat konsistensi secara terprogram, Anda dapat mengatur konsistensi dengan driver klien Cassandra yang sesuai. Misalnya, driver Java versi 4.x memungkinkan Anda untuk mengatur tingkat konsistensi dalam `app config` file seperti yang ditunjukkan di bawah ini.

```
basic.request.consistency = LOCAL_QUORUM
```

Jika Anda menggunakan driver Java Cassandra versi 3.x, Anda dapat menentukan tingkat konsistensi untuk sesi dengan menambahkan `.withQueryOptions(new QueryOptions().setConsistencyLevel(ConsistencyLevel.LOCAL_QUORUM)` seperti yang ditunjukkan pada contoh kode berikut.

```
Session session = Cluster.builder()  
                      .addContactPoint(endPoint)  
                      .withPort(portNumber)  
                      .withAuthProvider(new SigV4AuthProvider("us-east-1"))  
                      .withSSL()
                      .withQueryOptions(new QueryOptions().setConsistencyLevel(ConsistencyLevel.LOCAL_QUORUM)
                      .build()  
                      .connect();
```

Untuk mengonfigurasi tingkat konsistensi untuk operasi penulisan tertentu, Anda dapat menentukan konsistensi saat memanggil `QueryBuilder.insertInto` dengan `setConsistencyLevel` argumen saat Anda menggunakan driver Java.

## Baca tingkat konsistensi
<a name="ReadConsistency"></a>

Amazon Keyspaces mendukung tiga tingkat konsistensi baca:`ONE`,`LOCAL_ONE`, dan. `LOCAL_QUORUM` Selama `LOCAL_QUORUM` membaca, Amazon Keyspaces mengembalikan respons yang mencerminkan pembaruan terbaru dari semua operasi penulisan yang berhasil sebelumnya. Menggunakan tingkat konsistensi `ONE` atau `LOCAL_ONE` dapat meningkatkan kinerja dan ketersediaan permintaan baca Anda, tetapi responsnya mungkin tidak mencerminkan hasil penulisan yang baru saja selesai.

Untuk setiap 4 KB membaca menggunakan `ONE` atau `LOCAL_ONE` konsistensi, Anda ditagih 0,5 unit kapasitas baca (RCUs) untuk tabel yang menggunakan mode kapasitas yang disediakan atau 0,5 unit permintaan baca (RRUs) untuk tabel yang menggunakan mode sesuai permintaan. Untuk setiap pembacaan 4 KB menggunakan `LOCAL_QUORUM` konsistensi, Anda ditagih 1 unit kapasitas baca (RCU) untuk tabel menggunakan mode kapasitas yang disediakan atau 1 unit permintaan baca (RRU) untuk tabel menggunakan mode sesuai permintaan. 


**Penagihan berdasarkan konsistensi baca dan mode throughput kapasitas baca per tabel untuk setiap 4 KB pembacaan**  

| Tingkat konsistensi | Disediakan | Sesuai permintaan | 
| --- | --- | --- | 
| ONE | 0,5 RCUs | 0,5 RRUs | 
| LOCAL\$1ONE | 0,5 RCUs | 0,5 RRUs | 
| LOCAL\$1QUORUM | 1 RCU | 1 RRU | 

Untuk menentukan konsistensi yang berbeda untuk operasi baca, panggil `QueryBuilder.select` dengan `setConsistencyLevel` argumen saat Anda menggunakan driver Java.

## Tingkat konsistensi yang tidak didukung
<a name="UnsupportedConsistency"></a>

Tingkat konsistensi berikut tidak didukung oleh Amazon Keyspaces dan akan menghasilkan pengecualian.


**Tingkat konsistensi yang tidak didukung**  

| Apache Cassandra | Amazon Keyspaces | 
| --- | --- | 
| EACH\$1QUORUM | Tidak didukung | 
| QUORUM | Tidak didukung | 
| ALL  | Tidak didukung | 
| TWO | Tidak didukung | 
| THREE | Tidak didukung | 
| ANY | Tidak didukung | 
| SERIAL | Tidak didukung | 
| LOCAL\$1SERIAL | Tidak didukung | 