我在Cassandra数据库上执行查询时面临超时问题。我们已经尝试在cassandra中增加读超时字段"read_request_timeout_in_ms", "range_request_timeout_in_ms"
。yaml,但仍查询timesout 10秒。
是否可以将超时值增加到1-2分钟?
Sample Product Table Schema:
- product_id string (primary key)
- product_name string
- created_on timestamp (secondary index)
- updated_on timestamp
需求:我想查询所有的产品,其中创建了一个特定的一天使用'created_on'字段。
示例查询:select * from "Product" where created_on > 1632906232 AND created_on < 1632906232
备注:查询使用过滤器的二级索引字段。
环境详细信息:Cassandra数据库与2节点集群设置。
潜在的问题是,范围查询是昂贵的,这就是为什么要花这么长时间才能完成。顺便说一下,看起来你发布了错误的查询,因为你有相同的值。
默认超时设置是为了防止节点因昂贵的查询而过载,因此它们不会停机。增加服务器端超时不是正确的方法。在您的情况下,很可能是触发了客户端超时。
您需要检查您的数据模型并创建表,而不是按创建日期进行分区,以便它的性能更好。干杯!