美文网首页大数据,机器学习,人工智能程序员大数据
这可能是全网“知识点最全”的Hadoop学习指南

这可能是全网“知识点最全”的Hadoop学习指南

作者: yoku酱 | 来源:发表于2019-05-24 11:14 被阅读13次

     

    对于Hadoop初学者,最好不要告诉他什么定义,什么框架云云,因为很容易当成负担,实际上它也只是个工具。

    搞清楚Hadoop帮助我们解决了什么问题?

    或者换个角度想,没有Hadoop,我们做同样一项工作会增加什么任务?

    想清楚了这些,你才可以心怀期待的去慢慢学习它。(当然,如果你已经知道了这些,请直接跳到第二趴)

    【大数据开发学习资料领取方式】:加入大数据技术学习交流群522189307,点击加入群聊,私信管理员即可免费领取

    理解了Hadoop为什么而来,也就知道了他的本质:

    1. Hadoop最早起源于Nutch。

    Nutch的设计目的是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能;

    但随着抓取网页数量的增加,遇到了严重的可扩展性问题:如何解决数十亿网页的存储和索引问题。

    2. 后来谷歌发表的两篇论文为该问题提供了可行的解决方案。

    分布式文件系统(GFS),用于处理海量网页存储

    分布式计算框架(MapReduce),用于海量网页的索引计算问题

    3. 到2008年,Hadoop成为Apache顶级项目。

    4. 到现在hadoop已经形成了完善的生态圈。

    简单来说,对上了一定规模,特别是当公司每天产生TB级以上数据需要处理的时候,用mysql技术栈已经越来越难解决,甚至解决不了,这时就需要hadoop技术稳定的完成这些数据快速的存储、抽取、计算和分析。

    目前,Hadoop在帮助我们做什么?

    从搜索引擎、数据备份、数据仓储、数据挖掘到数据分析,它的应用几乎大涵盖了大数据应用的各种可能性:

    大数据量存储:分布式存储

    日志处理:Hadoop擅长这个

    海量计算:并行计算

    ETL:

    数据抽取到oracle、mysql、DB2、mongdb及主流数据库

    数据分析:

    用扩展性应对大量的写操作—Facebook构建了基于HBase的实时数据分析系统

    机器学习:比如Apache Mahout项目

    搜索引擎:hadoop + lucene实现

    数据挖掘:目前比较流行的广告推荐

    用户细分特征建模

    个性化推荐等

    不管是国外的著名公司Google、Yahoo!、微软、亚马逊、 EBay、FaceBook、Twitter、LinkedIn、Cloudera、Hortonworks等;

    又还是国内的中国移动、阿里巴巴、华为、腾讯、百度、网易、京东商城等,都在使用Hadoop及相关技术解决大规模化数据问题,以满足公司需求和创造商业价值。

    或许你所在的公司还没有像Google、华为、腾讯一样有如此大规模的数据需要处理,但数据对于公司的意义却在与日俱增,时刻准备好自己的竞争力,面对规模化的必然趋势。

     2.如何学习Hadoop?要学些什么?

    以Hadoop为技术圆心,掌握大数据生态体系

    想叩开大数据的大门,必须要学会Hadoop。那么,我们应该学习Hadoop的哪些内容呢?

    围绕Hadoop已经形成了一个巨大的生态环境。

    狭义的 Hadoop 核心包括HDFS 和  MapReduce ,DFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。

    和 Hadoop 核心密切相关的,还包括面向具体领域、应用的ZooKeeper、Hive、Pig 、HBase等扩展组件。

    它们提供了互补性的服务,共同提供了一个海量数据处理的软件生态系统。

    HDFS: Hadoop体系数据存储管理的基础。

    是一个高度容错的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行。

    HDFS 简化了文件的一致性模型,通过流式数据访问,提供高吞吐量应用程序数据访问功能。

    MapReduce: 进行大数据量的计算模型,将数据切分分布在各个服务器上计算再合并结果,大大加快了计算速度。

    Hive: 一个数据仓库工具,通过类SQL语句快速实现数据 ETL(抽取、转换和加载)、数据存储管理和大型数据集的查询和分析,而不必开发专门的MapReduce应用。

    2009年时facebook就有30%的非编程人员使用HiveQL进行数据分析;淘宝搜索中的自定义筛选也使用Hive。

    Pig: 大规模数据分析工具,降低了对大型数据集进行分析和评估的门槛。

    它提供的语言编译器会把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。

    利用Pig还可以做高级的数据处理,包括Twitter、LinkedIn 上用于发现您可能认识的人,可以实现类似Amazon.com的协同过滤的推荐效果。

    淘宝的商品推荐也是!在Yahoo的40%的Hadoop作业是用pig运行的,包括垃圾邮件的识别和过滤、用户特征建模。

    HBase: 针对结构化数据的高可靠性、高性能、面向列、可伸缩的面向列的动态模拟数据库;

    提供了对大规模数据的随机、实时读写访问,将数据存储和并行计算完美地结合在一起。

    Sqoop: 实现Hadoop和关系型数据库中的数据自动转移。

    Zookeeper: 解决分布式应用中经常遇到的一些数据管理问题。如统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。

    Flume: 分布的、可靠的、高可用的海量日志聚合的系统,可用于日志数据收集,日志数据处理,日志数据传输。

    【大数据开发学习资料领取方式】:加入大数据技术学习交流群522189307,点击加入群聊,私信管理员即可免费领取

    Hue: 是一个基于WEB的监控和管理系统,实现对HDFS,MapReduce/YARN, HBase, Hive, Pig的web化操作和管理。

    相关文章

      网友评论

        本文标题:这可能是全网“知识点最全”的Hadoop学习指南

        本文链接:https://www.haomeiwen.com/subject/qzxgzqtx.html