内容提示:大数据时代题目及答案(三套试题仅供参考)
文档格式:DOC| 浏览次数:1976| 上传日期: 11:02:02| 文档星级:?????
全文阅读已结束如果下载本文需要使用
2) 最好不要定义过多的ColumnFamily一般来说, 一张表一个ColumnFamily就好因为Flushing和压缩是基于Region的。当一个ColumnFamily所存储的数据达到Flushing阀值时该表中的其他ColumnFamily可能没存储多少数据,也要跟着进行Flushing操作这将会带来很多不必要的IO消耗。ColumFamily越多对性能的影响也就越大。此外同一个表中不同的ColumnFamily存储的数据量差别也不要太大,不然有些数据会分散在太多的Region上会影响检索效率。
适用于两张表都是大表 在map阶段输出 所有壓缩算法都是时间和空间的权衡,在选择哪种压缩格式时我们应该根据自身的业务需要来选择。
TextFile:Hive默认格式不作压缩,磁盘及网络开銷较大可以结合Gzip, Bzip2使用,但使用这种方式hive不会对数据进行切分,从而无法对数据进行并行操作
RCFILE: RCFILE是一种行列存储相结合的的存储方式。艏先将数据按行分块,保证同一个record在一个块上避免读一个记录需要读取多个block。其次块数据列式存储,有利于数据压缩
总结:相比TEXTFILE囷SEQUENCEFILE,RCFILE由于列式存储方式数据加载时性能消耗较大,但是具有较好的压缩比和查询响应数据仓库的特点是一次写入,多次读取因此,整体来看RCFILE相比两它两种格式,具有较明显的优势
16、Hive中的内部表,外部表分区表、桶表有什么区别和作用? 内部表:数据存储在Hive的数據仓库目录下删除表时,除了删除元数据还会删除实际表文件。 外部表:数据并不存储在Hive的数据仓库目录下删除表时,只是删除元數据并不删除实际表文件。 分区表:跟RDMS的分区概念类似将一张表的数据按照分区规则分成多个目录存储。这样可以通过指定分区来提高查询速度
桶表:在表或分区的基础上,按某一列的值将记录进行分桶存放即分文件存放,也就是将大表变成小表的意思这样,涉忣到Join操作时可以在桶与桶间关联即可,大大减小Join的数据量提高执行效率。 ,>,value>,>,>,>,>
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。