Mengakses Amazon QLDB menggunakan QLDB shell (APIhanya data) - 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.

Mengakses Amazon QLDB menggunakan QLDB shell (APIhanya data)

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

Amazon QLDB menyediakan shell baris perintah untuk interaksi dengan data transaksional. API Dengan QLDB shell, Anda dapat menjalankan pernyataan PartiQL pada data buku besar.

Versi terbaru dari shell ini ditulis dalam Rust dan open source di GitHub repositori amazon-qldb-shellawslabs/ di cabang default. main Versi Python (v1) juga masih tersedia untuk digunakan di repositori yang sama di cabang. master

catatan

QLDBShell Amazon hanya mendukung data qldb-session transaksional. API APIIni hanya digunakan untuk menjalankan pernyataan PartiQL pada buku besar. QLDB

Untuk berinteraksi dengan API operasi qldb manajemen menggunakan antarmuka baris perintah, lihatMengakses Amazon QLDB menggunakan AWS CLI (APIhanya manajemen).

Alat ini tidak dimaksudkan untuk dimasukkan ke dalam aplikasi atau diadopsi untuk tujuan produksi. Tujuan dari alat ini adalah untuk memungkinkan Anda bereksperimen dengan cepat QLDB dan PartiQL.

Bagian berikut menjelaskan cara memulai dengan QLDB shell.

Prasyarat

Sebelum Anda memulai dengan QLDB shell, Anda harus melakukan hal berikut:

  1. Ikuti instruksi AWS pengaturan diMengakses Amazon QLDB. Ini termasuk yang berikut:

    1. Mendaftar untuk AWS.

    2. Buat pengguna dengan QLDB izin yang sesuai.

    3. Berikan akses terprogram untuk pengembangan.

  2. Siapkan AWS kredensil Anda dan default Anda. Wilayah AWS Untuk petunjuk, lihat Dasar-dasar konfigurasi di Panduan AWS Command Line Interface Pengguna.

    Untuk daftar lengkap Wilayah yang tersedia, lihat QLDBtitik akhir dan kuota Amazon di. Referensi Umum AWS

  3. Untuk buku besar apa pun dalam mode STANDARD izin, buat IAM kebijakan yang memberi Anda izin untuk menjalankan pernyataan PartiQL pada tabel yang sesuai. Untuk mempelajari cara membuat kebijakan ini, lihatMemulai dengan mode izin standar di Amazon QLDB.

Memasang shell

Untuk menginstal versi terbaru QLDB shell, lihat READMEfile.md di GitHub. QLDBmenyediakan file biner pra-bangun untuk Linux, macOS, dan Windows di bagian Rilis repositori. GitHub

Untuk macOS, shell terintegrasi dengan keran Homebrew. aws/tap Untuk menginstal shell di macOS menggunakan Homebrew, jalankan perintah berikut.

$ xcode-select --install # Required to use Homebrew $ brew tap aws/tap # Add AWS as a Homebrew tap $ brew install qldbshell

Konfigurasi

Setelah instalasi, shell memuat file konfigurasi default yang terletak di $XDG_CONFIG_HOME/qldbshell/config.ion selama inisialisasi. Di Linux dan macOS, file ini biasanya di. ~/.config/qldbshell/config.ion Jika file seperti itu tidak ada, shell berjalan dengan pengaturan default.

Anda dapat membuat config.ion file secara manual setelah instalasi. File konfigurasi ini menggunakan format data Amazon Ion. Berikut ini adalah contoh config.ion file minimal.

{ default_ledger: "my-example-ledger" }

Jika default_ledger tidak diatur dalam file konfigurasi Anda, --ledger parameter diperlukan saat Anda memanggil shell. Untuk daftar lengkap opsi konfigurasi, lihat READMEfile.md di GitHub.

Memanggil shell

Untuk memanggil QLDB shell pada terminal baris perintah Anda untuk buku besar tertentu, jalankan perintah berikut. Ganti my-example-ledger dengan nama buku besar Anda.

$ qldb --ledger my-example-ledger

Perintah ini terhubung ke default Anda Wilayah AWS. Untuk secara eksplisit menentukan Wilayah, Anda dapat menjalankan perintah dengan --qldb-session-endpoint parameter --region or, seperti yang dijelaskan di bagian berikut.

Setelah menjalankan sesi qldb shell, Anda dapat memasukkan jenis input berikut:

Parameter shell

