解密数据分区


   数据分区分为两种,动态分区和静态分区,那么两种分区是怎样创建的呢?它们各自怎么来使用呢?

一、动态分区

1、从已有的数据动态创建新的分区

wKiom1h4PGfz5hqWAACueiqgcN0527.png-wh_50

2、分区基于最后一个列值自动创建,如果分区不存在,它将被创建;

如果分区存在,将被覆盖。

二、静态分区

1、 静态分区示例:按天分区呼叫日志

Loudacre的客户服务电话系统生成了详细的呼叫日志,分析员使用这些数据来汇总前一天的呼叫量,比如:

wKioL1h4PHTTB4xfAACFprCGq_w695.png-wh_50

日志按天生成,比如:

wKiom1h4PIKRkKQ4AAAxQ_n8RQg608.png-wh_50

在上面的的示例中,数据基于列值自动分区。现在我们使用静态分区,

因为数据文件不包含分区数据,分区表按照同样的方式来定义:

wKioL1h4PJLD68nSAADocrxbS28851.png-wh_50

2、加载数据到静态分区

使用静态分区,你可以根据需要创建新分区,比如:为每天的呼叫日志数据添加一个分区:

wKiom1h4PJ-T48fwAABQ2Gsqi9A989.png-wh_50

这个命令将添加分区到表的元数据,并创建子目录
/user/hive/warehouse/call_logs/call_date=2014-10-02

然后加载一天的数据到正确的分区

wKioL1h4PMqTTkMBAACDH5rGWOE743.png-wh_50

这个命令移动HDFS文件call-20141002.log到分区子目录

3、覆盖分区的所有数据

wKioL1h4PN3TSmBEAAATkNk9m9k813.png-wh_50

以上就是关于动态分区和静态分区的介绍,那么在ImpalaHive中,数据是怎样分区的呢?后续将继续分享。不过技术都是有门槛的,大家在实际生活中要多学习和交流,不断汲取别人好的经验知识,改善自己的知识架构。而且当今大数据还在发展中,各方面不算是很成熟,更需要不断去追求,才可以不落伍,这里推荐一个微信公众号“大数据cn,还不错,有时间可以去关注一下。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章