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.
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"
}
}
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.