应该在什么时候使用Hadoop

  • 时间:
  • 浏览:1

二、可能性我的数据是10GB呢

买个2TB或4TB的硬盘,在桌面PC或服务器上安装另一兩个多 Postgre来处里它。

六、Hadoop是另一兩个多 极好的工具

就是 可能性“大数据”和“Hadoop”这另一兩个多 热门词,即使不会 一帮人实际上不时要Hadoop,亲戚亲戚朋友也你要穿上“紧身衣”。

可能性你的数据并就有像SQL表那样的形态化数据(比如纯文本、JSON对象、二进制对象),通常是直接写另一兩个多 小的Python脚原本 按行处里你的数据。把数据存储于文件,处里每另一兩个多 文件,等等。可能性打上去是Hadoop就很麻烦。

目标:计算图书馆书籍的数量

对于几百兆的数据量,典型的做法是写另一兩个多 简单的Python脚本按行读取文件行,并处里它,向原本 文件写入。

亲戚亲戚朋友又问我,“你能使用Hadoop做简单的分组和统计吗?”亲戚亲戚朋友说当然都还能能,让人是告诉亲戚亲戚朋友我时要看一点文件格式的例子。

使用Hadoop唯一的好处是可伸缩性非常好。可能性你有另一兩个多 中有 了数TB数据的表,Hadoop有另一兩个多 适合全表扫描的选项。可能性你没法原本 大数据量的表,没法你应该像躲避瘟疫那样处里使用Hadoop。原本 使用传统的土办法来处里哪些地方的问题报告 会更轻松。

对于Excel软件来说的“很大的数据”从不大数据,虽然还有其它极好的工具都还能能使用——我喜欢的Pandas。Pandas构建于Numpy库之上,都还能能以矢量格式的土办法有效地把数百兆的数据载入到内存中。在我购买已3年的笔记本上,它都还能能用Numpy在一眨眼的功夫把1亿的浮点数乘在一起去。Matlab和R也是极好的工具。

三、可能性我的数据是30GB、30GB或1TB呢

版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 https://blog.csdn.net/chszs/article/details/12114845

Hadoop实际上是有不会 有局限的。Hadoop允许你运行另一兩个多 通用的计算,下面我用伪码进行说明:

你应该考虑使用Hadoop,而不会做不会 的选择。

SQL是另一兩个多 很直接的查询语言,适合做业务分析,SQL的查询相当简单,就是 还非常快——可能性你的数据库使用了正确的索引,二级查询或多级查询另当别论。

Map:你统计奇数书架上书的数量,我统计偶数书架上书的数量。(人不会 ,统计很快了 了 )

我从不讨厌Hadoop,当我用其它工具能不都还能能很好处里数据时我会选择Hadoop。另外,我推荐使用Scalding,从不使用Hive或Pig。Scalding支持使用Scala语言来编写Hadoop任务链,隐藏了其下的MapReduce。

一帮人问我,“你在大数据和Hadoop方面有哪多少经验?”我告诉亲戚亲戚朋友,我突然在使用Hadoop,就是 我处里的数据集很少有大于哪多少TB的。

它会迫使你在Map中进行所有的计算,分组和统计,执行运算的土办法像是穿上了紧身衣,虽然不会 有计算更适合选择其它模型。穿上紧身衣的唯一愿因是这可能性会扩展到非常大的数据集上,而大多数清况 下,你的数据量可能性会小哪多少数量级。

Reduce:把亲戚亲戚朋友单独统计后的数据打上去一起去。

Scala风格的伪码:

四、Hadoop远远比不上SQL或Python脚本

SQL风格的伪码:

我买了个新笔记本,它有16GB的内存和256GB的SSD。可能性我要 载入另一兩个多 10GB的CSV文件到Pandas,它占用的内存实际上是很小的——其结果是以数字类型的字符串保存的,如“17284832583”作为4字节货8字节的整数,或存储“284572452.2435723”字符串作为8字节的双精度浮点数。

Hadoop没法索引的概念,Hadoop能不都还能能全表扫描,Hadoop有深度图泄露抽象——我花了不会 有时间来处里Java的内存错误、文件碎片以及集群竞争,哪些地方地方时间远大于我花在数据分析上的时间。

五、我的数据超过了5TB

相比于SQL或Python脚本,Hadoop要慢的多。正确的使用索引后,SQL查询突然非快——PostgreSQL简单的查找索引,检索确切的键值。而Hadoop是全表扫描的,它会把整个表进行重新排序。通过把数据表分片到多台计算机上后,重排序是变快的。当时人面,处里二进制对象,Hadoop时要重复往返于命名节点,目的是查找和处里数据。这适合用Python脚原本 实现。

一、可能性我的数据量是几百兆,Excel可能性没法加载它

亲戚亲戚朋友递给我另一兩个多 中有 300MB数据的闪盘,看起来哪些地方地方数据从不样本数据,可能性一点我能不都还能能理解的愿因,当我的处里方案涉及到pandas.read_csv文件,而就有Hadoop,亲戚亲戚朋友很不愉快。

最坏的清况 有了你或许能不都还能能把所有的数据都一起去载入到内存中。

亲戚亲戚朋友所做的能不都还能能另一兩个多 :F(k,v)和G(k,v),除开在后面 步骤中的性能优化,一切就有固定的。

在计算的表达方面,Hadoop弱于SQL,也弱于Python脚本。