我希望使用Hadoop MapReduce获得更好的数据处理性能。那么,我是否需要与Hadoop一起使用它呢?或者MapReduce可以与其他类型的分布式数据一起使用?请给我带路..。
发布于 2015-01-20 20:07:27
Hadoop是一个框架,它包括用于计算的Map编程模型和用于存储的HDFS。
HDFS是hadoop分布式文件系统(Hadoop distributed file System )的缩写,它是受谷歌文件系统( Google )启发的。整个Hadoop项目的灵感来源于谷歌发表的研究论文。
research.google.com/archive/mapreduce-osdi04.pdf
http://research.google.com/archive/mapreduce.html
使用Map编程模型,在簇内不同节点上并行计算数据,减少了处理时间。
您需要使用HDFS或HBASE将数据存储在集群中以获得高性能。如果您喜欢选择正常的文件系统,那么就不会有太大的差别。一旦数据进入分布式系统,自动将其划分到不同的块中,默认情况下复制3次,以避免容错。所有这些在正常的文件系统中都是不可能的。
希望这能有所帮助!
发布于 2015-01-20 14:02:13
首先,你的想法是错误的。Hadoop MapReduce的性能与HDFS的性能没有直接关系。它被认为是缓慢的,因为它的结构:
其次,Hadoop是开放的框架,它支持许多不同的文件系统。您可以从FTP、S3、本地文件系统(例如NFS共享)、MapR、IBM、GlusterFS by RedHat等读取数据,因此您可以自由选择您喜欢的文件系统。MapReduce的主要思想是指定能够使用您的文件系统的InputFormat和OutputFormat。
Spark目前被认为是对Hadoop MapReduce的更快的替代,因为它将大量的计算放到内存中。但是它的使用真的取决于你的情况
https://stackoverflow.com/questions/28042792
复制相似问题