2016-02-05 86 views
0

我想分析7TB的数据并将输出存储在数据库中,比如说HBase。 我的每月增量是500GB,但为了分析500GB数据,我不需要再次通过7TB的数据。Hadoop机器配置

目前我正在考虑将Hadoop与Hive一起用于分析数据,并使用Hadoop与MapReducer和HBase来处理和存储数据。

目前我有5台机器以下配置:

数据节点服务器配置:2-2.5兆赫六核心CPU,48 GB RAM,1个TB -7200 RPM(X 8)

数数据的节点:5

名称节点服务器:企业级服务器配置(X 2)(1个额外的二次

我想知道如果上述过程足以给出的要求,并且如果任何人有任何建议。

回答

0

浆纱 有由Hortonworks给计算您上浆

((初始大小+年增长+中间体数据大小)* REPL Cpount * 1.2)/ COMP RATIO

假设默认的公式乏

repl_count == 3(默认) comp_ration = 3-4(默认) 中间体数据大小= 30%的原始数据大小.- 1,2-因子-50% - 临时空间

因此,对于您的第一年,您将需要16.9 TB。你有8TB * 5 == 40.所以空间不是话题。

性能 5 Datanodes。阅读1 TB平均需要2.5小时(源Hadoop - 权威指南)。一个驱动器的600 GB将是1.5个小时。估计您已复制,以便可以并行使用全部5个节点,这意味着读取5个节点的整个数据可能会长达18分钟。

根据您对查询所做的操作以及如何配置数据处理,您可能需要增加一些时间。

内存consumution

48 GB并不多。许多数据节点的默认RAM从128 GB开始。如果仅将群集用于处理,则可能会解决问题。也取决于一点,如何配置集群以及您用于处理哪些技术。如果您具有并发访问权限,则可能会遇到堆错误。

概括起来:

这很大程度上取决于你想要做什么,你集群和多么复杂你的查询都是。同时请记住,并发访问可能会产生问题。

如果处理时间为600 GB的数据需要18分钟(作为基线 - 实际值取决于许多未知的因素,则回答该问题)就足够了,并且您没有并发访问权限。

+0

正如我刚才所说,我不需要每次执行7tb数据,每个月我只能分析600GB的数据。 – Ank

+0

我根据您的输入编辑了我的答案 –

0

我会建议转换抵达时的数据。通过切换到列式压缩格式,Hive可以提供巨大的速度提升,如ORCParquet。我们正在谈论潜在的x30-x40时间improvements in queries performance。使用最新的Hive,您可以在ORC文件上使用streaming data ingest。你可以按照你的计划(HBase + Hive)放置东西,只需要5x(6核心,48GB,7200RPM)的蛮力,但你不必这样做。一点工作可以让你进入交互式的特设查询时间区域,这将打开数据分析。