Buat tabel baru dengan penskalaan otomatis - 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.

Buat tabel baru dengan penskalaan otomatis

Saat membuat tabel Amazon Keyspaces baru, Anda dapat secara otomatis mengaktifkan penskalaan otomatis untuk kapasitas tulis atau baca tabel. Hal ini memungkinkan Amazon Keyspaces menghubungi Application Auto Scaling atas nama Anda untuk mendaftarkan tabel sebagai target yang dapat diskalakan dan menyesuaikan kapasitas tulis atau baca yang disediakan.

Untuk informasi selengkapnya tentang cara membuat tabel Multi-wilayah dan mengonfigurasi pengaturan penskalaan otomatis yang berbeda untuk replika tabel, lihat. Buat tabel Multi-wilayah dalam mode yang disediakan dengan penskalaan otomatis di Amazon Keyspaces

catatan

Penskalaan otomatis Amazon Keyspaces memerlukan keberadaan peran terkait layanan (AWSServiceRoleForApplicationAutoScaling_CassandraTable) yang melakukan tindakan penskalaan otomatis atas nama Anda. Peran ini dibuat secara otomatis untuk Anda. Untuk informasi selengkapnya, lihat Menggunakan peran terkait layanan untuk Amazon Keyspaces.

Console
Buat tabel baru dengan penskalaan otomatis diaktifkan menggunakan konsol
  1. Masuk ke AWS Management Console, dan buka konsol Amazon Keyspaces di https://console.aws.amazon.com/keyspaces/ rumah.

  2. Di panel navigasi, pilih Tabel, lalu pilih Buat tabel.

  3. Pada halaman Buat tabel di bagian Rincian tabel, pilih ruang kunci dan berikan nama untuk tabel baru.

  4. Di bagian Kolom, buat skema untuk tabel Anda.

  5. Di bagian kunci Primer, tentukan kunci utama tabel dan pilih kolom pengelompokan opsional.

  6. Di bagian Pengaturan tabel, pilih Sesuaikan pengaturan.

  7. Lanjutkan untuk membaca/menulis pengaturan kapasitas.

  8. Untuk mode Kapasitas, pilih Disediakan.

  9. Di bagian Baca kapasitas, konfirmasikan bahwa Skala dipilih secara otomatis.

    Pada langkah ini, Anda memilih unit kapasitas baca minimum dan maksimum untuk tabel, serta pemanfaatan target.

    • Unit kapasitas minimum — Masukkan nilai untuk tingkat throughput minimum yang harus selalu siap didukung oleh tabel. Nilai harus antara 1 dan kuota throughput maksimum per detik untuk akun Anda (40.000 secara default).

    • Unit kapasitas maksimum — Masukkan jumlah maksimum throughput yang ingin Anda sediakan untuk tabel. Nilai harus antara 1 dan kuota throughput maksimum per detik untuk akun Anda (40.000 secara default).

    • Target pemanfaatan — Masukkan tingkat pemanfaatan target antara 20% dan 90%. Ketika lalu lintas melebihi tingkat pemanfaatan target yang ditentukan, kapasitas secara otomatis ditingkatkan. Ketika lalu lintas jatuh di bawah target yang ditentukan, secara otomatis diperkecil lagi.

    catatan

    Untuk mempelajari lebih lanjut tentang kuota default untuk akun Anda dan cara meningkatkannya, lihatKuota untuk Amazon Keyspaces (untuk Apache Cassandra).

  10. Di bagian Tulis kapasitas, pilih pengaturan yang sama seperti yang ditentukan pada langkah sebelumnya untuk kapasitas baca, atau konfigurasikan nilai kapasitas secara manual.

  11. Pilih Buat tabel. Tabel Anda dibuat dengan parameter penskalaan otomatis yang ditentukan.

Cassandra Query Language (CQL)

Buat tabel baru dengan penskalaan otomatis Amazon Keyspaces menggunakan CQL

Untuk mengonfigurasi pengaturan penskalaan otomatis untuk tabel secara terprogram, Anda menggunakan AUTOSCALING_SETTINGS pernyataan yang berisi parameter untuk penskalaan otomatis Amazon Keyspaces. Parameter menentukan kondisi yang mengarahkan Amazon Keyspaces untuk menyesuaikan throughput yang disediakan tabel Anda, dan tindakan opsional tambahan apa yang harus diambil. Dalam contoh ini, Anda menentukan pengaturan penskalaan otomatis untuk mytable.

