Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buat tabel di Amazon Keyspaces
Di bagian ini, Anda membuat tabel menggunakan konsolcqlsh
,, atau AWS CLI.
Tabel adalah tempat data Anda diatur dan disimpan. Kunci utama tabel Anda menentukan bagaimana data dipartisi dalam tabel Anda. Kunci utama terdiri dari kunci partisi yang diperlukan dan satu atau lebih kolom pengelompokan opsional. Nilai gabungan yang menyusun kunci utama harus unik di semua data tabel. Untuk informasi selengkapnya tentang tabel, lihat topik berikut:
Desain kunci partisi: Cara menggunakan kunci partisi secara efektif di Amazon Keyspaces
Bekerja dengan tabel: Periksa status pembuatan tabel di Amazon Keyspaces
-
DDLpernyataan dalam referensi CQL bahasa: Tabel
Manajemen sumber daya tabel: Mengelola sumber daya tanpa server di Amazon Keyspaces (untuk Apache Cassandra)
Pemantauan pemanfaatan sumber daya tabel: Memantau Amazon Keyspaces dengan Amazon CloudWatch
Saat Anda membuat tabel, Anda menentukan yang berikut:
-
Nama tabel.
-
Nama dan tipe data dari setiap kolom dalam tabel.
-
Kunci utama untuk tabel.
-
Kunci partisi - Diperlukan
-
Kolom pengelompokan - Opsional
-
Gunakan prosedur berikut untuk membuat tabel dengan kolom tertentu, tipe data, kunci partisi, dan kolom pengelompokan.
Prosedur berikut membuat tabel book_awards
dengan kolom dan tipe data ini.
year int
award text
rank int
category text
book_title text
author text
publisher text
Untuk membuat tabel menggunakan konsol
-
Masuk ke AWS Management Console, dan buka konsol Amazon Keyspaces di https://console.aws.amazon.com/keyspaces/ rumah.
-
Di panel navigasi, pilih Keyspaces.
-
Pilih
catalog
sebagai ruang kunci tempat Anda ingin membuat tabel ini. -
Pilih Buat tabel.
-
Di kotak Nama tabel, masukkan
book_awards
sebagai nama untuk tabel Anda.Kendala nama:
-
Nama tidak bisa kosong.
-
Karakter yang diizinkan: karakter alfanumerik dan garis bawah ().
_
-
Panjang maksimum adalah 48 karakter.
-
-
Di bagian Kolom, ulangi langkah-langkah berikut untuk setiap kolom yang ingin Anda tambahkan ke tabel ini.
Tambahkan kolom dan tipe data berikut.
year int award text rank int category text book_title text author text publisher text
-
Nama — Masukkan nama untuk kolom.
Kendala nama:
-
Nama tidak bisa kosong.
-
Karakter yang diizinkan: karakter alfanumerik dan garis bawah ().
_
-
Panjang maksimum adalah 48 karakter.
-
-
Jenis - Dalam daftar tipe data, pilih tipe data untuk kolom ini.
-
Untuk menambahkan kolom lain, pilih Tambahkan kolom.
-
-
Pilih
award
danyear
sebagai tombol partisi di bawah Partition Key. Kunci partisi diperlukan untuk setiap tabel. Kunci partisi dapat dibuat dari satu atau lebih kolom. -
Tambahkan
category
danrank
sebagai kolom Clustering. Kolom pengelompokan bersifat opsional dan menentukan urutan pengurutan dalam setiap partisi.-
Untuk menambahkan kolom pengelompokan, pilih Tambahkan kolom pengelompokan.
-
Dalam daftar Kolom, pilih kategori. Dalam daftar Urutan, pilih ASCuntuk mengurutkan dalam urutan menaik pada nilai di kolom ini. (Pilih DESCuntuk urutan menurun.)
Kemudian pilih Tambahkan kolom pengelompokan dan pilih peringkat.
-
-
Di bagian Pengaturan tabel, pilih Pengaturan default.
-
Pilih Buat tabel.
-
Verifikasi bahwa tabel Anda telah dibuat.
-
Di panel navigasi, pilih Tabel.
-
Konfirmasikan bahwa tabel Anda ada dalam daftar tabel.
-
Pilih nama meja Anda.
-
Konfirmasikan bahwa semua kolom dan tipe data Anda sudah benar.
catatan
Kolom mungkin tidak tercantum dalam urutan yang sama dengan yang Anda tambahkan ke tabel.
-
Prosedur ini membuat tabel dengan kolom dan tipe data berikut menggunakanCQL. award
Kolom year
dan adalah kunci partisi dengan category
dan rank
sebagai kolom pengelompokan, bersama-sama mereka membentuk kunci utama tabel.
year int
award text
rank int
category text
book_title text
author text
publisher text
Untuk membuat tabel menggunakan CQL
Buka AWS CloudShell dan sambungkan ke Amazon Keyspaces menggunakan perintah berikut. Pastikan untuk memperbarui
us-east-1
dengan wilayah Anda sendiri.cqlsh-expansion cassandra.
us-east-1
.amazonaws.com 9142 --sslOutput dari perintah itu akan terlihat seperti ini.
Connected to Amazon Keyspaces at cassandra.us-east-1.amazonaws.com:9142 [cqlsh 6.1.0 | Cassandra 3.11.2 | CQL spec 3.4.4 | Native protocol v4] Use HELP for help. cqlsh current consistency level is ONE.
-
Pada prompt keyspace (
cqlsh:keyspace_name>
), buat tabel Anda dengan memasukkan kode berikut ke jendela perintah Anda.CREATE TABLE
catalog.book_awards
( year int, award text, rank int, category text, book_title text, author text, publisher text, PRIMARY KEY ((year, award), category, rank) );catatan
ASC
adalah urutan pengelompokan default. Anda juga dapat menentukanDESC
urutan menurun.Perhatikan bahwa
year
danaward
adalah kolom kunci partisi. Kemudian,category
danrank
adalah kolom pengelompokan yang diurutkan berdasarkan urutan naik ()ASC
. Bersama-sama, kolom-kolom ini membentuk kunci utama tabel. -
Verifikasi bahwa tabel Anda telah dibuat.
SELECT * from system_schema.tables WHERE keyspace_name='catalog.book_awards' ;
Outputnya akan terlihat mirip dengan ini.
keyspace_name | table_name | bloom_filter_fp_chance | caching | cdc | comment | compaction | compression | crc_check_chance | dclocal_read_repair_chance | default_time_to_live | extensions | flags | gc_grace_seconds | id | max_index_interval | memtable_flush_period_in_ms | min_index_interval | read_repair_chance | speculative_retry ---------------+------------+------------------------+---------+-----+---------+------------+-------------+------------------+----------------------------+----------------------+------------+-------+------------------+----+--------------------+-----------------------------+--------------------+--------------------+------------------- (0 rows)
> -
Verifikasi struktur tabel Anda.
SELECT * FROM system_schema.columns WHERE keyspace_name = 'catalog' AND table_name = 'book_awards';
Output dari pernyataan ini akan terlihat mirip dengan contoh ini.
keyspace_name | table_name | column_name | clustering_order | column_name_bytes | kind | position | type ---------------+-------------+-------------+------------------+------------------------+---------------+----------+------ catalog | book_awards | year | none | 0x79656172 | partition_key | 0 | int catalog | book_awards | award | none | 0x6177617264 | partition_key | 1 | text catalog | book_awards | category | asc | 0x63617465676f7279 | clustering | 0 | text catalog | book_awards | rank | asc | 0x72616e6b | clustering | 1 | int catalog | book_awards | author | none | 0x617574686f72 | regular | -1 | text catalog | book_awards | book_title | none | 0x626f6f6b5f7469746c65 | regular | -1 | text catalog | book_awards | publisher | none | 0x7075626c6973686572 | regular | -1 | text (7 rows)
Konfirmasikan bahwa semua kolom dan tipe data seperti yang Anda harapkan. Urutan kolom mungkin berbeda dari pada
CREATE
pernyataan.
Prosedur ini membuat tabel dengan kolom dan tipe data berikut menggunakan AWS CLI. award
Kolom year
dan membentuk kunci partisi dengan category
dan rank
sebagai kolom pengelompokan.
year int
award text
rank int
category text
book_title text
author text
publisher text
Untuk membuat tabel menggunakan AWS CLI
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. (Untuk memudahkan pembacaan, perintah tabel buat di bagian ini dipecah menjadi baris terpisah.) schema-definition
-
Anda dapat membuat tabel menggunakan pernyataan berikut.
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:123SAMPLE012:/keyspace/catalog/table/book_awards", "creationTimestamp": "2024-07-11T15:12:55.571000+00:00", "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": "2024-07-11T15:12:55.571000+00:00" }, "encryptionSpecification": { "type": "AWS_OWNED_KMS_KEY" }, "pointInTimeRecovery": { "status": "DISABLED" }, "defaultTimeToLive": 0, "comment": { "message": "" }, "replicaSpecifications": [] }
Untuk melakukan CRUD (membuat, membaca, memperbarui, dan menghapus) operasi pada data dalam tabel Anda, lanjutkan keMembuat, membaca, memperbarui, dan menghapus data (CRUD) menggunakan CQL di Amazon Keyspaces.