1.jpg

Hadoop设计的目的主要包括下面几个方面,也就是所谓的适用场景:

1:超大文件

可以是几百M,几百T这个级别的文件。

2:流式数据访问

Hadoop适用于一次写入,多次读取的场景,也就是数据复制进去之后,长时间在这些数据上进行分析。

3:商业硬件

也就是说大街上到处都能买到的那种硬件,这样的硬件故障率较高,所以要有很好的容错机制。

接下来说说不适用的场景:

1: 低延迟数据访问

Hadoop设计的目的是大吞吐量,所以并没有针对低延迟数据访问做一些优化,如果要求低延迟, 可以看看Hbase。

2: 大量的小文件

由于NameNode把文件的MetaData存储在内存中,所以大量的小文件会产生大量的MetaData。这样的话百万级别的文件数目还是可行的,再多的话就有问题了。

3: 多用户写入,任意修改

Hadoop现在还不支持多人写入,任意修改的功能。也就是说每次写入都会添加在文件末尾。

Copyright © 2014-2024 it689.com (京ICP备12032795号-2) 版权所有 Power by IT689