2014-04-07 22 views
1

我正在使用帶有兩個節點的Datastax Cassandra 3.1.4。我用CqlStorage()在表中運行了12百萬行的豬,但我發現只有一個地圖運行一個簡單的豬命令。Datastax Cassandra PIG只運行一個MAP

我試着在我的豬關係中改變split_size,但它沒有奏效。

這是我的示例查詢。

x = load'cql://Mykeyspace/MyCF?split_size=1000' using CqlStorage(); 
y = limit x 500; 
dump y 

我沒有找到我的mapred-site.xml中input.split.size財產我假設默認分割大小是64 * 1024

我試圖set pig.splitCombination false;

現在它採取513我從Hive嘗試了同樣的事情

我已經從Hive連接到Cassandra,並給出了一個簡單的選擇所有查詢,其中col1> value這個表只有10個記錄但仍然運行513個地圖。

請幫我在這

感謝

+0

可能重複的[Pig&Cassandra和DataStax分裂控制](http://stackoverflow.com/questions/19575475/pig-cassandra-datastax-splits-control) – nate

回答

1

試試這個設置:

set pig.splitCombination false; 

默認情況下,豬會combine what it considers small splits into a single map

+0

嗨psanford, 我的目標是增加no .of記錄從cassandra讀取。 默認情況下,它會讀取每個地圖64k行,但這裏不是很好。 我有大約1200萬行,如果我服務pig.splitCombination爲false它採取513地圖。 請在這幫我 – sudheer

+0

我的目標是增加沒有記錄從cassandra讀取。默認情況下,它每個地圖讀取64k行,但這裏不是那麼好。我有大約1200萬行,如果我將pig.splitCombination設置爲false,它將會拍攝513張地圖。請幫助我,現在我試圖從蜂巢卡桑德拉冒險是一樣的513地圖 – sudheer

+0

我想有一些問題與卡桑德拉屬性,請讓我知道如果我能做到這一點,因爲默認情況下,豬會結合小分裂和HIVE不會。 因此,無論何時它正在運行精確的513地圖,如果小分裂或不合並。 請幫我在這 – sudheer