2017-02-28 86 views
0

在Bucketing中,在配置單元的哪個階段創建桶文件?在配置單元中創建桶文件時

create table emp(id int, name string, country string) 
clustered by(country) 
INTO 2 BUCKETS 
row format delimited 
fields terminated by ',' 
stored as textfile ; 

如果我有20個桶和只有4行將創建多少個文件?

回答

0

存儲桶是在創建表格時創建的。它們將作爲您的表目錄中的獨立文件位於您的Hive倉庫中。一旦你在你的桶表中插入新記錄Hive將計算桶列值的散列值,並獲得桶文件的指針。爲了您的20桶,你將有開始後20個空文件,但您的4條記錄的確切位置將取決於哈希函數的在鬥列值的結果:

**record.country.value => hashfunction(record.country.value) = bucketNumber** 

您可以通過以下的重現在這個article

中的桶表部分中描述的步驟