使用主控台存取 Amazon QLDB - Amazon Quantum Ledger Database (Amazon QLDB)

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用主控台存取 Amazon QLDB

重要

終止支援通知:現有客戶將可以使用 Amazon QLDB,直到 07/31/2025 終止支援為止。如需詳細資訊,請參閱將 Amazon QLDB Ledger 遷移至 Amazon Aurora PostgreSQL

您可以在 https://console.aws.amazon.com/qldb:// 存取 AWS Management Console 適用於 Amazon QLDB 的 。

您可以使用 主控台在 QLDB 中執行下列動作:

  • 建立、刪除、描述和列出總帳。

  • 使用 PartiQL 編輯器執行 PartiQL 陳述式。

  • 管理 QLDB 資源的標籤。

  • 以密碼編譯方式驗證日誌資料。

  • 匯出或串流日誌區塊。

若要了解如何建立 Amazon QLDB 總帳並使用範例應用程式資料進行設定,請參閱 Amazon QLDB 主控台入門

PartiQL 編輯器快速參考

重要

終止支援通知:現有客戶將可以使用 Amazon QLDB,直到 07/31/2025 終止支援為止。如需詳細資訊,請參閱將 Amazon QLDB Ledger 遷移至 Amazon Aurora PostgreSQL

Amazon QLDB 支援部分 PartiQL 作為其查詢語言,Amazon Ion 作為其文件導向的資料格式。如需 PartiQL 的 QLDB 實作的完整指南和更多詳細資訊,請參閱 Amazon QLDB PartiQL 參考

下列主題提供如何在 QLDB 中使用 PartiQL 的快速參考概觀。

QLDB 中的 PartiQL 快速提示

以下是在 QLDB 中使用 PartiQL 的秘訣和最佳實務的簡短摘要:

  • 了解並行和交易限制 – 包括SELECT查詢在內的所有陳述式都受到樂觀並行控制 (OCC) 衝突和交易限制的約束,包括 30 秒的交易逾時。

  • 使用索引 – 使用高基數索引並執行目標查詢,以最佳化您的陳述式並避免完整資料表掃描。如需詳細資訊,請參閱 最佳化查詢效能

  • 使用等式述詞 – 索引查詢需要等式運算子 (=IN)。不等式運算子 (<>LIKEBETWEEN) 不符合索引查詢的資格,並導致完整資料表掃描。

  • 僅使用內部聯結 – QLDB 僅支援內部聯結。最佳實務是,加入針對您要加入的每個資料表編製索引的欄位。為聯結條件和等式述詞選擇高基數索引。

命令

QLDB 支援下列 PartiQL 命令。

資料定義語言 (DDL)
Command 描述
CREATE INDEX 在資料表上建立最上層文件欄位的索引。
CREATE TABLE 建立資料表。
DROP INDEX 從資料表刪除索引。
DROP TABLE 停用現有的資料表。
UNDROP 資料表 重新啟用非作用中的資料表。
資料處理語言 (DML)
Command 描述
DELETE 透過建立新的文件最終修訂,將作用中文件標記為已刪除。
FROM (INSERT、Remove 或 SET) 在語意上與 相同UPDATE
INSERT 將一或多個文件新增至資料表。
SELECT 從一或多個資料表擷取資料。
UPDATE 更新、插入或移除文件中的特定元素。

DML 陳述式範例

INSERT

INSERT INTO VehicleRegistration VALUE { 'VIN' : 'KM8SRDHF6EU074761', --string 'RegNum' : 1722, --integer 'PendingPenaltyTicketAmount' : 130.75, --decimal 'Owners' : { --nested struct 'PrimaryOwner' : { 'PersonId': '294jJ3YUoH1IEEm8GSabOs' }, 'SecondaryOwners' : [ --list of structs { 'PersonId' : '1nmeDdLo3AhGswBtyM1eYh' }, { 'PersonId': 'IN7MvYtUjkp1GMZu0F6CG9' } ] }, 'ValidToDate' : `2020-06-25T` --Ion timestamp literal with day precision }

UPDATE-INSERT

UPDATE Vehicle AS v INSERT INTO v VALUE 26500 AT 'Mileage' WHERE v.VIN = '1N4AL11D75C109151'

UPDATE-REMOVE

UPDATE Person AS p REMOVE p.Address WHERE p.GovId = '111-22-3333'

SELECT – 相關子查詢

SELECT r.VIN, o.SecondaryOwners FROM VehicleRegistration AS r, @r.Owners AS o WHERE r.VIN IN ('1N4AL11D75C109151', 'KM8SRDHF6EU074761')

SELECT – 內部聯結

SELECT v.Make, v.Model, r.Owners FROM VehicleRegistration AS r INNER JOIN Vehicle AS v ON r.VIN = v.VIN WHERE r.VIN IN ('1N4AL11D75C109151', 'KM8SRDHF6EU074761')

SELECT – 使用 BY 子句取得文件 ID

SELECT r_id FROM VehicleRegistration AS r BY r_id WHERE r.VIN = '1HVBBAANXWH544237'

系統定義的檢視

QLDB 支援資料表的下列系統定義檢視。

檢視 描述
table_name 資料表的預設使用者檢視,僅包含使用者資料的目前狀態。
_ql_committed_table_name 資料表的完整系統定義遞交檢視,其中包含使用者資料和系統產生的中繼資料的目前狀態,例如文件 ID。
history(table_name) 傳回資料表完整修訂歷史記錄的內建歷史記錄函數

基本語法規則

QLDB 支援 PartiQL 的下列基本語法規則。

字元 描述
' 單引號表示 Amazon Ion 結構中的字串值或欄位名稱。
" 雙引號表示引號的識別符,例如用作資料表名稱的保留字
` 反引號表示 Ion 常值。
. 點表示法會存取父系結構的欄位名稱。
[ ] 方括號定義 Ion list,或表示現有清單的零基序數。
{ } 大括號定義 Ion struct
<< >> 雙角括號定義 PartiQL 包,這是未排序的集合。您可以使用包將多個文件插入資料表。
區分大小寫 所有 QLDB 系統物件名稱,包括欄位名稱和資料表名稱,都區分大小寫。

PartiQL 編輯器鍵盤快速鍵

QLDB 主控台上的 PartiQL 編輯器支援下列鍵盤快速鍵。

動作 macOS Windows
執行 Cmd+Return Ctrl+Enter
註解 Cmd+/ Ctrl+/
Clear Cmd+Shift+Delete Ctrl+Shift+Delete