Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Anda dapat menggunakan AWS Command Line Interface (AWS CLI) untuk mengontrol banyak AWS layanan dari baris perintah dan mengotomatiskannya melalui skrip. Dengan Amazon Keyspaces Anda dapat menggunakan AWS CLI untuk operasi bahasa definisi data (DDL), seperti membuat tabel. Selain itu, Anda dapat menggunakan layanan infrastruktur sebagai kode (IAc) dan alat seperti AWS CloudFormation dan Terraform.
Sebelum Anda dapat menggunakan AWS CLI dengan Amazon Keyspaces, Anda harus mendapatkan ID kunci akses dan kunci akses rahasia. Untuk informasi selengkapnya, lihat Membuat dan mengonfigurasi AWS kredensional untuk Amazon Keyspaces.
Untuk daftar lengkap semua perintah yang tersedia untuk Amazon Keyspaces di AWS CLI, lihat AWS CLI Referensi Perintah
Mengunduh dan Mengkonfigurasi AWS CLI
Bagian AWS CLI tersedia dihttps://aws.amazon.com/cli
-
Ikuti instruksi untuk Instalasi AWS CLIdan Mengkonfigurasi AWS CLI
Menggunakan AWS CLI dengan Amazon Keyspaces
Format baris perintah terdiri dari nama operasi Amazon Keyspaces diikuti oleh parameter untuk operasi itu. Bagian AWS CLI mendukung sintaks singkatan untuk nilai parameter, serta. JSON Contoh Amazon Keyspaces berikut digunakan AWS CLI sintaks singkatan. Untuk informasi selengkapnya, lihat Menggunakan sintaks singkatan dengan AWS CLI.
Perintah berikut membuat keyspace dengan katalog nama.
aws keyspaces create-keyspace --keyspace-name 'catalog'
Perintah mengembalikan sumber daya Amazon Resource Name (ARN) dalam output.
{ "resourceArn": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/catalog/" }
Untuk mengonfirmasi bahwa katalog keyspace ada, Anda dapat menggunakan perintah berikut.
aws keyspaces get-keyspace --keyspace-name 'catalog'
Output dari perintah mengembalikan nilai-nilai berikut.
{ "keyspaceName": "catalog", "resourceArn": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/catalog/" }
Perintah berikut membuat tabel dengan nama book_awards. Kunci partisi tabel terdiri dari kolom year
dan award
dan kunci pengelompokan terdiri dari kolom category
danrank
, kedua kolom pengelompokan menggunakan urutan urutan menaik. (Agar mudah dibaca, perintah panjang di bagian ini dipecah menjadi baris terpisah.)
aws keyspaces create-table --keyspace-name 'catalog' --table-name 'book_awards' --schema-definition 'allColumns=[{name=year,type=int},{name=award,type=text},{name=rank,type=int}, {name=category,type=text}, {name=author,type=text},{name=book_title,type=text},{name=publisher,type=text}], partitionKeys=[{name=year},{name=award}],clusteringKeys=[{name=category,orderBy=ASC},{name=rank,orderBy=ASC}]'
Perintah ini menghasilkan output berikut.
{ "resourceArn": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/catalog/table/book_awards" }
Untuk mengonfirmasi metadata dan properti tabel, Anda dapat menggunakan perintah berikut.
aws keyspaces get-table --keyspace-name 'catalog' --table-name 'book_awards'
Perintah ini mengembalikan output berikut.
{ "keyspaceName": "catalog", "tableName": "book_awards", "resourceArn": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/catalog/table/book_awards", "creationTimestamp": 1645564368.628, "status": "ACTIVE", "schemaDefinition": { "allColumns": [ { "name": "year", "type": "int" }, { "name": "award", "type": "text" }, { "name": "category", "type": "text" }, { "name": "rank", "type": "int" }, { "name": "author", "type": "text" }, { "name": "book_title", "type": "text" }, { "name": "publisher", "type": "text" } ], "partitionKeys": [ { "name": "year" }, { "name": "award" } ], "clusteringKeys": [ { "name": "category", "orderBy": "ASC" }, { "name": "rank", "orderBy": "ASC" } ], "staticColumns": [] }, "capacitySpecification": { "throughputMode": "PAY_PER_REQUEST", "lastUpdateToPayPerRequestTimestamp": 1645564368.628 }, "encryptionSpecification": { "type": "AWS_OWNED_KMS_KEY" }, "pointInTimeRecovery": { "status": "DISABLED" }, "ttl": { "status": "ENABLED" }, "defaultTimeToLive": 0, "comment": { "message": "" } }
Saat membuat tabel dengan skema kompleks, akan sangat membantu untuk memuat definisi skema tabel dari file. JSON Berikut ini adalah contoh dari ini. Unduh JSON file contoh definisi skema dari schema_definition.zip dan ekstrakschema_definition.json
, perhatikan jalur ke file. Dalam contoh ini, JSON file definisi skema terletak di direktori saat ini. Untuk opsi jalur file yang berbeda, lihat Cara memuat parameter dari file.
aws keyspaces create-table --keyspace-name 'catalog' --table-name 'book_awards' --schema-definition '
file://schema_definition.json
'
Contoh berikut menunjukkan cara membuat tabel sederhana dengan nama myTabledengan opsi tambahan. Perhatikan bahwa perintah dipecah menjadi baris terpisah untuk meningkatkan keterbacaan. Perintah ini menunjukkan cara membuat tabel dan:
mengatur mode kapasitas tabel
aktifkan oint-in-time pemulihan P untuk tabel
mengatur nilai default Time to Live (TTL) untuk tabel menjadi satu tahun
tambahkan dua tag untuk tabel
aws keyspaces create-table --keyspace-name 'catalog' --table-name 'myTable' --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text},{name=date,type=timestamp}],partitionKeys=[{name=id}]' --capacity-specification 'throughputMode=PROVISIONED,readCapacityUnits=5,writeCapacityUnits=5' --point-in-time-recovery 'status=ENABLED' --default-time-to-live '31536000' --tags 'key=env,value=test' 'key=dpt,value=sec'
Contoh ini menunjukkan cara membuat tabel baru yang menggunakan kunci terkelola pelanggan untuk enkripsi dan telah TTL diaktifkan untuk memungkinkan Anda menetapkan tanggal kedaluwarsa untuk kolom dan baris. Untuk menjalankan sampel ini, Anda harus mengganti sumber daya ARN untuk pelanggan yang dikelola AWS KMS kunci dengan kunci Anda sendiri dan pastikan Amazon Keyspaces memiliki akses ke sana.
aws keyspaces create-table --keyspace-name 'catalog' --table-name 'myTable' --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text},{name=date,type=timestamp}],partitionKeys=[{name=id}]' --encryption-specification 'type=CUSTOMER_MANAGED_KMS_KEY,kmsKeyIdentifier=
arn:aws:kms:us-east-1:111222333444:key/11111111-2222-3333-4444-555555555555
' --ttl 'status=ENABLED'