在亚马逊 Keyspaces 中处理查询 - Amazon Keyspaces (for Apache Cassandra)
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在亚马逊 Keyspaces 中处理查询

本节介绍使用 Amazon Keyspaces(Apache Cassandra)中的查询。可用于查询、转换和管理数据的 CQL 语句包括SELECTINSERTUPDATE, 和DELETE. 以下主题概述了处理查询时可用的一些更复杂的选项。有关带示例的完整语言语法,请参阅亚马逊Keyspaces 中的 DML 语句(数据操作语言).

在亚马逊 Keyspaces 中订购结果

这些区域有:ORDER BY子句用于指定在SELECT网页。语句接受列名列表作为参数,并且可以为每列指定数据的排序顺序。您只能在排序子句中指定聚类列,不允许使用非聚类列。

返回结果的两个可用的排序顺序选项是ASC用于升序和DESC用于降序排序顺序。如果您没有在查询语句中指定排序顺序,则使用聚类列的默认顺序。

您可以在排序子句中使用的可能排序顺序取决于在创建表时分配给每个聚类列的排序顺序。查询结果只能按照创建表时为所有聚类列定义的顺序或与定义的排序顺序相反的顺序对查询结果进行排序。不允许使用其他可能的组合。

例如,如果表的聚类顺序为(col1 ASC、col2 DESC、col3 ASC),则 ORDER BY 的有效参数为(col1 ASC、col2 DESC、col3 ASC)或(col1 DESC、col2 ASC、col3 DESC)。有关集群顺序的更多信息,请参阅table_optionsCREATE TABLE.

在亚马逊 Keyspaces 中对结果进行分页

自动使用 Amazon Keyspaces分页来自的结果SELECT读取数据以处理SELECT语句超过 1 MB。使用分页,SELECT语句结果将分成若干 “页” 大小为 1 MB(或更小)的数据。应用程序可以先处理第一页结果,然后处理第二页结果,依此类推。客户在执行时应始终检查分页令牌SELECT返回多个行的查询。

如果客户端提供的页面大小需要读取超过 1 MB 的数据,Amazon Keyspaces 会根据 1 MB 的数据读取增量自动将结果划分为多个页面。

例如,如果行的平均大小为 100 KB,并且您指定页面大小为 20,则 Amazon Keyspaces 在读取 10 行(读取 1000 KB 的数据)后自动分页数据。

由于 Amazon Keyspaces 根据为处理请求而读取的行数而不是结果集中返回的行数对结果进行分页,因此如果您运行过滤的查询,某些页面可能不包含任何行。

例如,如果您将 PAGE SIZE 设置为 10 并且 Keyspaces 会评估 30 行以处理SELECT查询,亚马逊 Keyspaces 将返回三页。如果只有一部分行与您的查询匹配,则某些页面的行可能少于 10 行。