Kebijakan tersebut berisi elemen berikut:

  • AUTOSCALING_SETTINGS— Menentukan apakah Amazon Keyspaces diizinkan untuk menyesuaikan kapasitas throughput atas nama Anda. Nilai-nilai berikut diperlukan:

    • provisioned_write_capacity_autoscaling_update:

      • minimum_units

      • maximum_units

    • provisioned_read_capacity_autoscaling_update:

      • minimum_units

      • maximum_units

    • scaling_policy— Amazon Keyspaces mendukung kebijakan pelacakan target. Untuk menentukan kebijakan pelacakan target, Anda mengonfigurasi parameter berikut.

      • target_value— Penskalaan otomatis Amazon Keyspaces memastikan bahwa rasio kapasitas yang dikonsumsi terhadap kapasitas yang disediakan tetap pada atau mendekati nilai ini. Anda mendefinisikan target_value sebagai persentase.

      • disableScaleIn: (Opsional) A boolean yang menentukan scale-in apakah dinonaktifkan atau diaktifkan untuk tabel. Parameter ini dinonaktifkan secara default. Untuk menghidupkanscale-in, atur boolean nilainya keFALSE. Ini berarti bahwa kapasitas secara otomatis diperkecil untuk tabel atas nama Anda.

      • scale_out_cooldown— Aktivitas scale-out meningkatkan throughput yang disediakan dari tabel Anda. Untuk menambahkan periode cooldown untuk aktivitas scale-out, tentukan nilai, dalam detik, untuk. scale_out_cooldown Jika Anda tidak menentukan nilai, nilai defaultnya adalah 0. Untuk informasi selengkapnya tentang pelacakan target dan periode cooldown, lihat Kebijakan Penskalaan Pelacakan Target di Panduan Pengguna Application Auto Scaling.

      • scale_in_cooldown— Aktivitas scale-in mengurangi throughput yang disediakan dari tabel Anda. Untuk menambahkan periode cooldown untuk aktivitas penskalaan, tentukan nilai, dalam detik, untuk. scale_in_cooldown Jika Anda tidak menentukan nilai, nilai defaultnya adalah 0. Untuk informasi selengkapnya tentang pelacakan target dan periode cooldown, lihat Kebijakan Penskalaan Pelacakan Target di Panduan Pengguna Application Auto Scaling.

catatan

Untuk lebih memahami cara kerja target_value, misalkan Anda memiliki sebuah tabel dengan pengaturan throughput yang disediakan sebanyak 200 unit kapasitas tulis. Anda memutuskan untuk membuat kebijakan penskalaan untuk tabel ini, dengan target_value sebesar 70 persen.

Sekarang anggaplah Anda mulai mendorong lalu lintas tulis ke tabel sehingga throughput tulis aktual adalah sebesar 150 unit kapasitas. consumed-to-provisioned Rasionya sekarang (150/200), atau 75 persen. Rasio ini melebihi target Anda, jadi penskalaan otomatis meningkatkan kapasitas tulis yang disediakan menjadi 215 sehingga rasionya (150/215), atau 69,77 persen—sedekat mungkin dengan Anda, tetapi tidak melebihi itu. target_value

Untuk mytable, Anda mengatur TargetValue kapasitas baca dan tulis hingga 50 persen. Penskalaan otomatis Amazon Keyspaces menyesuaikan throughput yang disediakan tabel dalam kisaran 5-10 unit kapasitas sehingga rasionya tetap pada atau mendekati 50 persen. consumed-to-provisioned Untuk kapasitas baca, Anda mengatur nilai untuk ScaleOutCooldown dan ScaleInCooldown ke 60 detik.

Anda dapat menggunakan pernyataan berikut untuk membuat tabel Amazon Keyspaces baru dengan penskalaan otomatis diaktifkan.

CREATE TABLE mykeyspace.mytable(pk int, ck int, PRIMARY KEY (pk, ck)) WITH CUSTOM_PROPERTIES = { 'capacity_mode': { 'throughput_mode': 'PROVISIONED', 'read_capacity_units': 1, 'write_capacity_units': 1 } } AND AUTOSCALING_SETTINGS = { 'provisioned_write_capacity_autoscaling_update': { 'maximum_units': 10, 'minimum_units': 5, 'scaling_policy': { 'target_tracking_scaling_policy_configuration': { 'target_value': 50 } } }, 'provisioned_read_capacity_autoscaling_update': { 'maximum_units': 10, 'minimum_units': 5, 'scaling_policy': { 'target_tracking_scaling_policy_configuration': { 'target_value': 50, 'scale_in_cooldown': 60, 'scale_out_cooldown': 60 } } } };
CLI

Buat tabel baru dengan penskalaan otomatis Amazon Keyspaces menggunakan AWS CLI

Untuk mengonfigurasi pengaturan penskalaan otomatis untuk tabel secara terprogram, Anda menggunakan autoScalingSpecification tindakan yang menentukan parameter untuk penskalaan otomatis Amazon Keyspaces. Parameter menentukan kondisi yang mengarahkan Amazon Keyspaces untuk menyesuaikan throughput yang disediakan tabel Anda, dan tindakan opsional tambahan apa yang harus diambil. Dalam contoh ini, Anda menentukan pengaturan penskalaan otomatis untuk mytable.

