码迷,mamicode.com
首页 > 其他好文 > 详细

MapReduce/Hbase进阶提升(原理剖析、实战演练)

时间:2016-04-12 00:00:38      阅读:476      评论:0      收藏:0      [点我收藏+]

标签:

什么是MapReduce?

    MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)",和他们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。他极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。 

 

有什么用途?

在Google,MapReduce用在非常广泛的应用程序中,包括“分布grep,分布排序,web连接图反转,每台机器的词矢量,web访问日志分析,反向索引构建,文档聚类,机器学习,基于统计的机器翻译...”值得注意的是,MapReduce实现以后,它被用来重新生成Google的整个索引,并取代老的ad hoc程序去更新索引。

MapReduce会生成大量的临时文件,为了提高效率,它利用Google文件系统来管理和访问这些文件。

在谷歌,超过一万个不同的项目已经采用MapReduce来实现,包括大规模的算法图形处理、文字处理、数据挖掘、机器学习、统计机器翻译以及众多其他领域。

什么是HBase?

HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。

 

有什么用途?

HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。

与Yonghong Z-Data Mart等商用大数据产品不同,HBase是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为其文件存储系统,HBase利用Hadoop HDFS作为其文件存储系统;Google运行MapReduce来处理Bigtable中的海量数据,HBase同样利用Hadoop MapReduce来处理HBase中的海量数据;Google Bigtable利用 Chubby作为协同服务,HBase利用Zookeeper作为对应。

 

课程介绍

      本课程主要针对MapReduce和HBase的高阶应用做深入的讲解和实战演练

课程针对人群

1、本课程适合于有一定java基础知识,对数据库和sql语句有一定了解,熟练使用linux系统的技术人员,特别适合于想换工作或寻求高薪职业的人士

2、最好有Greenplum Hadoop、Hadoop2.0、YARN等大数据基础,学习过北风课程《Greenplum 分布式数据库开发入门到精通》、《全面深入Greenplum Hadoop大数据分析平台》、《Hadoop2.0、YARN深入浅出》为最佳

 

 

课程大纲 

MapReduce多语言编程(5课时)

?MapReduce编程接口

?Java编程接口实例解析

?Hadoop Streaming实现方式

?Hadoop Streaming编程实战(C++,PHP,PYTHON)

?Hadoop Streaming原理剖析

?Hadoop Pipes的编程实例

?Hadoop Pipes的原理剖析

MapReduce高阶实现(14课时)

?复杂的MapReduce应用

  K-means聚类、贝叶斯分类等

?工作流编程实例及原理剖析

  JobControl、ChainMapper/ChainReducer

?Hadoop工作流引擎

?常用MapReduce优化技巧

  配置多个reducer

  设置Stream的处理格式

  控制分片的大小

  避免分片

  输入格式:文本输入、多种类型输入

  输出控制:多个输出、延迟输出

  实战:数据分区

?MapReduce高级特性

  计数器、内置计数器

  实例:用户自定义计数器

  MapReduce部分排序的实现

  实例:MapReduce全排序

  Terasort算法分析

  实例:MapReduce实现二次排序

  连接、Map端连接的实现

  实例:Reduce端连接

  连接类型、连接策略介绍

  重分区连接框架的实现

  复制连接框架的实现

  实例:半连接

  全局作业参数/数据文件传递

HBase编程实践及案例分析(10课时)

?HBase基础精讲

?HBase Java编程实例

?HBase多语言编程

  Thrift安装、服务配置

  HBase C++编程实例

  HBase Python编程实例

?HBase MapReduce编程基础

?实战:HBase MapReduce编程

?Hbase案例:OpenTSDB的实现

?基于HBase的爬虫调度库

?基于HBase的爬虫索引库

  银行人民币查询系统

 

MapReduce/Hbase进阶提升(原理剖析、实战演练)

标签:

原文地址:http://www.cnblogs.com/destim/p/5380593.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!