hive与数据仓库篇

本文探讨了Hive在数据仓库中的常见问题,包括小文件合并、存储格式与压缩、ETL工具选择、数据质量保障、数据仓库分层设计、优化经验等。此外,还涉及到了Hive的建模方式、数据同步工具、UDF函数使用、数据倾斜处理和ACID特性的应用。
摘要由CSDN通过智能技术生成

问题1、在hive中如何处理小文件合并问题

  • 有时候为了避免小文件合并,我们会设置小文件合并
set mapred.max.split.size=112345600;
set mapred.min.split.size.per.node=112345600;
set mapred.min.split.size.per.rack=112345600;
set hive.input.format= org.apache.hadoop.hive.ql.io.CombineHiveInputFormat;
  • 这个参数表示执行前进行小文件合并,前面三个参数确定合并文件块的大小,大于文件块大小128m的,按照128m来分隔,小于128m,大于100m的,按照100m来分隔,把那些小于100m的(包括小文件和分隔大文件剩下的),进行合并

问题2、hive的存储格式,以及压缩算法

  • hive的数据存储格式主要有:TEXTFILE(行式存储)、SEQUENCEFILE(行式存储)、ORC(列式存储)、PARQUET(列式存储)
  • 列式存储相对行式存储来说,它的数据压缩效率更高
  • ORC存储指定压缩方式有one of NONE(无压缩)、ZLIB、SNAPPY
  • hive表的数据存储格式一般选择:orc或parquet。压缩方式一般选择snappy

问题3、是用什么ETL工具进行hive中数据的ETL

问题4、如何保证hive中数据的质量

1.从技术层面上:构建一套高效、健壮的ETL程序去保证数据清洗、装换后数据的正确性和一致性;
2.从流程层面上:整个ETL是多个任务的,按步骤顺序执行的一个过程,后置任务依赖前置任务,定期执行,整个流程需要自动化,并且那个环节出现了问题,给予预警,通知相关维护人员及时处理;
3.从管理层面上:数据仓库构建在公司各个业务系统之上,它是一面镜子,很多时候它能反映出业务系统的问题,所以需要管理层的支持和约束。
https://blog.csdn.net/LwpHelloWorld/article/details/100146696

问题5、hive数据仓库的设计,项目中分了几层,每层有什么意义

  • 分三层:源数据层、数据仓库层、数据应用层
  • 源数据层(ODS):此层数据无任何更改,直接沿用外围系统数据结构和数据,不对外开放;为临时存储层,是接口数据的临时存储区域,为后一步的数据处理做准备。
  • 数据仓库层(DW):也称为细节层,DW层的数据应该是一致的、准确的、干净的数据,即对源系统数据进行了清洗(去除了杂质)后的数据。
  • 数据应用层(DA或APP):前端应用直接读取的数据源;根据报表、专题分析需求而计算生成的数据。
    在这里插入图片描述

问题6、hive优化经验

Hadoop参数调优

一、 hdfs-site.xml 配置文件

1、 dfs.blocksize

参数:hadoop文件块大小

描述:新文件的默认块大小,以字节为单位,默认 134217728 字节。

可以使用以下后缀(大小写不敏感):k(kilo)、m(mega)、g(giga)、t(tera)、p(peta)、e(exa)来指定大小(如128k、512m、1g等),

或者以字节为单位提供完整的大小。

2、 dfs.namenode.handler.count

参数:namenode的服务器线程数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值