如何为 python 中的 AWS QLDB 搜索查询结果启用分页?

How to enable paging for AWS QLDB search query results in python?

我目前正在设计一个项目,我在 Python 中的 AWS Lambda 函数需要 运行 来自 QLDB 分类帐的 table 搜索查询。 lambda 函数实现了一个 API 网关端点,该端点从 HTML 网络 UI 调用。因此,我需要为搜索查询结果启用分页。如何在 python 中做到这一点?

解决了 Dan 的评论。

您拥有的高级设计:

Web UI(Search) -> API Gateway -> AWS Lambda -> QLDB

[澄清] 您是否要求 Web UI 显示 QLDB 搜索结果的一页,然后根据客户的操作显示下一页?

  1. 如果不是,请详细说明您的用例。
  2. 如果是,则对 QLDB 的查询受事务限制。 事务的生命周期可以为 30 秒。我们不支持跨事务分页。当前形式的 QLDB 也不支持 LIMIT 或 OFFSET。

假设您打算#2,

看起来您正在尝试在 QLDB 之上实现搜索功能。而QLDB可以支持基本的查询能力 它主要用于支持高吞吐量事务写入。在未索引列上对 QLDB 的搜索查询可以 导致完整 table 扫描,这对于大型 table 来说效率非常低。将 QLDB 数据流式传输到 Aurora 或 ElasticSearch 并支持 在其之上搜索查询,可能是更好的选择。这里有一些有用的链接:

显示与 Aurora 集成的示例应用程序:https://qldb-immersionday.workshop.aws/en/lab4.html 显示与 ElasticSearch 集成的示例应用程序:https://docs.aws.amazon.com/qldb/latest/developerguide/streams.sdk.html#streams.sdk.samples.elastic

讨论模式和反模式的开发人员指南链接: