微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我们可以通过 qldb 中的事务哈希检索文档修订吗

如何解决我们可以通过 qldb 中的事务哈希检索文档修订吗

我们正在尝试使用其事务哈希检索 qldb 中提交的文档修订。但是在尝试以下查询时它没有返回具有特定哈希的行

SELECT * FROM history(Users) AS h WHERE h.hash='8kmIsF2X2HonQDhuoosBbKZtSQCjHZgnyUmPGZa9pJc='

我相信 qldb 修订版中的 tx 哈希是离子文字,因此不应将其视为字符串。那么我们如何通过哈希检索文档修订版

解决方法

要成功执行此查询,您需要将 hash 值视为 blob 类型 Ion 文字,这可以使用反引号和 {{...}} 来完成:

SELECT * FROM history(Users) AS h WHERE h.hash = `{{8kmIsF2X2HonQDhuoosBbKZtSQCjHZgnyUmPGZa9pJc=}}`

参考:https://docs.aws.amazon.com/qldb/latest/developerguide/ql-reference.query.html#ql-reference.query.backtick

值得注意的是,此查询会扫描 Users 表中所有文档的每个修订版。 QLDB 的 history 不支持索引,这个查询会随着表的增长而降级。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?