本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon QLDB 文件
重要
支援結束通知:現有客戶將能夠使用 Amazon,QLDB直到 2025 年 7 月 31 日終止支援為止。有關更多詳細信息,請參閱將 Amazon QLDB 分類帳遷移到 Amazon Aurora 郵政. SQL
Amazon 將數據記錄QLDB存儲為文檔,這些文檔只是插入到表中的 Amazon Ion struct
對象。有關離子規格,請參閱 Amazon 離子 GitHub
離子文件結構
就像JSON,QLDB文件是由以下結構中的名稱-值對組成。
{
name1: value1,
name2: value2,
name3: value3,
...
nameN: valueN
}
名稱是符號標記,值不受限制。每個名稱-值對稱為一個字段。字段的值可以是任何 Ion資料類型,包括容器類型:嵌套結構,列表和結構列表。
同樣喜歡JSON,a struct
由大括號({...}
)表示,並且 a list
由方括號([...]
)表示。下列範例是來自範例資料的文件,其中包開始使用 Amazon QLDB 控制台含各種類型的值。
{
VIN: "1N4AL11D75C109151",
LicensePlateNumber: "LEWISR261LL",
State: "WA",
City: "Seattle",
PendingPenaltyTicketAmount: 90.25,
ValidFrom: 2017-08-21T,
ValidTo: 2020-05-11T,
Owners: {
PrimaryOwner: { PersonId: "294jJ3YUoH1IEEm8GSabOs" },
SecondaryOwners: [{ PersonId: "5Ufgdlnj06gF5CWcOIu64s" }]
}
}
重要
在 Ion 中,雙引號表示字串值,未加引號的符號代表欄位名稱。但是在 PartiQL 中,單引號表示字符串和字段名稱。
這種語法差異可讓 PartiQL 查詢語言維持SQL相容性,而 Amazon Ion 資料格式則可維持JSON相容性。如需有關中 PartiQL 語法和語意的詳細資訊QLDB,請參閱。使用 PartiQL 查詢離子
分部离子类型映射
在中QLDB,PartiQL 會擴充SQL的型別系統,以涵蓋離子資料模型。此對應描述如下:
-
SQL標量類型由它們的離子同行覆蓋。例如:
-
CHAR
並且VARCHAR
是映射到離子string
類型的 Unicode 序列。 -
NUMBER
映射到離子decimal
類型。
-
-
Ion 的
struct
類型相當於一個SQL元組,它傳統上表示一個表行。-
不過,如果是開放式內容且沒有結構描述,則不支援依賴SQL元組排序本質的查詢 (例如的輸出順序
SELECT *
)。
-
-
除此之外
NULL
,PartiQL 還有一個MISSING
類型。這是一個專業化,NULL
並表示缺乏一個領域。此類型是必要的,因為 Ionstruct
欄位可能很稀疏。
文件識別碼
QLDB會將文件 ID 指派給您插入表格中的每個文件。所有系統指派的都IDs是通用唯一識別碼 (UUID),每個識別碼都以 Base62 編碼的字串表示 (例如,)。3Qv67yjXEwB9SjmvkuG6Cp
如需詳細資訊,請參閱 Amazon 獨特IDs之處 QLDB。
每個文件版本修訂都是由文件 ID 和從零開始的版本編號的組合來唯一識別。
文件 ID 和版本欄位包含在文件的中繼資料中,您可以在認可的檢視 (表格的系統定義檢視) 中進行查詢。如需中視圖的詳細資訊QLDB,請參閱核心概念。若要進一步瞭解中繼資料,請參閱查詢文件元資料。