Ikhtisar Amazon QLDB - Database Buku Besar Amazon Quantum (AmazonQLDB)

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

Ikhtisar Amazon QLDB

penting

Pemberitahuan akhir dukungan: Pelanggan yang ada akan dapat menggunakan Amazon QLDB hingga akhir dukungan pada 07/31/2025. Untuk detail selengkapnya, lihat Memigrasi QLDB Buku Besar Amazon ke Amazon Aurora Postgre. SQL

Bagian berikut memberikan ikhtisar tingkat tinggi tentang komponen QLDB layanan Amazon dan bagaimana mereka berinteraksi.

Jurnal pertama

Dalam arsitektur database tradisional, Anda biasanya menulis data dalam tabel sebagai bagian dari transaksi. Log transaksi — biasanya implementasi internal — mencatat semua transaksi dan modifikasi database yang mereka buat. Log transaksi adalah komponen penting dari database. Anda memerlukan log untuk memutar ulang transaksi jika terjadi kegagalan sistem, pemulihan bencana, atau replikasi data. Namun, log transaksi database tidak dapat diubah dan tidak dirancang untuk menyediakan akses langsung dan mudah ke pengguna.

Di AmazonQLDB, jurnal adalah inti dari database. Secara struktural mirip dengan log transaksi, jurnal adalah struktur data yang tidak dapat diubah dan hanya ditambahkan yang menyimpan data aplikasi Anda bersama dengan metadata terkait. Semua transaksi tulis, termasuk pembaruan dan penghapusan, berkomitmen untuk jurnal terlebih dahulu.

QLDBmenggunakan jurnal untuk menentukan status data buku besar Anda saat ini dengan mewujudkannya ke dalam tabel yang dapat dikueri dan ditentukan pengguna. Tabel ini juga menyediakan riwayat yang dapat diakses dari semua data transaksi, termasuk revisi dokumen dan metadata. Selain itu, jurnal menangani konkurensi, pengurutan, verifikasi kriptografi, dan ketersediaan data buku besar.

Diagram berikut menggambarkan arsitektur QLDB jurnal.

Diagram berjudulQLDB: jurnal adalah database, menunjukkan arsitektur jurnal, dengan aplikasi yang terhubung ke buku besar dan melakukan transaksi ke jurnal, yang diwujudkan ke dalam tabel.
  • Dalam contoh ini, aplikasi terhubung ke buku besar dan menjalankan transaksi yang menyisipkan, memperbarui, dan menghapus dokumen ke dalam tabel bernamacars.

  • Data pertama kali ditulis ke jurnal dalam urutan berurutan.

  • Kemudian data diwujudkan ke dalam tabel dengan tampilan bawaan. Tampilan ini memungkinkan Anda menanyakan status saat ini dan riwayat lengkap mobil, dengan setiap revisi diberi nomor versi.

  • Anda juga dapat mengekspor atau mengalirkan data langsung dari jurnal.

Tetap

Karena QLDB jurnal hanya ditambahkan, jurnal menyimpan catatan lengkap semua perubahan pada data Anda yang tidak dapat dimodifikasi atau ditimpa. Tidak ada APIs atau metode lain untuk mengubah data yang berkomitmen di tempat. Struktur jurnal ini memungkinkan Anda mengakses dan menanyakan riwayat lengkap buku besar Anda.

catatan

Satu-satunya pengecualian untuk kekekalan yang QLDB mendukung adalah redaksi data. Dengan fitur ini, Anda dapat mematuhi undang-undang peraturan seperti Peraturan Perlindungan Data Umum (GDPR) di Uni Eropa dan Undang-Undang Privasi Konsumen California (CCPA).

QLDBmenyediakan operasi redaksi yang memungkinkan Anda menghapus revisi dokumen yang tidak aktif secara permanen dalam riwayat tabel. Operasi ini hanya menghapus data pengguna dalam revisi yang ditentukan, dan membiarkan urutan jurnal dan metadata dokumen tidak berubah. Ini menjaga integritas data keseluruhan buku besar Anda. Untuk informasi selengkapnya, lihat Menyunting revisi dokumen.

QLDBmenulis satu blok ke jurnal dalam suatu transaksi. Setiap blok berisi objek entri yang mewakili dokumen yang Anda sisipkan, perbarui, dan hapus, bersama dengan pernyataan yang Anda jalankan untuk melakukan komit. Blok ini diurutkan dan dirantai hash untuk menjamin integritas data.

Diagram berikut menggambarkan struktur jurnal ini.

Diagram berjudul catatan tidak dapat diubah, menunjukkan struktur jurnal yang tidak dapat diubah, hanya ditambahkanQLDB, dengan nomor urut setiap blok jurnal rantai hash.

