Hadoop如何帮助解决大数据问题

作者: Eugene Taylor
创建日期: 8 八月 2021
更新日期: 12 可能 2024
Anonim
[大数据 hadoop]4. 什么是YARN
视频: [大数据 hadoop]4. 什么是YARN

内容



带走:

Hadoop可以帮助解决一些大数据的大挑战。

大数据就是……好……大数据!究竟可以将多少数据归类为大数据并不是很明确,所以不要在这场辩论中陷入困境。对于习惯于处理千兆字节数据的小型公司,10 TB的数据将是巨大的。但是对于像Yahoo和Yahoo这样的公司来说,PB很大。

只是大数据的大小,就不可能(或至少在成本上禁止)将其存储在数据库或传统文件管理器等传统存储中。我们正在谈论存储千兆字节数据的成本。使用传统的存储文件管理器可能会花费大量金钱来存储大数据。

这里很好地看一下大数据,其挑战以及Hadoop如何帮助解决它们。首先,大数据是最大的挑战。

大数据是非结构化或半结构化的

许多大数据都是非结构化的。例如,点击流日志数据可能如下所示:

时间戳,user_id,页面,referrer_page

缺乏结构使得关系数据库不适合存储大数据。此外,没有多少数据库可以应付数十亿行数据的存储需求。

如果我们不能处理大数据,存储大数据毫无意义

存储大数据是游戏的一部分。我们必须对其进行处理以挖掘其中的情报。从传统意义上来说,传统的存储系统只是存储位而已。他们不提供任何处理能力。

传统的数据处理模型将数据存储在存储集群中,然后将其复制到计算集群中进行处理。结果将写回到存储集群。

但是,该模型不适用于大数据,因为将这么多数据复制到计算集群可能会非常耗时或无法实现。所以答案是什么?

一种解决方案是就地处理大数据,例如在存储群集中将其倍增为计算群集。

因此,正如我们在上面看到的那样,大数据违反了传统存储。那么我们如何处理大数据呢?

Hadoop如何解决大数据问题

Hadoop构建为在机器集群上运行
让我们从一个例子开始。可以说我们需要存储很多照片。我们将从一个磁盘开始。当我们超过单个磁盘时,我们可能会使用堆叠在计算机上的几个磁盘。当我们最大化一台计算机上的所有磁盘时,我们需要获得一堆计算机,每台计算机都具有一堆磁盘。

这正是Hadoop的构建方式。 Hadoop旨在一开始就可以在计算机集群上运行。




Hadoop集群水平扩展
通过向Hadoop群集添加更多节点,可以实现更多的存储和计算能力。这消除了购买越来越强大和昂贵的硬件的需求。

Hadoop可以处理非结构化/半结构化数据
Hadoop不会对其存储的数据强制实施架构。它可以处理任意和二进制数据。因此,Hadoop可以轻松消化任何非结构化数据。

Hadoop集群提供存储和计算
我们看到了拥有单独的存储和处理集群并不是最适合大数据的方式。但是,Hadoop集群可以一站式提供存储和分布式计算。

Hadoop的业务案例


Hadoop以合理的成本提供大数据存储
使用传统存储存储大数据可能会很昂贵。 Hadoop是围绕商品硬件构建的,因此它可以以合理的成本提供相当大的存储。 Hadoop已在PB级领域中使用。

Cloudera的一项研究表明,企业通常每年每TB花费大约25,000至50,000美元。有了Hadoop,每年每TB的成本下降到几千美元。随着硬件越来越便宜,这种成本继续下降。

Hadoop允许捕获新数据或更多数据
有时,组织不会捕获一种数据,因为存储数据过于昂贵。由于Hadoop以合理的成本提供存储,因此可以捕获和存储此类数据。

一个例子是网站点击日志。由于这些日志的数量可能很大,因此没有多少组织捕获到这些日志。现在,有了Hadoop,就可以捕获和存储日志。

借助Hadoop,您可以存储更长的数据
为了管理存储的数据量,公司会定期清除较旧的数据。例如,只能存储最近三个月的日志,而删除较旧的日志。使用Hadoop,可以将历史数据存储更长的时间。这样就可以对较旧的历史数据进行新的分析。

例如,从网站获取点击日志。几年前,这些日志被存储了很短的时间,以计算流行页面之类的统计信息。现在有了Hadoop,可以将这些点击日志存储更长的时间。

Hadoop提供可扩展的分析
如果我们不能分析它们,那么存储所有这些数据毫无意义。 Hadoop不仅提供分布式存储,还提供分布式处理,这意味着我们可以并行处理大量数据。 Hadoop的计算框架称为MapReduce。 MapReduce已被证明达到PB的规模。

Hadoop提供丰富的分析
本机MapReduce支持Java作为主要编程语言。也可以使用其他语言,例如Ruby,Python和R。

当然,编写自定义MapReduce代码不是分析Hadoop中数据的唯一方法。可以使用更高级别的Map Reduce。例如,名为Pig的工具采用英语作为数据流语言,然后将其翻译为MapReduce。另一个工具Hive接受SQL查询并使用MapReduce运行它们。

商业智能(BI)工具可以提供更高级别的分析。也有用于此类分析的工具。

此内容摘自Mark Kerzner和Sujee Maniyam撰写的“ Hadoop照亮”。它已通过Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported许可证提供。