2012-05-22 46 views
0

我目前正在推薦應用程序,我正在使用cassandra與hadoop和豬地圖/減少工作。 爲了充分利用列名稱屬性,我們的團隊決定使用無價值列和聚合列名稱來存儲數據,例如,特定內容的所有匹配都存儲在具有單個行的列族中,並且每列都是使用以下結構的內容:cassandra +豬與寬列

rowkey = 'single_row' { 
    id_content:hit_date, - 
    . 
    . 
    . 
} 

通過這個模式,我們獲得寬行而不是瘦;問題是,我如何需要操縱Pig中的數據以便將數據存儲在cassandra中並使用此模式?

回答

0

如果您使用複合列,或者您只是串聯id_content和hit_date,我不確定您的評論。

對於正常(即,非複合材料)的列中,模式是:

(key, {(col_name, col_value), ...}) 

在複合列的情況下,相信該模式是以下內容:

(key, {((col_name_part_1, col_name_part_2), col_value), ...}) 

此評估(對於複合列)基於讀取提交的補丁https://issues.apache.org/jira/browse/CASSANDRA-3684

+0

我的方法是連接值。 –

+0

在這種情況下,模式應該是:'(key,{(col_name,col_value),...})' –

+0

我在答案中添加了非複合模式以使其更加完整。 –