我们可以通过 qldb 中的事务哈希检索文档修订吗
can we retrieve document revision by transaction hash in qldb
我们正在尝试使用事务哈希检索 qldb 中提交的文档修订。但是,在尝试查询
时,它不会返回具有特定哈希值的行
SELECT * FROM history(Users) AS h WHERE h.hash='8kmIsF2X2HonQDhuoosBbKZtSQCjHZgnyUmPGZa9pJc='
我认为 qldb 修订版中的 tx 哈希是离子文字,因此不应将其视为字符串。那么我们如何通过 hash
检索文档修订
要成功执行此查询,您需要将 hash
值视为 blob 类型 Ion 文字,这可以使用反引号和 {{...}}
:
SELECT * FROM history(Users) AS h WHERE h.hash = `{{8kmIsF2X2HonQDhuoosBbKZtSQCjHZgnyUmPGZa9pJc=}}`
值得注意的是,此查询会扫描 Users
table 中所有文档的每个修订版。 QLDB的
历史不支持索引,此查询将随着 table 的增长而降级。
我们正在尝试使用事务哈希检索 qldb 中提交的文档修订。但是,在尝试查询
时,它不会返回具有特定哈希值的行SELECT * FROM history(Users) AS h WHERE h.hash='8kmIsF2X2HonQDhuoosBbKZtSQCjHZgnyUmPGZa9pJc='
我认为 qldb 修订版中的 tx 哈希是离子文字,因此不应将其视为字符串。那么我们如何通过 hash
检索文档修订要成功执行此查询,您需要将 hash
值视为 blob 类型 Ion 文字,这可以使用反引号和 {{...}}
:
SELECT * FROM history(Users) AS h WHERE h.hash = `{{8kmIsF2X2HonQDhuoosBbKZtSQCjHZgnyUmPGZa9pJc=}}`
值得注意的是,此查询会扫描 Users
table 中所有文档的每个修订版。 QLDB的
历史不支持索引,此查询将随着 table 的增长而降级。