Diagram menunjukkan bahwa transaksi dilakukan pada jurnal sebagai blok yang dirantai hash untuk verifikasi. Setiap blok memiliki nomor urut untuk menentukan alamatnya.

Dapat diverifikasi secara kriptografis

Blok jurnal diurutkan dan dirantai bersama dengan teknik hashing kriptografi, mirip dengan blockchain. QLDBmenggunakan rantai hash jurnal untuk memberikan integritas data transaksional menggunakan metode verifikasi kriptografi. Menggunakan intisari (nilai hash yang mewakili rantai hash penuh jurnal pada suatu titik waktu) dan bukti audit Merkle (mekanisme yang membuktikan validitas node apa pun dalam pohon hash biner), Anda dapat memverifikasi bahwa tidak ada perubahan yang tidak diinginkan pada data Anda kapan saja.

Diagram berikut menunjukkan intisari yang mencakup rantai hash penuh jurnal pada suatu titik waktu.

Diagram berjudul hash chaining menggunakan SHA -256, menunjukkan intisari yang mencakup rantai hash penuh jurnal, dengan struktur blok jurnal yang berisi entri yang mewakili dokumen Ion, pernyataan PartiQL, dan metadata.

Dalam diagram ini, blok jurnal di-hash menggunakan fungsi hash kriptografi SHA -256 dan dirantai secara berurutan ke blok berikutnya. Setiap blok berisi entri yang menyertakan dokumen data, metadata, dan pernyataan PartiQL yang berjalan dalam transaksi.

Untuk informasi selengkapnya, lihat Verifikasi data di Amazon QLDB.

SQL-like dan dokumen fleksibel

QLDBmenggunakan PartiQL sebagai bahasa kueri dan Amazon Ion sebagai model data berorientasi dokumen. PartiQL adalah bahasa kueri open-source SQL dan kompatibel yang telah diperluas untuk bekerja dengan Ion. Dengan PartiQL, Anda dapat menyisipkan, menanyakan, dan mengelola data Anda dengan operator yang sudah dikenal. SQL Saat Anda menanyakan dokumen datar, sintaksnya sama dengan menggunakan SQL untuk menanyakan tabel relasional. Untuk mempelajari lebih lanjut tentang QLDB implementasi PartiQL, lihat. Referensi Amazon QLDB PartiQL

Amazon Ion adalah superset dari. JSON Ion adalah format data berbasis dokumen open-source yang memberi Anda fleksibilitas dalam menyimpan dan memproses data terstruktur, semi-terstruktur, dan bersarang. Untuk mempelajari lebih lanjut tentang Ion diQLDB, lihatReferensi format data Amazon Ion di Amazon QLDB.

Untuk perbandingan tingkat tinggi dari komponen inti dan fitur dalam database relasional tradisional versusQLDB, lihat. Dari relasional ke buku besar

Alat pengembang sumber terbuka

Untuk menyederhanakan pengembangan aplikasi, QLDB menyediakan driver open-source dalam berbagai bahasa pemrograman. Anda dapat menggunakan driver ini untuk berinteraksi dengan data transaksional API dengan menjalankan pernyataan PartiQL pada buku besar dan memproses hasil pernyataan tersebut. Untuk informasi dan tutorial tentang bahasa driver yang saat ini didukung, lihatMemulai dengan QLDB driver Amazon.

Amazon Ion juga menyediakan pustaka klien yang memproses data Ion untuk Anda. Untuk panduan developer dan contoh kode pemrosesan data Ion, lihat dokumentasi Amazon Ion di GitHub.

Tanpa server dan sangat tersedia

QLDBsepenuhnya dikelola, tanpa server, dan sangat tersedia. Layanan secara otomatis menskalakan untuk mendukung permintaan aplikasi Anda, dan Anda tidak perlu menyediakan instance atau kapasitas. Beberapa salinan data Anda direplikasi dalam Availability Zone dan di seluruh Availability Zone dalam file Wilayah AWS.

Kelas perusahaan

QLDBtransaksi sepenuhnya sesuai dengan sifat atomisitas, konsistensi, isolasi, dan daya tahan (ACID). QLDBmenggunakan kontrol konkurensi optimis (OCC), dan transaksi beroperasi dengan serialisasi penuh — tingkat isolasi tertinggi. Ini berarti bahwa tidak ada risiko melihat pembacaan hantu, bacaan kotor, kemiringan tulis, atau masalah konkurensi serupa lainnya. Untuk informasi selengkapnya, lihat Model QLDB konkurensi Amazon.