最近在Couchbase的网络研讨会上,他们说Hadoop用于处理大型日志文件,Couchbase用于将其呈现给应用层。他们声称Couchbase和Hadoop的map和reduce是不同的,适合提到的各自用例。我打算使用Couchbase map reduce来处理大量的日志文件。有人可以澄清一下两个地图减少之间的确切区别吗?Hadoop中是否有任何功能使其更适合处理大型日志文件?
谢谢。。。
Couchbase 使用增量映射/reduce并且不会扫描更新或删除项目所需的所有数据集的主要区别。 另一个区别是"大"的大小。 如果您需要一次处理数百 GB 的日志,那么 Couchbase 不是最佳选择。
Couchbase是众多NoSQL数据存储应用程序之一。数据存储在键/值对中,键已编入索引以便快速检索。
相反,Hadoop中的数据不会被索引(文件名除外),并且从HDFS中的文件中提取特定值要慢得多,可能涉及扫描许多文件。
你通常会使用Hadoop mapreduce之类的东西来处理大文件,并更新/填充NoSQL存储(如Couchbase)。
使用NoSQL数据存储来处理大量数据很可能比使用MapReduce完成相同的工作效率低。但是NoSQL数据存储将能够比MapReduce作业更有效地为Web层提供服务(MapReduce作业可能需要10秒的初始化时间,运行需要几分钟/几小时)。