大数据学习week2

MapReduce与Hive:大数据处理详解

MapReduce

map阶段:是将原数据(存储在hdfs上)按照处理的业务逻辑转换为k-v数据格式
reduce阶段:对map阶段处理完的数据进行汇总,按照需求进行处理,最终输出到hdfs,reduce阶段最终输出到hdfs是也是l-v的数据格式

什么是切片

InputSplit表示由单个Mapper处理的数据块是逻辑块(inputSplit)而不是物理块(block)

块是数据的物理表示。 Split是Block中数据的逻辑表示

InputSplit尊重逻辑记录边界

在MapReduce执行期间,Hadoop扫描块并创建InputSplits,每个InputSplit将分配给各个mapper进行处理

如何控制map的数量?

  1. 自定义逻辑块数量
  2. 修改数据块的大小

combine和reduce本质区别:

combiner是MapReduce中的一种优化,允许在shuffle和排序阶段之前进行本地聚合。
reduce是将不同节点的map输出进行聚合

分区(partition):

  1. 当Mapper输出时它会被分区,这意味着它将被写入分区程序指定的位置
  2. 分区程序负责划按key进行划分将key-value对分配给reducer
  3. 默认的分区程序涉及计算密钥的哈希值,然后使用reduce的数量获取该值的mod(取模)

Apache Hive

什么是数据仓库

  1. 数据仓库解决方案构建在hadoop之上
  2. 提供类似SQL的查询语言Hive Query Language-HQL,它具有最小的学习曲线
    强调文本 强调文本

Hive的优势和特点

  1. 提供简单和优化的模型,编码少于MR,只需要写SQL,底层会自动转化为MapReduce
  2. hql和SQL绝缘油类似的语法和高生产率
  3. hive支持在不同的就计算框架上运行(默认是MapReduce,Tez比MapReduce性能快乐50倍)
  4. 支持用户定义的函数,脚本和自定义格式
  5. 用于ETL和BI工具的成熟JDBC和ODBC驱动程序
  6. 适合做数据的批处理,即离线处理

hive不存储数据,是一个ONAP引擎

学习回顾

  1. MapReduce处理流程
  2. MapReduce的代码编译
  3. hive和MapReduce的处理速度
  4. hive基本语句的掌握
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值