Untuk daftar lengkap flag dan opsi yang tersedia untuk menjalankan shell, jalankan qldb perintah dengan --help bendera, sebagai berikut.

$ qldb --help

Berikut ini adalah beberapa tanda kunci dan opsi untuk qldb perintah. Anda dapat menambahkan parameter opsional ini untuk mengganti Wilayah AWS, profil kredensial, titik akhir, format hasil, dan opsi konfigurasi lainnya.

Penggunaan

$ qldb [FLAGS] [OPTIONS]
FLAGS
-h, --help

Mencetak informasi bantuan.

-v, --verbose

Mengkonfigurasi verbositas logging. Secara default, shell hanya mencatat kesalahan. Untuk meningkatkan tingkat verbositas, ulangi argumen ini (misalnya,-vv). Tingkat tertinggi adalah -vvv yang sesuai dengan trace verbositas.

-V, --version

Mencetak informasi versi.

OPTIONS
-l, --ledger LEDGER_NAME

Nama buku besar untuk dihubungkan. Ini adalah parameter shell yang diperlukan jika default_ledger tidak disetel dalam config.ion file Anda. Dalam file ini, Anda dapat mengatur opsi tambahan, seperti Wilayah.

-c, --config CONFIG_FILE

File tempat Anda dapat menentukan opsi konfigurasi shell apa pun. Untuk detail pemformatan dan daftar lengkap opsi konfigurasi, lihat READMEfile.md di. GitHub

-f, --format ion|table

Format output hasil kueri Anda. Nilai default-nya ion.

-p, --profile PROFILE

Lokasi profil AWS kredensyal Anda yang akan digunakan untuk otentikasi.

Jika tidak disediakan, shell menggunakan AWS profil default Anda, yang terletak di~/.aws/credentials.

-r, --region REGION_CODE

Wilayah AWS Kode QLDB buku besar untuk terhubung ke. Misalnya: us-east-1.

Jika tidak disediakan, shell terhubung ke default Anda Wilayah AWS seperti yang ditentukan dalam AWS profil Anda.

-s, --qldb-session-endpoint QLDB_SESSION_ENDPOINT

qldb-sessionAPITitik akhir untuk terhubung ke.

Untuk daftar lengkap QLDB Wilayah dan titik akhir yang tersedia, lihat QLDBtitik akhir dan kuota Amazon di. Referensi Umum AWS

Referensi perintah

Setelah Anda menjalankan qldb sesi, shell mendukung kunci dan perintah database berikut:

Kunci shell
Kunci Deskripsi fungsi
Enter Menjalankan pernyataan.

Escape+ Enter (macOS, Linux)

Shift+ Enter (Windows)

Memulai baris baru untuk memasukkan pernyataan yang mencakup beberapa baris. Anda juga dapat menyalin teks input dengan beberapa baris dan menempelkannya ke shell.

Untuk petunjuk tentang pengaturan, Option bukan Escape sebagai kunci Meta di macOS, lihat situs OS X Daily.

Ctrl+C Membatalkan perintah saat ini.
Ctrl+D Sinyal akhir file (EOF) dan keluar dari level shell saat ini. Jika tidak dalam transaksi aktif, keluar dari shell. Dalam transaksi aktif, membatalkan transaksi.
Perintah basis data Shell
Perintah Deskripsi fungsi
help Menampilkan informasi bantuan.
begin Memulai transaksi.
start transaction
commit Melakukan transaksi Anda ke jurnal buku besar.
abort Menghentikan transaksi Anda dan menolak setiap perubahan yang Anda buat.
exit Keluar dari cangkang.
quit
catatan

Semua perintah QLDB shell tidak peka huruf besar/kecil.

Menjalankan pernyataan individu

Kecuali untuk perintah database dan perintah meta shell yang tercantum READMEdi.md, shell menafsirkan setiap perintah yang Anda masukkan sebagai pernyataan PartiQL terpisah. Secara default, shell mengaktifkan auto-commit mode. Mode ini dapat dikonfigurasi.

Dalam auto-commit mode, shell secara implisit menjalankan setiap pernyataan dalam transaksinya sendiri dan secara otomatis melakukan transaksi jika tidak ada kesalahan yang ditemukan. Ini berarti bahwa Anda tidak harus menjalankan start transaction (ataubegin) dan commit secara manual setiap kali Anda menjalankan pernyataan.

Mengelola transaksi

