0
我在蜂巢中創建一個表,動態分區如下動態分區
create table sample(uuid String,date String,Name String,EmailID String,Comments String,CompanyName String,country String,url String,keyword String,source String) PARTITIONED BY (id String) Stored as parquet;
我也有設置在蜂巢外殼
set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.exec.max.dynamic.partitions=100000000;
set hive.exec.max.dynamic.partitions.pernode=100000000;
set hive.exec.max.created.files = 100000000;
下這是一個很好的做法,因爲我如上所示爲每個動態分區配置設置1億個值?
嗨米格爾..謝謝你的迴應,但我想存儲我的數據在動態分區存儲像/output/id=100/data.parquet相同的格式。有什麼辦法可以做到這一點? – wazza
嗨,理論上分區數據(獨立的,如果它是分區或動態分區)總是像我的意思(partitioning_field = value/data.paquet)存儲。 動態地只引用Hive並不需要你明確指定字段分區的值使用常量值(例如字符串),而是hive可以從另一個字段值中檢索它。 – Miguel
是的我知道我想基於id值存儲它。你已經指定使用id作爲分區對於配置單元是一個不好的做法。所以我問是否有任何其他方式來實現像這樣可能是java mapreduce,pig等e – wazza