首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何开始探索BigData、Hadoop及其生态系统组件?

如何开始探索BigData、Hadoop及其生态系统组件?
EN

Stack Overflow用户
提问于 2014-11-25 20:26:31
回答 5查看 1.1K关注 0票数 1

我刚刚开始探索BigData技术和Hadoop框架。

但是,对如此多的生态系统组件和框架感到困惑。你能建议从一个有条理的学习开始吗?

我的意思是,应该关注哪个生态系统组件?有什么特别的或全部的吗?

非常感谢您的帮助!

随机数

EN

回答 5

Stack Overflow用户

发布于 2014-11-25 21:09:33

几个月前,我在Quora上写下了这个答案。希望这能有所帮助:

浏览上的一些介绍性视频在直接开始使用hadoop之前,对hadoop有一些高层次的概念是非常重要的。这些介绍性视频将有助于理解Hadoop的范围以及可以应用它的用例。网上有很多同样的资源,浏览任何一个视频都会很有帮助。

理解MapReduce第二件事帮助我理解了 Reduce是什么以及它是如何工作的。本文很好地解释了这一点:http://static.googleusercontent……

另一个很好的教程可以在这里找到:http://ksat.me/map-reduce-a-real...

对于第1点和第2点,请完成第一周视频讲座的前四次讲座。这里很好地解释了分布式计算和map reduce的整个概念。https://class.coursera.org/mmds-001/lecture

Cloudera VM Hadoop入门一旦您了解了的基础知识,您就可以下载cloudera提供的VM,并开始在其上运行一些命令。您可以从以下链接下载虚拟机:http://www.cloudera.com/content/...

如果能熟悉虚拟机上的基本Hadoop命令并了解其工作原理,那就更好了。

设置独立/伪分布式我建议您在熟悉使用虚拟机的Hadoop之后,在自己的机器上设置独立的Hadoop。Michael G.Noll在此博客上很好地解释了安装步骤: Running Hadoop on Ubuntu Linux (Single-Node Cluster) - Michael G.Noll

了解Hadoop生态系统熟悉Hadoop生态系统中的其他组件,如Apache Pig、Hive、Hbase、Flume-NG、Hue等,所有这些组件都有不同的用途,了解这些组件将对围绕hadoop生态系统构建任何产品都很有帮助。您可以轻松地在您的计算机上安装所有这些,并开始使用它们。Cloudera VM by已经安装了其中的大部分。

6.编写Map Reduce作业一旦您完成了步骤1-5,我不认为编写Map Reduce将是一个挑战。它在权威指南中有详细的解释。如果你真的对斯坦福很感兴趣,我建议你读一读这本书,作者是Anand Rajaraman,Jure Leskovec和JeffReyD.Ullman:关于斯坦福大学的页面

票数 4
EN

Stack Overflow用户

发布于 2014-11-25 20:37:13

我建议先使用Hadoop,它是很多其他系统的基础。查看主站点:http://hadoop.apache.org/并查看Cloudera,它们提供了一个虚拟映像(称为CDH),它预装了所有内容,因此您可以立即行动起来,而不必处理安装问题:http://www.cloudera.com/content/cloudera/en/downloads/cdh/cdh-5-2-0.html

在那之后,我将研究HDFS,只是为了更多地了解Hadoop如何存储数据,然后它将取决于您试图解决的问题的类型,每个特定的系统解决一个特定的和(通常)不同的问题:

  • Hive / Cassandra:用于类似数据库的interaction
  • Pig:,用于数据转换。
  • Spark:用于实时数据分析

有关更多详细信息,请查看此链接:http://www.cloudera.com/content/cloudera/en/training/library/apache-hadoop-ecosystem.html

我希望你会觉得这很有用。

票数 2
EN

Stack Overflow用户

发布于 2015-11-14 21:28:30

大数据是一个宽泛的术语,用于描述如此庞大或复杂的数据集,以至于传统的数据处理应用程序无法满足需求。挑战包括分析、捕获、数据管理、搜索、共享、存储、传输、可视化和信息隐私-来自wikipedia

是一个框架,它允许使用简单的编程模型跨计算机群集分布式处理大型数据集。

Hadoop中有四个主要模块。

1.Hadoop Common:支持其他Hadoop模块的常用工具。

2.分布式文件系统( 2.Hadoop™2.Hadoop):一种分布式文件系统,提供对应用程序数据的高吞吐量访问。

3.Hadoop YARN:一个用于作业调度和集群资源管理的框架。

4. 4.Hadoop MapReduce:一个基于YARN的系统,用于并行处理大型数据集。

在进一步讨论之前,让我们注意到我们有三种不同类型的数据。

Structured :结构化数据具有强模式,在读写操作时会对模式进行检查。例如,Oracle、MySQL服务器等关系数据库系统中的数据。

Unstructured:数据没有任何结构,可以是任何形式-网络服务器日志,电子邮件,图像等。

Semi-structured:数据不是严格结构化的,但具有一定的结构。例如XML文件

根据要处理的数据类型,我们必须选择正确的技术。

一些更多的项目,它们是Hadoop的一部分

HBase™HBase:一个可扩展的分布式数据库,支持大型表的结构化数据存储。

Hive™:提供数据汇总和即席查询的数据仓库基础设施。

Pig™:一种用于并行计算的高级数据流语言和执行框架

蜂巢与猪的比较可以在我的这个question的其他帖子中找到

HBASE不会取代Map Reduce。HBase是一种可伸缩的分布式数据库,Map Reduce是用于分布式数据处理的编程模型。Map Reduce可能会在处理过程中作用于HBASE中的数据。

您可以针对结构化/半结构化数据使用Hadoop ,并使用Hadoop Map Reduce对其进行处理

您可以使用Hadoop SQOOP从传统的关系型数据库Oracle、SQL Server等导入结构化数据,并使用Hadoop Map Reduce进行处理

您可以使用Hadoop 处理非结构化数据,并使用Hadoop进行处理

看看:Hadoop Use Cases

应使用Hive对一段时间内收集的数据进行分析查询。例如,计算趋势,总结网站日志,但不能用于实时查询。

HBase适合大数据的实时查询。Facebook将其用于消息传递和实时分析。

PIG可用于构建数据流,运行预定作业,处理大量数据,聚合/汇总数据,并将其存储到关系数据库系统中。适用于即席分析。

Hive可用于即席数据分析,但与PIG不同,它不能支持所有非结构化数据格式

ZooKeeper是一个集中的服务,用于维护配置信息、命名、提供分布式同步和提供组服务,这些服务对各种分布式系统非常有用。如果没有ZooKeeper,HBase将无法运行。

Apache 是一个通用的计算引擎,提供大规模的快速数据分析。Spark构建在HDFS上,但绕过了MapReduce,转而使用自己的数据处理框架。Apache Spark的常见用例包括实时查询、事件流处理、迭代算法、复杂操作和机器学习。

Mahout™:一个可伸缩的机器学习和数据挖掘库。

:是一个通用的数据流编程框架,构建于™之上,它提供了一个强大而灵活的引擎来执行任意任务的,以处理批处理和交互式用例的数据。MapReduce正被Hadoop生态系统中的Hive™、Pig™和其他框架以及其他商业软件(例如ETL工具)所采用,以取代Hadoop™Tez作为底层执行引擎

我只介绍了Hadoop生态系统的一些关键组件。如果您想了解生态系统所有组件,请查看此ecosystem table

如果上面的表格很难理解,可以在this article上查看生态系统的简化版本

但是为了理解所有这些系统,我希望您先从 网站开始,然后再浏览其他文章。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27126719

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档