Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Amazon Keyspaces: Cara kerjanya

Mode fokus
Amazon Keyspaces: Cara kerjanya - Amazon Keyspaces (untuk Apache Cassandra)

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

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

Amazon Keyspaces menghapus overhead administratif pengelolaan Cassandra. Untuk memahami alasannya, akan sangat membantu untuk memulai dengan arsitektur Cassandra dan kemudian membandingkannya dengan Amazon Keyspaces.

Arsitektur tingkat tinggi: Apache Cassandra vs Amazon Keyspaces

Apache Cassandra tradisional digunakan dalam sebuah cluster yang terdiri dari satu atau lebih node. Anda bertanggung jawab untuk mengelola setiap node dan menambahkan serta menghapus node sebagai skala cluster Anda.

Program klien mengakses Cassandra dengan menghubungkan ke salah satu node dan mengeluarkan pernyataan Cassandra Query Language (). CQL CQLmirip denganSQL, bahasa populer yang digunakan dalam database relasional. Meskipun Cassandra bukan database relasional, CQL menyediakan antarmuka yang akrab untuk query dan memanipulasi data di Cassandra.

Diagram berikut menunjukkan cluster Apache Cassandra sederhana, yang terdiri dari empat node.

Diagram cluster Apache Cassandra yang berisi 4 node dan berinteraksi dengan aplikasi klien.

Penyebaran Cassandra produksi mungkin terdiri dari ratusan node, berjalan pada ratusan komputer fisik di satu atau lebih pusat data fisik. Hal ini dapat menyebabkan beban operasional bagi pengembang aplikasi yang perlu menyediakan, menambal, dan mengelola server selain menginstal, memelihara, dan mengoperasikan perangkat lunak.

Dengan Amazon Keyspaces (untuk Apache Cassandra), Anda tidak perlu menyediakan, menambal, atau mengelola server, sehingga Anda dapat fokus membangun aplikasi yang lebih baik. Amazon Keyspaces menawarkan dua mode kapasitas throughput untuk membaca dan menulis: sesuai permintaan dan disediakan. Anda dapat memilih mode kapasitas throughput tabel Anda untuk mengoptimalkan harga pembacaan dan penulisan berdasarkan prediktabilitas dan variabilitas beban kerja Anda.

Dengan mode on-demand, Anda hanya membayar untuk membaca dan menulis bahwa aplikasi Anda benar-benar bekerja. Anda tidak perlu menentukan kapasitas throughput tabel Anda terlebih dahulu. Amazon Keyspaces mengakomodasi lalu lintas aplikasi Anda hampir secara instan saat naik atau turun, menjadikannya pilihan yang baik untuk aplikasi dengan lalu lintas yang tidak terduga.

Mode kapasitas yang disediakan membantu Anda mengoptimalkan harga throughput jika Anda memiliki lalu lintas aplikasi yang dapat diprediksi dan dapat memperkirakan persyaratan kapasitas tabel Anda sebelumnya. Dengan mode kapasitas yang disediakan, Anda menentukan jumlah pembacaan dan penulisan per detik yang Anda harapkan untuk dilakukan aplikasi Anda. Anda dapat menambah dan mengurangi kapasitas yang disediakan untuk tabel Anda secara otomatis dengan mengaktifkan penskalaan otomatis.

Anda dapat mengubah mode kapasitas tabel Anda sekali per hari saat Anda mempelajari lebih lanjut tentang pola lalu lintas beban kerja Anda, atau jika Anda berharap memiliki ledakan lalu lintas yang besar, seperti dari peristiwa besar yang Anda antisipasi akan mendorong banyak lalu lintas tabel. Untuk informasi selengkapnya tentang penyediaan kapasitas baca dan tulis, lihat. Konfigurasikan mode kapasitas baca/tulis di Amazon Keyspaces

Amazon Keyspaces (untuk Apache Cassandra) menyimpan tiga salinan data Anda di beberapa Availability Zone untuk daya tahan dan ketersediaan tinggi. Selain itu, Anda mendapat manfaat dari pusat data dan arsitektur jaringan yang dibangun untuk memenuhi persyaratan organisasi yang paling sensitif terhadap keamanan. Enkripsi saat istirahat diaktifkan secara otomatis saat Anda membuat tabel Amazon Keyspaces baru dan semua koneksi klien memerlukan Transport Layer Security ()TLS. Fitur AWS keamanan tambahan termasuk pemantauan AWS Identity and Access Management, dan titik akhir virtual private cloud (VPC). Untuk ikhtisar semua fitur keamanan yang tersedia, lihatKeamanan di Amazon Keyspaces (untuk Apache Cassandra).

Diagram berikut menunjukkan arsitektur Amazon Keyspaces.

Diagram Amazon Keyspaces berinteraksi dengan aplikasi klien.

Program klien mengakses Amazon Keyspaces dengan menghubungkan ke titik akhir yang telah ditentukan (nama host dan nomor port) dan mengeluarkan pernyataan. CQL Untuk daftar titik akhir yang tersedia, lihatTitik akhir layanan untuk Amazon Keyspaces.

Model data Cassandra

Cara Anda memodelkan data untuk kasus bisnis Anda sangat penting untuk mencapai kinerja optimal dari Amazon Keyspaces. Model data yang buruk dapat menurunkan kinerja secara signifikan.

