《MapReduce 2.0源码分析与编程实战》一1.3 简单、粗暴、有效——这就是Hadoop

简介:

本节书摘来异步社区《MapReduce 2.0源码分析与编程实战》一书中的第1章,第1.3节,作者: 王晓华 责编: 陈冀康,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.3 简单、粗暴、有效——这就是Hadoop

2005年,IT界先锋Apache基金会率先提出了一种先进的不以关系型数据为基础的大数据处理模型——Hadoop。

Hadoop就是解决面向互联网及其他来源的大数据分析和并行处理的计算模型。它的诞生引起了学术界、金融界以及商业界的广泛关注。Hadoop创建之初的宗旨就是让使用者能够通过使用大量普通的服务器搭建相应的服务器集群来实现大数据的并行处理,其优先考虑的是数据扩展性和系统的可用性。

简单、粗暴、有效——这就是Hadoop。

Hadoop是一个简单的大数据分布式处理框架,可以使程序设计人员和数据分析人员在不了解分布式底层细节的情况下,开发分布式程序。

Hadoop是一款粗暴的数据处理工具程序。读者在学习Hadoop以前,可能习惯了用精巧的算法、优雅的程序对数据进行处理。但是到Hadoop这里,可以套用电影里的一句台词,“她来了,一切都变了”。Hadoop创新了数据获取和处理的理念,不再需要使用以往的建立索引来对数据分类,通过相应的表链接将需要的数据匹配成我们需要的格式。Hadoop没有索引,只有蛮力。

小提示:
Hadoop通过蛮力对数据进行处理。一台计算机处理速度慢,那么就找十台计算机同时进行处理。十台计算机处理慢,找一百台同时进行处理。一百台计算机还是处理慢,那么就找一千台同时进行处理。这也是Hadoop处理数据的精髓。

Hadoop是一款有效的数据处理工具程序,充分利用集群的能力对数据进行处理,其核心就是MapReduce数据处理。通过对数据的输入、分拆与组合,可以有效地提高数据管理的安全性,同时也能够很好地访问被管理的数据。

Hadoop由开源的Java程序编写而成,是由Apache基金会开发的完全免费使用的开源程序(Open Source)。Hadoop开创性地使用了一种从最底层结构上就与现有技术完全不同但是更加具有先进性的数据存储和处理技术。使用Hadoop无需掌握系统的底层细节,更不需要购买价格不菲的软硬件平台,可以无限制地在价格低廉的商用PC上搭建所需规模的评选数据分析平台。即使从只有一台商用PC的集群平台开始,也可以在后期任意扩充其内容。有了Hadoop后,再没有数据被认为是过于庞大而不好处理或存储的了,从而解决了之前无法解决的对海量数据进行分析的问题,发现了其中潜在的价值。

通过使用自带的数据格式和自定义的特定数据格式,Hadoop基本上可以按照程序设计人员的要求处理任何数据,不论这个数据类型是什么样的。数据可以是音乐、电影、文本文件、Log记录等,都可以作为输入存储在Hadoop中。通过编写相应的MapReduce处理程序,Hadoop会帮助用户获得任何想要的答案。

“魔镜魔镜告诉我,这个背后有什么?”Hadoop还可以挖掘任何看起来毫无关联性的数据背后隐藏的各种信息,将其共同连接构建和呈现出来,从而能够提供其中包含的各种商业信息和价值规律,让使用者根据更多的具有规律性的参考信息作出决策。

“只要给我一个支点,我就能撑起地球。”Hadoop或许就是那个撑起大数据处理的支点。

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
567 2
|
数据采集 分布式计算 Hadoop
使用Hadoop MapReduce进行大规模数据爬取
使用Hadoop MapReduce进行大规模数据爬取
|
分布式计算 资源调度 Hadoop
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
446 3
|
分布式计算 资源调度 数据可视化
Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看
Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看
546 1
|
分布式计算 资源调度 Hadoop
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
347 1
|
SQL 分布式计算 关系型数据库
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
487 0
|
SQL 分布式计算 关系型数据库
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
304 0
|
SQL 分布式计算 关系型数据库
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
401 0
|
数据采集 SQL 分布式计算
|
分布式计算 Hadoop Java
Hadoop MapReduce编程
该教程指导编写Hadoop MapReduce程序处理天气数据。任务包括计算每个城市ID的最高、最低气温、气温出现次数和平均气温。在读取数据时需忽略表头,且数据应为整数。教程中提供了环境变量设置、Java编译、jar包创建及MapReduce执行的步骤说明,但假设读者已具备基础操作技能。此外,还提到一个扩展练习,通过分区功能将具有相同尾数的数字分组到不同文件。
299 1

相关实验场景

更多