Perbedaan antara database relasional (SQL) dan DynamoDB saat menulis data ke 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 menulis data ke tabel

Tabel basis data relasional berisi barisan data. Baris terdiri dari kolom. Tabel Amazon DynamoDB berisi item. Item terdiri dari atribut.

Bagian ini menjelaskan cara menulis satu baris (atau item) ke tabel.

Menulis data ke tabel dengan SQL

Sebuah tabel dalam basis data relasional adalah struktur data dua dimensi yang terdiri dari baris dan kolom. Beberapa sistem manajemen database juga menyediakan dukungan untuk data semi-terstruktur, biasanya dengan tipe asli JSON atau XML data. Namun, detail implementasi bervariasi antara vendor.

DiSQL, Anda akan menggunakan INSERT pernyataan untuk menambahkan baris ke tabel.

INSERT INTO Music (Artist, SongTitle, AlbumTitle, Year, Price, Genre, Tags) VALUES( 'No One You Know', 'Call Me Today', 'Somewhat Famous', 2015, 2.14, 'Country', '{"Composers": ["Smith", "Jones", "Davis"],"LengthInSeconds": 214}' );

Kunci utama untuk tabel ini terdiri dari Artis dan SongTitle. Anda harus menentukan nilai untuk kolom ini.

catatan

Contoh ini menggunakan kolom Tanda untuk menyimpan data semi terstruktur tentang lagu di tabel Music. Kolom Tag didefinisikan sebagai tipeTEXT, yang dapat menyimpan hingga 65.535 karakter di My. SQL

Menulis data ke tabel di DynamoDB

Di Amazon DynamoDB, Anda dapat menggunakan API DynamoDB atau PartiQL SQL (bahasa kueri yang kompatibel) untuk menambahkan item ke tabel.

DynamoDB API

Dengan API DynamoDB, Anda menggunakan PutItem operasi untuk menambahkan item ke tabel.

{ TableName: "Music", Item: { "Artist":"No One You Know", "SongTitle":"Call Me Today", "AlbumTitle":"Somewhat Famous", "Year": 2015, "Price": 2.14, "Genre": "Country", "Tags": { "Composers": [ "Smith", "Jones", "Davis" ], "LengthInSeconds": 214 } } }

Kunci utama untuk tabel ini terdiri dari Artis dan SongTitle. Anda harus menentukan nilai untuk atribut ini.

Berikut adalah beberapa hal penting untuk diketahui tentang contoh PutItem:

  • DynamoDB menyediakan dukungan asli untuk dokumen, menggunakan. JSON Hal ini membuat DynamoDB ideal untuk menyimpan data semi terstruktur, seperti Tag. Anda juga dapat mengambil dan memanipulasi data dari dalam JSON dokumen.

  • Tabel Musik tidak memiliki atribut yang telah ditentukan sebelumnya, selain kunci utama (Artis dan SongTitle).

  • Sebagian besar SQL database berorientasi transaksi. Ketika Anda menerbitkan pernyataan INSERT, modifikasi data tidak permanen sampai Anda menerbitkan pernyataan COMMIT. Dengan Amazon DynamoDB, efek operasi bersifat permanen saat DynamoDB membalas dengan kode status 200 (). PutItem HTTP OK

Berikut adalah beberapa contoh PutItem lainnya.

{ TableName: "Music", Item: { "Artist": "No One You Know", "SongTitle": "My Dog Spot", "AlbumTitle":"Hey Now", "Price": 1.98, "Genre": "Country", "CriticRating": 8.4 } }
{ TableName: "Music", Item: { "Artist": "No One You Know", "SongTitle": "Somewhere Down The Road", "AlbumTitle":"Somewhat Famous", "Genre": "Country", "CriticRating": 8.4, "Year": 1984 } }
{ TableName: "Music", Item: { "Artist": "The Acme Band", "SongTitle": "Still In Love", "AlbumTitle":"The Buck Starts Here", "Price": 2.47, "Genre": "Rock", "PromotionInfo": { "RadioStationsPlaying":[ "KHCR", "KBQX", "WTNR", "WJJH" ], "TourDates": { "Seattle": "20150625", "Cleveland": "20150630" }, "Rotation": "Heavy" } } }
{ TableName: "Music", Item: { "Artist": "The Acme Band", "SongTitle": "Look Out, World", "AlbumTitle":"The Buck Starts Here", "Price": 0.99, "Genre": "Rock" } }
catatan

Selain ituPutItem, DynamoDB mendukung operasi BatchWriteItem untuk menulis beberapa item pada saat yang sama.

PartiQL for DynamoDB

Dengan PartiQL, Anda menggunakan operasi ExecuteStatement untuk menambahkan item ke tabel, menggunakan pernyataan Insert PartiQL.

INSERT into Music value { 'Artist': 'No One You Know', 'SongTitle': 'Call Me Today', 'AlbumTitle': 'Somewhat Famous', 'Year' : '2015', 'Genre' : 'Acme' }

Kunci utama untuk tabel ini terdiri dari Artis dan SongTitle. Anda harus menentukan nilai untuk atribut ini.

catatan

Untuk contoh kode menggunakan Insert dan ExecuteStatement, lihat Pernyataan sisipkan PartiQL untuk DynamoDB.