Meskipun CQL terlihat mirip denganSQL, backend Cassandra dan database relasional sangat berbeda dan harus didekati secara berbeda. Berikut ini adalah beberapa masalah yang lebih signifikan untuk dipertimbangkan:

Penyimpanan

Anda dapat memvisualisasikan data Cassandra Anda dalam tabel, dengan setiap baris mewakili catatan dan setiap kolom bidang dalam catatan itu.

Desain tabel: Kueri terlebih dahulu

Tidak ada JOIN s diCQL. Oleh karena itu, Anda harus mendesain tabel Anda dengan bentuk data Anda dan bagaimana Anda perlu mengaksesnya untuk kasus penggunaan bisnis Anda. Ini dapat mengakibatkan de-normalisasi dengan data duplikat. Anda harus mendesain setiap tabel Anda secara khusus untuk pola akses tertentu.

Partisi

Data Anda disimpan dalam partisi pada disk. Jumlah partisi data Anda disimpan dan bagaimana itu didistribusikan di seluruh partisi ditentukan oleh kunci partisi Anda. Bagaimana Anda mendefinisikan kunci partisi Anda dapat memiliki dampak yang signifikan pada kinerja kueri Anda. Untuk praktik terbaik, lihat Cara menggunakan kunci partisi secara efektif di Amazon Keyspaces.

Kunci utama

Di Cassandra, data disimpan sebagai pasangan kunci-nilai. Setiap tabel Cassandra harus memiliki kunci utama, yang merupakan kunci unik untuk setiap baris dalam tabel. Kunci utama adalah gabungan dari kunci partisi yang diperlukan dan kolom pengelompokan opsional. Data yang terdiri dari kunci utama harus unik di semua catatan dalam tabel.

  • Kunci partisi — Bagian kunci partisi dari kunci utama diperlukan dan menentukan partisi mana dari cluster Anda tempat data disimpan. Kunci partisi dapat berupa kolom tunggal, atau dapat berupa nilai majemuk yang terdiri dari dua atau lebih kolom. Anda akan menggunakan kunci partisi majemuk jika kunci partisi kolom tunggal akan menghasilkan partisi tunggal atau sangat sedikit partisi yang memiliki sebagian besar data dan dengan demikian menanggung sebagian besar operasi I/O disk.

  • Kolom pengelompokan - Bagian kolom pengelompokan opsional dari kunci utama Anda menentukan bagaimana data dikelompokkan dan diurutkan dalam setiap partisi. Jika Anda menyertakan kolom pengelompokan di kunci utama Anda, kolom pengelompokan dapat memiliki satu atau beberapa kolom. Jika ada beberapa kolom di kolom pengelompokan, urutan penyortiran ditentukan oleh urutan kolom yang tercantum di kolom pengelompokan, dari kiri ke kanan.

Untuk informasi selengkapnya tentang Tidak ada SQL desain dan Amazon Keyspaces, lihat. Perbedaan utama dan prinsip desain desain NoSQL Untuk informasi selengkapnya tentang Amazon Keyspaces dan pemodelan data, lihat. Praktik terbaik pemodelan data: rekomendasi untuk merancang model data

Mengakses Amazon Keyspaces dari aplikasi

Amazon Keyspaces (untuk Apache Cassandra) mengimplementasikan Apache Cassandra Query Language (CQL)API, sehingga Anda dapat menggunakan dan driver Cassandra yang sudah Anda gunakan. CQL Memperbarui aplikasi Anda semudah memperbarui driver atau cqlsh konfigurasi Cassandra Anda untuk menunjuk ke titik akhir layanan Amazon Keyspaces. Untuk informasi selengkapnya tentang kredensil yang diperlukan, lihat. Membuat dan mengonfigurasi AWS kredensional untuk Amazon Keyspaces

catatan

Untuk membantu Anda memulai, Anda dapat menemukan contoh end-to-end kode untuk menghubungkan ke Amazon Keyspaces dengan menggunakan berbagai driver klien Cassandra di repositori contoh kode Amazon Keyspaces. GitHub

Pertimbangkan program Python berikut, yang menghubungkan ke cluster Cassandra dan menanyakan tabel.

from cassandra.cluster import Cluster #TLS/SSL configuration goes here ksp = 'MyKeyspace' tbl = 'WeatherData' cluster = Cluster(['NNN.NNN.NNN.NNN'], port=NNNN) session = cluster.connect(ksp) session.execute('USE ' + ksp) rows = session.execute('SELECT * FROM ' + tbl) for row in rows: print(row)

Untuk menjalankan program yang sama terhadap Amazon Keyspaces, Anda perlu:

  • Tambahkan titik akhir dan port cluster: Misalnya, host dapat diganti dengan titik akhir layanan, seperti cassandra.us-east-2.amazonaws.com dan nomor port dengan:. 9142

  • Tambahkan SSL konfigurasiTLS/: Untuk informasi selengkapnya tentang menambahkan SSL konfigurasiTLS/untuk terhubung ke Amazon Keyspaces dengan menggunakan driver Python klien Cassandra, lihat. Menggunakan driver klien Cassandra Python untuk mengakses Amazon Keyspaces secara terprogram

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.