2013-02-08 11 views
3

Я хотел бы уточнить. У меня есть следующая иерархия:Column Family, Super Column Family, Super Column in Cassandra

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

Я хотел бы представлять Person в базе данных Cassandra. Я хотел бы, чтобы каждый человек был запрошен его SSN (не входит в вышеуказанную иерархию).

Если бы это была схема HBase, я бы назвал Person моим столом. Я бы SSN как мой ключ строки и personal_details, а также official_details как семейств столбцов и имя, возраст, адрес, EmployeeID & cubicle_number как столбцы. Что такое номенклатура кассандры для этих иерархий и какими могут быть возможные запросы создания для этой иерархии в кассандре?

+0

Даже в HBase я бы, вероятно, не сделал эти две семейства колоний. семейства столбцов полезны, когда у вас много столбцов и совершенно разные шаблоны доступа для семей. В этом случае я бы просто добавил все как столбцы personal_age, official_id и т. Д. –

+0

@ ArnonRotem-Gal-Oz, я просто разместил пример для удобства понимания. Din означает создание одной такой схемы в кассандре или в hbase. :) Просто хотел сообщить свое требование с помощью небольшого экзамена. –

ответ

3

Проверьте DataStax documentation on Anatomy of a table.

В этом случае, создавая структуру данных, которую вы ищете в Кассандре, CQL будет очень похож на SQL.

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

О супер столбцов на Кассандре, теперь not recommended.

+0

Намерение заключалось в том, чтобы не создавать одну такую ​​структуру таблицы. Просто нужно знать сценарий для создания такой иерархии. Спасибо за помощь. –