今天,我们来谈谈什么是Hadoop框架的一些信息。很多朋友对Hadoop框架是什么的一些信息感兴趣。边肖今天整理了一些资料,希望能帮助到有需要的朋友。
Hadoop是一个开源软件框架,用于在商业硬件集群上存储数据和运行应用程序。它为任何类型的数据提供大容量存储、巨大的处理能力以及处理几乎无限的并发任务或工作的能力。
Hadoop是一个开源软件框架,用于在商业硬件集群上存储数据和运行应用程序。它为任何类型的数据提供大容量存储、巨大的处理能力以及处理几乎无限的并发任务或工作的能力。
随着万维网在20世纪末和21世纪初的发展,搜索引擎和索引被创建来帮助在基于文本的内容中定位相关信息。早期,搜索结果是由人类返回的。但是随着网络从几十页增长到几百万页,就需要自动化了。创建了网络爬虫,其中许多是大学主导的研究项目,搜索引擎初创公司起飞(雅虎,AltaVista等。).
其中一个项目是名为Nutch的开源网络搜索引擎的想法——Doug Cutting和Mike Cafarella。他们希望通过在不同的计算机之间分配数据和计算来更快地返回Web搜索结果,以便他们可以同时完成多项任务。与此同时,另一个名为谷歌的搜索引擎项目正在进行中。它基于相同的概念——以分布式和自动化的方式存储和处理数据,以便更快地返回相关的Web搜索结果。
2006年,Cutting加入雅虎,并带来了Nutch项目和基于谷歌早期工作的自动化分布式数据存储和处理的想法。Nutch项目是分的——网络爬虫部分还是Nutch,分布式计算和处理部分是Hadoop(以Cutting的儿子的玩具大象命名)。2008年,雅虎将Hadoop作为开源项目发布。今天,Hadoop的框架和技术生态系统由非营利性的Apache软件基金会(ASF)管理和维护,ASF是一个由软件开发人员和贡献者组成的全球社区。
Hadoop为什么重要?
能够快速存储和处理大量任何类型的数据。随着数据的数量和种类不断增加,尤其是来自社交媒体和物联网(IoT)的数据,这是一个关键的考虑因素。
计算能力。Hadoop的分布式计算模式可以快速处理大数据。使用的计算节点越多,处理能力就越强。
容错。和数据应用程序处理可以防止硬件故障。如果一个节点出现故障,作业将自动重定向到其他节点,以确保分布式计算不会失败。自动存储所有数据的多个副本。
灵活性。与传统的关系数据库不同,您不必在存储数据之前对其进行预处理。您可以根据需要存储任意多的数据,并在以后决定如何使用这些数据。这包括文本、图像和视频等非结构化数据。
成本低。开源框架是免费的,使用商业硬件存储大量数据。
可扩展性。通过简单地添加节点,您可以轻松地扩展您的系统来处理更多的数据。几乎不需要管理。
Hadoop面临哪些挑战?
MapReduce编程并不适合所有问题。这对于简单的信息请求和可以被分成独立单元的问题是有益的,但是对于迭代和交互的分析任务是低效的。MapReduce是文件密集型的。因为节点除了通过排序和混洗之外不相互通信,所以迭代算法需要多个映射-混洗/排序-归约阶段来完成。这将在MapReduce阶段之间创建多个文件,对于高级分析计算来说效率很低。
有一个众所周知的人才缺口。很难找到一个有足够Java技能的入门级程序员通过MapReduce提高工作效率。这就是为什么分销商竞相将关系(SQL)技术置于Hadoop之上的原因之一。找到具有SQL技能而不是MapReduce技能的程序员要容易得多。而且Hadoop管理看起来是半艺术半科学,需要操作系统、硬件、Hadoop内核设置等底层知识。
数据安全。另一个挑战是分散数据的安全性,尽管新的工具和技术正在出现。Kerberos认证协议是保护Hadoop环境的重要一步。
完善的数据管理和治理。Hadoop没有用于数据管理、数据清理、治理和元数据的易用的全功能工具。特别是缺乏数据质量和标准化工具。
一个有趣的事实:“Hadoop”是一只黄色玩具大象的名字,由它的发明者之一的儿子拥有。
以上是Hadoop框架和这方面比较的一些信息。边肖整理的资料希望对童鞋们有所帮助。
标签:
免责声明:本文由用户上传,如有侵权请联系删除!