专栏首页大数据学习与分享Hive数据导入HBase引起数据膨胀引发的思考

Hive数据导入HBase引起数据膨胀引发的思考

最近朋友公司在做一些数据的迁移,主要是将一些Hive处理之后的热数据导入到HBase中,但是遇到了一个很奇怪的问题:同样的数据到了HBase中,所占空间竟增长了好几倍!详谈中,笔者建议朋友至少从几点原因入手分析:

  1. HBase中的数据相对于Hive中的数据会新增一些附加信息导致磁盘占用的增加,比如布隆过滤器
  2. Hive中的数据是否进行过压缩,比如snappy,压缩比还是很高的
  3. row key和列族都会占据一定的空间,当数据量较大时,仅二者就会占据很多不必要的空间
  4. 建议将相同查询场景下的几个常用的列的值拼接成一个列,节省KeyValue结构化带来的开销

Hive和HBase都可以作为存储系统,不禁思考引入HBase做数据存储的原因?

  1. 通过scan、get可以批量、单条获取数据,通过bulkload、put可以批量、单条导入数据
  2. 在实际生产环境,通常将计算和存储进行分离,保证集群规模水平可扩展,易于提高整体的吞吐。通过单机性能优化和集群的扩容,确保业务大幅增长时,存储不能没有成为系统的瓶颈
  3. 弱schema的特性能够很好的应对业务数据频繁变化的情况,也能够方便支持一些特殊业务场景的数据逻辑

当然,除了上述原因,还有很多涉及底层的原理环节和实际的业务场景需求,这就要求我们对HBase有足够的了解。

本文分享自微信公众号 - 大数据学习与分享(bigdatalearnshare),作者:大数据学习与分享

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-02-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 监听MySQL的binlog日志工具:Canal、Maxwell、mysql_streamer对比

    之前通过文章介绍过canal,本篇文章主要简述一下Canal、Maxwell、mysql_streamer对比。

    大数据学习与分享
  • 通过BulkLoad快速将海量数据导入到HBase

    【前言:笔者之前通过文章《通过Spark生成HFile,并以BulkLoad方式将数据导入到HBase》介绍过如何利用Spark通过BulkLoad方式将数据导...

    大数据学习与分享
  • 从HBase底层原理解析HBASE列族不能设计太多的原因?

    通过上述文章的介绍,我们了解到: HBase底层存储依赖于HDFS,HBase中table在行的方向上分割为多个region,它是HBase负载均衡的最小单元,...

    大数据学习与分享
  • 基于HBase的大数据存储的应用场景分析

    本文结合两个实战场景就基于 HBase 的大数据存储做了简单的分析,并对 HBase 的原理做了简单的阐述。

    CSDN技术头条
  • 浅析Hbase

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    week
  • 内含面试|一文搞懂HBase的基本原理

    温馨提示:本文内容较长,如果觉得有用,建议收藏。另外记得分享、点赞、在看,素质三连哦!

    数据社
  • HBase数据模型(1)

    HBase数据模型(1) HBase数据模型(2) 1.0 HBase的特性 Table HBase以表(Table)的方式组织数据,数据存储在表中。...

    王小雷
  • HBase 深入浅出

    HBase 深入浅出 HBase 在大数据生态圈中的位置 提到大数据的存储,大多数人首先联想到的是 Hadoop 和 Hadoop 中的 HDFS 模块。大家熟...

    搜云库
  • Hadoop学习笔记—15.HBase框架学习(基础知识篇)

    HBase是Apache Hadoop的数据库,能够对大型数据提供随机、实时的读写访问。HBase的目标是存储并处理大型的数据。HBase是一个开源的,分布式的...

    Edison Zhou
  • HBase多模的机遇与挑战

    首先提前祝大家中秋快乐,今天我们分享的文章来自云栖大会嘉宾:阿里云专家 封神的分享

    大数据和云计算技术

扫码关注云+社区

领取腾讯云代金券