Perbedaan antara database relasional (SQL) dan DynamoDB saat membuat tabel - Amazon DynamoDB

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

Perbedaan antara database relasional (SQL) dan DynamoDB saat membuat tabel

Tabel adalah struktur data mendasar dalam basis data relasional dan di Amazon DynamoDB. Sebuah sistem manajemen database relasional (RDBMS) mengharuskan Anda untuk menentukan skema tabel ketika Anda membuatnya. Sebaliknya, tabel DynamoDB tidak memiliki skema-selain kunci primer, Anda tidak perlu mendefinisikan atribut tambahan atau jenis data ketika Anda membuat tabel.

Bagian berikut membandingkan bagaimana Anda akan membuat tabel dengan bagaimana Anda akan membuatnya dengan SQL DynamoDB.

Membuat tabel dengan SQL

Dengan SQL Anda akan menggunakan CREATE TABLE pernyataan untuk membuat tabel, seperti yang ditunjukkan pada contoh berikut.

CREATE TABLE Music ( Artist VARCHAR(20) NOT NULL, SongTitle VARCHAR(30) NOT NULL, AlbumTitle VARCHAR(25), Year INT, Price FLOAT, Genre VARCHAR(10), Tags TEXT, PRIMARY KEY(Artist, SongTitle) );

Kunci utama untuk tabel ini terdiri dari Artis dan SongTitle.

Anda harus menentukan semua kolom tabel dan jenis data, serta kunci primer tabel. (Anda dapat menggunakan pernyataan ALTER TABLE untuk mengubah definisi ini nanti, jika perlu.)

Banyak SQL implementasi memungkinkan Anda menentukan spesifikasi penyimpanan untuk tabel Anda, sebagai bagian dari CREATE TABLE pernyataan. Kecuali jika Anda mengindikasikan sebaliknya, tabel dibuat dengan pengaturan penyimpanan default. Dalam lingkungan produksi, administrator basis data dapat membantu menentukan parameter penyimpanan optimal.

Membuat tabel dengan DynamoDB

Gunakan operasi CreateTable untuk membuat tabel mode yang ditetapkan, menentukan parameter seperti yang ditunjukkan berikut:

{ TableName : "Music", KeySchema: [ { AttributeName: "Artist", KeyType: "HASH" //Partition key }, { AttributeName: "SongTitle", KeyType: "RANGE" //Sort key } ], AttributeDefinitions: [ { AttributeName: "Artist", AttributeType: "S" }, { AttributeName: "SongTitle", AttributeType: "S" } ], ProvisionedThroughput: { // Only specified if using provisioned mode ReadCapacityUnits: 1, WriteCapacityUnits: 1 } }

Kunci utama untuk tabel ini terdiri dari Artist (partition key) dan SongTitle(sort key).

Anda harus memberikan parameter berikut untuk CreateTable:

  • TableName — Nama tabel.

  • KeySchema — Atribut yang digunakan untuk kunci primer. Untuk informasi selengkapnya, lihat Tabel, item, dan atribut dan Kunci primer.

  • AttributeDefinitions — Jenis data untuk atribut skema kunci.

  • ProvisionedThroughput (for provisioned tables) — Jumlah baca dan tulis per detik yang Anda butuhkan untuk tabel ini. DynamoDB mencadangkan cukup penyimpanan dan sumber daya sistem sehingga persyaratan throughput Anda selalu dipenuhi. Anda dapat menggunakan operasi UpdateTable untuk mengubah ini nanti, jika perlu. Anda tidak perlu menentukan persyaratan penyimpanan tabel karena alokasi penyimpanan terkelola sepenuhnya oleh DynamoDB.