2013-02-08 72 views
3

我想澄清。我有以下層次結構 -列家庭,超級列家族,卡桑德拉超級列

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

我想在Cassandra數據庫中表示Person。我希望每個人都可以通過他的SSN(未包含在上述層次結構中)進行查詢。

如果這是一個HBase架構,我會打電話作爲我的表。我會SSN作爲我行鍵和personal_details以及official_details作爲列家庭和姓名,年齡,地址,僱員& cubicle_number爲列。什麼是這些層次結構的cassandra命名法,以及cassandra中這個層次結構可能的創建查詢是什麼?

+0

即使在HBase中,我可能也不會製造這兩個列系列。當你有很多列和完全不同的家庭訪問模式時,列家族非常有用。在這種情況下,我只是將所有的列添加爲personal_age,official_id等。 –

+0

@ ArnonRotem-Gal-Oz,我剛剛發佈了一個易於理解的示例。 Din意味着在cassandra或hbase中創建一個這樣的模式。 :)只是想通過一個小試圖來溝通我的要求。 –

回答

3

檢查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 
); 

關於卡桑德拉的超級柱,現在是not recommended

+0

意圖不是創建一個這樣的表結構。只需要知道創建這樣的層次結構的腳本。感謝任何幫助。 –