Kebijakan tersebut berisi elemen berikut:

  • autoScalingSpecification— Menentukan apakah Amazon Keyspaces diizinkan untuk menyesuaikan throughput kapasitas atas nama Anda. Anda dapat mengaktifkan penskalaan otomatis untuk membaca dan untuk kapasitas tulis secara terpisah. Maka Anda harus menentukan parameter berikut untukautoScalingSpecification:

    • writeCapacityAutoScaling— Unit kapasitas tulis maksimum dan minimum.

    • readCapacityAutoScaling— Unit kapasitas baca maksimum dan minimum.

    • scalingPolicy— Amazon Keyspaces mendukung kebijakan pelacakan target. Untuk menentukan kebijakan pelacakan target, Anda mengonfigurasi parameter berikut.

      • targetValue— Penskalaan otomatis Amazon Keyspaces memastikan bahwa rasio kapasitas yang dikonsumsi terhadap kapasitas yang disediakan tetap pada atau mendekati nilai ini. Anda mendefinisikan targetValue sebagai persentase.

      • disableScaleIn: (Opsional) A boolean yang menentukan scale-in apakah dinonaktifkan atau diaktifkan untuk tabel. Parameter ini dinonaktifkan secara default. Untuk menghidupkanscale-in, atur boolean nilainya keFALSE. Ini berarti bahwa kapasitas secara otomatis diperkecil untuk tabel atas nama Anda.

      • scaleOutCooldown— Aktivitas scale-out meningkatkan throughput yang disediakan dari tabel Anda. Untuk menambahkan periode cooldown untuk aktivitas scale-out, tentukan nilai, dalam detik, untuk. ScaleOutCooldown Nilai default-nya adalah 0. Untuk informasi selengkapnya tentang pelacakan target dan periode cooldown, lihat Kebijakan Penskalaan Pelacakan Target di Panduan Pengguna Application Auto Scaling.

      • scaleInCooldown— Aktivitas scale-in mengurangi throughput yang disediakan dari tabel Anda. Untuk menambahkan periode cooldown untuk aktivitas penskalaan, tentukan nilai, dalam detik, untuk. ScaleInCooldown Nilai default-nya adalah 0. Untuk informasi selengkapnya tentang pelacakan target dan periode cooldown, lihat Kebijakan Penskalaan Pelacakan Target di Panduan Pengguna Application Auto Scaling.

catatan

Untuk lebih memahami cara kerja TargetValue, misalkan Anda memiliki sebuah tabel dengan pengaturan throughput yang disediakan sebanyak 200 unit kapasitas tulis. Anda memutuskan untuk membuat kebijakan penskalaan untuk tabel ini, dengan TargetValue sebesar 70 persen.

Sekarang anggaplah Anda mulai mendorong lalu lintas tulis ke tabel sehingga throughput tulis aktual adalah sebesar 150 unit kapasitas. consumed-to-provisioned Rasionya sekarang (150/200), atau 75 persen. Rasio ini melebihi target Anda, jadi penskalaan otomatis meningkatkan kapasitas tulis yang disediakan menjadi 215 sehingga rasionya (150/215), atau 69,77 persen—sedekat mungkin dengan Anda, tetapi tidak melebihi itu. TargetValue

Untuk mytable, Anda mengatur TargetValue kapasitas baca dan tulis hingga 50 persen. Penskalaan otomatis Amazon Keyspaces menyesuaikan throughput yang disediakan tabel dalam kisaran 5-10 unit kapasitas sehingga rasionya tetap pada atau mendekati 50 persen. consumed-to-provisioned Untuk kapasitas baca, Anda mengatur nilai untuk ScaleOutCooldown dan ScaleInCooldown ke 60 detik.

Saat membuat tabel dengan pengaturan penskalaan otomatis yang kompleks, akan sangat membantu untuk memuat pengaturan penskalaan otomatis dari file. JSON Untuk contoh berikut, Anda dapat mengunduh JSON file contoh dari auto-scaling.zip dan mengekstrakauto-scaling.json, mencatat jalur ke file. Dalam contoh ini, JSON file tersebut terletak di direktori saat ini. Untuk opsi jalur file yang berbeda, lihat Cara memuat parameter dari file.

aws keyspaces create-table --keyspace-name mykeyspace --table-name mytable \ --schema-definition 'allColumns=[{name=pk,type=int},{name=ck,type=int}],partitionKeys=[{name=pk},{name=ck}]' \ --capacity-specification throughputMode=PROVISIONED,readCapacityUnits=1,writeCapacityUnits=1 \ --auto-scaling-specification file://auto-scaling.json