Cassandra查询多列

时间:2016-02-24 19:53:43

标签: cassandra

我们计划将所有票证存储在cassandra数据库中,这是定义的表格。

j-th

我的背景主要是关于SQL的,在设计表之后,我注意到我无法查询除了ticket_num和created_dt之外的表,因为其他列没有被索引:(。

我的需求是用户应该根据所有这些列编写查询。

我应该为每个查询条件创建多个表吗?

TABLE_1

BFMatcher

TABLE_2

CREATE TABLE tickets_info (
    ticket_num text,
    created_dt timestamp,
    division text,
    pg text,
    duration text,
    error_count text,
    outage_caused text,
    system_caused text,
    addt_notes text,
    ticket_type text,
    row_create_ts timestamp,
    PRIMARY KEY (ticket_num,created_dt)
) WITH CLUSTERING ORDER BY (created_dt DESC)

TABLE_3

CREATE TABLE ticket_info_division(
     ticket_num text,
     created_dt ts,
     division text
     PRIMARY KEY ((ticket_num, created_dt), division)
)

并合并所有结果?

1 个答案:

答案 0 :(得分:2)

  

我应该为每个查询条件创建多个表吗?

是的,这是Cassandra数据建模的基础,我们称之为非规范化。现在,随着物化视图的引入,开发人员更容易,因为基表与所有视图同步的负担由Cassandra完成。在此处阅读更多内容:http://www.doanduyhai.com/blog/?p=1930