Atau, QLDB shell memungkinkan Anda mengontrol transaksi secara manual. Anda dapat menjalankan beberapa pernyataan dalam transaksi secara interaktif, atau non-interaktif dengan mengelompokkan perintah dan pernyataan secara berurutan.

Transaksi interaktif

Untuk menjalankan transaksi interaktif, lakukan langkah-langkah berikut.

  1. Untuk memulai transaksi, masukkan begin perintah.

    qldb> begin

    Setelah Anda memulai transaksi, shell menampilkan command prompt berikut.

    qldb *>
  2. Kemudian, setiap pernyataan yang Anda masukkan berjalan dalam transaksi yang sama.

    • Misalnya, Anda dapat menjalankan satu pernyataan sebagai berikut.

      qldb *> SELECT * FROM Vehicle WHERE VIN = '1N4AL11D75C109151'

      Setelah Anda menekanEnter, shell menampilkan hasil pernyataan.

    • Anda juga dapat memasukkan beberapa pernyataan atau perintah yang dipisahkan oleh pembatas titik koma (;) sebagai berikut.

      qldb *> SELECT * FROM Vehicle WHERE VIN = '1N4AL11D75C109151'; commit
  3. Untuk mengakhiri transaksi, masukkan salah satu perintah berikut.

    • Masukkan commit perintah untuk melakukan transaksi Anda ke jurnal buku besar.

      qldb *> commit
    • Masukkan abort perintah untuk menghentikan transaksi Anda dan menolak setiap perubahan yang Anda buat.

      qldb *> abort transaction was aborted

Batas batas waktu transaksi

Transaksi interaktif mematuhi QLDB batas batas waktu transaksi. Jika Anda tidak melakukan transaksi dalam waktu 30 detik sejak memulainya, transaksi akan kedaluwarsa QLDB secara otomatis dan menolak setiap perubahan yang dilakukan selama transaksi.

Kemudian, alih-alih menampilkan hasil pernyataan, shell menampilkan pesan kesalahan kedaluwarsa dan kembali ke prompt perintah normal. Untuk mencoba lagi, Anda harus memasukkan begin perintah lagi untuk memulai transaksi baru.

transaction failed after 1 attempts, last error: communication failure: Transaction 2UMpiJ5hh7WLjVgEiMLOoO has expired

Transaksi non-interaktif

Anda dapat menjalankan transaksi lengkap dengan beberapa pernyataan dengan mengelompokkan perintah dan pernyataan secara berurutan sebagai berikut.

qldb> begin; SELECT * FROM Vehicle WHERE VIN = '1N4AL11D75C109151'; SELECT * FROM Person p, DriversLicense l WHERE p.GovId = l.LicenseNumber; commit

Anda harus memisahkan setiap perintah dan pernyataan dengan pembatas titik koma ();. Jika ada pernyataan dalam transaksi yang tidak valid, shell secara otomatis menolak transaksi. Shell tidak melanjutkan dengan pernyataan berikutnya yang Anda masukkan.

Anda juga dapat mengatur beberapa transaksi.

qldb> begin; statement1; commit; begin; statement2; statement3; commit

Mirip dengan contoh sebelumnya, jika transaksi gagal, shell tidak melanjutkan transaksi atau pernyataan berikutnya yang Anda masukkan.

Jika Anda tidak mengakhiri transaksi, shell beralih ke mode interaktif dan meminta Anda untuk perintah atau pernyataan berikutnya.

qldb> begin; statement1; commit; begin qldb *>

Keluar dari cangkang

Untuk keluar dari sesi qldb shell saat ini, masukkan quit perintah exit or, atau gunakan pintasan Ctrl D keyboard+saat shell tidak dalam transaksi.

qldb> exit $
qldb> quit $

Contoh

Untuk informasi tentang menulis pernyataan PartiQL QLDB di, lihat. Referensi Amazon QLDB PartiQL

Contoh berikut menunjukkan urutan umum perintah dasar.

catatan

QLDBShell menjalankan setiap pernyataan PartiQL dalam contoh ini dalam transaksinya sendiri.

Contoh ini mengasumsikan bahwa buku besar test-ledger sudah ada dan aktif.

$ qldb --ledger test-ledger --region us-east-1 qldb> CREATE TABLE TestTable qldb> INSERT INTO TestTable `{"Name": "John Doe"}` qldb> SELECT * FROM TestTable qldb> DROP TABLE TestTable qldb> exit