PrestoDB v0.125 SELECT仅返回Cassandra记录的子集

时间:2015-11-15 12:30:55

标签: cassandra presto

PrestoDB v0.125中的SELECT语句与Cassandra连接器连接到Datastax Cassandra集群仅返回200行,即使表包含的行数多于此行。像同一个表上的SELECT COUNT()这样的聚合查询也只返回200的结果。

(使用pyhive连接器和基本presto CLI查询时,此行为相同。)

文档没什么帮助,但我猜这个问题是分页&需要设置环境变量(文档没有解释): https://prestodb.io/docs/current/installation/cli.html

有谁知道如何删除这200行返回的限制?我需要什么特定的环境变量设置?

1 个答案:

答案 0 :(得分:1)

对于那些追求的人 - 解决方案是在presto的cassandra.properties连接器配置中。关键设置是:

  • cassandra.limit换分区键选

这需要设置为高于您要查询的表中的总行数,否则选择查询将只响应一小部分存储数据(没有找到所有分区键)。

我的配置文件的完整副本(这可能会有所帮助!):

connector.name=cassandra
# Comma separated list of contact points
cassandra.contact-points=host1,host2
# Port running the native Cassandra protocol
cassandra.native-protocol-port=9042
# Limit of rows to read for finding all partition keys.
cassandra.limit-for-partition-key-select=2000000000
# maximum number of schema cache refresh threads, i.e. maximum number of parallel requests
cassandra.max-schema-refresh-threads=10
# schema cache time to live
cassandra.schema-cache-ttl=1h
# schema refresh interval
cassandra.schema-refresh-interval=2m
# Consistency level used for Cassandra queries (ONE, TWO, QUORUM, ...)
cassandra.consistency-level=ONE
# fetch size used for Cassandra queries
cassandra.fetch-size=5000
# fetch size used for partition key select query
cassandra.fetch-size-for-partition-key-select=20000