【问题标题】:Column Family, Super Column Family, Super Column in CassandraCassandra 中的列族、超级列族、超级列
【发布时间】:2013-01-24 00:29:13
【问题描述】:

我想澄清一下。我有以下层次结构 -

Person: {
    personal_details:{
        name:aa
        age:aaa
        ddress:aa
    }
    official_details:{
        employeeid:aa
        cubicle_number:aa
    }
}

我想在 Cassandra 数据库中表示 Person。我希望每个人都被他的 SSN 查询(不包括在上述层次结构中)。

如果它是 HBase 架构,我会调用 Person 作为我的表。我会将 SSN 作为我的行键,将 personal_details 以及 official_details 作为列族和 name,age,address,employeeid &隔间数 作为列。这些层次结构的 cassandra 命名法是什么?在 cassandra 中这个层次结构的可能创建查询是什么?

【问题讨论】:

  • 即使在 HBase 中,我也可能不会创建这两个列族。当您有很多列并且族的访问模式完全不同时,列族很有用。在这种情况下,我只需将所有内容添加为列 personal_age、official_id 等。
  • @ArnonRotem-Gal-Oz,为了便于理解,我刚刚发布了一个示例。 Din 的意思是在 cassandra 或 hbase 中创建一个这样的模式。 :) 只是想通过一个小例子传达我的要求。

标签: cassandra hbase datastax-enterprise


【解决方案1】:

检查DataStax documentation on Anatomy of a table

在这种情况下,在 Cassandra 中创建您正在寻找的数据结构,CQL 将与 SQL 非常相似。

CREATE TABLE people 
(
  ssn text PRIMARY KEY,
  name text,
  age int,
  address text,
  employeeid int,
  cubicle_number int
);

关于 Cassandra 上的超级专栏,现在是not recommended

【讨论】:

  • 意图不是创建一个这样的表结构。只需要知道创建这样一个层次结构的脚本。感谢任何方式的帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多