【发布时间】:2016-11-29 05:13:48
【问题描述】:
我们有一个看起来像这样的表:
CREATE TABLE arc_dynamic.transit_map (
sal text,
pfn text,
transit_map_id text,
create_program_id text,
create_timestamp timestamp,
cutoff_times map<text, text>,
derived_priority int,
effective_date text,
modify_program_id text,
modify_timestamp timestamp,
relationship_type_id text,
solr_query text,
stop set<text>,
transit_days map<text, int>,
trigger_id text,
PRIMARY KEY (sal, pfn, transit_map_id)
) WITH CLUSTERING ORDER BY (pfn ASC, transit_map_id ASC)
AND bloom_filter_fp_chance = 0.01
AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}'
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy'}
AND compression = {'sstable_compression': 'org.apache.cassandra.io.compress.LZ4Compressor'}
AND dclocal_read_repair_chance = 0.1
AND default_time_to_live = 0
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair_chance = 0.0
AND speculative_retry = '99.0PERCENTILE';
CREATE CUSTOM INDEX arc_dynamic_transit_map_create_timestamp_index ON arc_dynamic.transit_map (create_timestamp) USING 'com.datastax.bdp.search.solr.Cql3SolrSecondaryIndex';
CREATE CUSTOM INDEX arc_dynamic_transit_map_derived_priority_index ON arc_dynamic.transit_map (derived_priority) USING 'com.datastax.bdp.search.solr.Cql3SolrSecondaryIndex';
CREATE CUSTOM INDEX arc_dynamic_transit_map_modify_timestamp_index ON arc_dynamic.transit_map (modify_timestamp) USING 'com.datastax.bdp.search.solr.Cql3SolrSecondaryIndex';
CREATE CUSTOM INDEX arc_dynamic_transit_map_relationship_type_id_index ON arc_dynamic.transit_map (relationship_type_id) USING 'com.datastax.bdp.search.solr.Cql3SolrSecondaryIndex';
CREATE CUSTOM INDEX arc_dynamic_transit_map_solr_query_index ON arc_dynamic.transit_map (solr_query) USING 'com.datastax.bdp.search.solr.Cql3SolrSecondaryIndex';
CREATE CUSTOM INDEX arc_dynamic_transit_map_trigger_id_index ON arc_dynamic.transit_map (trigger_id) USING 'com.datastax.bdp.search.solr.Cql3SolrSecondaryIndex';
当我跑步时:
select * from transit_map where sal='XXX_953';
超时:
ReadTimeout: code=1200 [Coordinator node timed out waiting for replica nodes'
responses] message="Operation timed out - received only 0 responses." info=
{'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'}
如果我将其限制为 10 行或更少,它就会返回。还有什么,超时。我试图弄清楚哪里出了问题(太多的sstables,墓碑,其他东西),但我不知道如何解决这个问题。
我已启用跟踪。对于 10 行或更少的限制,它不会“看起来太糟糕”(至少它有一些输出)。
当我输入 11 行限制或将其留空(无限制)时,跟踪不会返回任何输出。
非常感谢任何帮助。我来自 Oracle 的长期背景,不知道如何在 Cassandra 中解决这个问题。
【问题讨论】:
-
您希望该查询返回多少行?