数据一致性级别
Datastore 查询可以按以下任何一种一致性级别交付结果:
在最终一致性查询中,也会按最终一致性访问用于收集结果的索引。因此,此类查询有时可能返回不再符合最初查询条件的实体,而高度一致性查询在事务上始终一致。
Datastore 查询数据一致性
查询返回的结果具有不同级别的一致性保证,具体取决于查询的性质:
按键提取实体(也称为“按键查找”)具有高度一致性。
设置 Datastore 读取政策
为了提高性能,您可以设置 Datastore 读取政策以使所有读取和查询最终一致。(API 还可让您明确设置强一致性政策,但此设置没有实际影响,因为无论政策如何,非祖先查询总是具有最终一致性)。
您还可以设置 Datastore 最后调用期限,这是应用在取消调用并返回错误之前等待 Datastore 返回结果的最长时间(以秒为单位)。默认期限为 60 秒;目前无法设置为更大的值,但您可以将其向下调整,以确保特定操作快速失败(例如,更快地向用户返回响应)。 如需在 Java 中设置 Datastore 读取政策,您可以使用嵌套帮助程序类DatastoreServiceConfig.Builder
来构造 Datastore 服务配置 (DatastoreServiceConfig
),并向其传递 ReadPolicy
类的实例。以下示例展示了如何设置读取政策和/或调用期限:
后续步骤
- 了解如何指定查询返回的内容并进一步控制查询结果。
- 了解 Datastore 查询的常见限制。
- 了解可让应用以便利的批次形式检索查询结果的查询游标。
- 了解 Datastore 查询的基本语法和结构。