我正在尝试为我正在为一个客户端运行的基准测试创建一个平台,该客户端将Cassandra作为一个数据库,用于大量的写吞吐量负载。有大量的指标(时间序列)需要存储,每个指标都应该存储为CQLTable / Column系列。
第一个问题是创建所有节点(大约1000万个指标)需要几天时间(运行4节点culster)。我尝试使用executemany (python cql)进行批量处理,但延迟的'service-time‘大致相同。有没有人能建议一个更好的方法呢?
发布于 2013-07-29 19:29:19
您不应该为每个列族创建单独的列族- 10M个列族太多了,因为每个CF都占用固定的资源。
你最好把它们放在一个单独的CF中。您可以将指标名称添加为复合主键的组件,例如
create table metrics (
metric text,
day timestamp,
time timestamp,
value text,
primary key ((metric, day))
);day字段用于按天对指标进行分片,因此对于给定的指标,它们不会全部出现在同一行中。
https://stackoverflow.com/questions/17916879
复制相似问题