【发布时间】:2012-05-30 23:44:08
【问题描述】:
mapreduce 和任何其他 hadoop 技术(HBase、Hive、pig 等)是否非常适合您有多个输入文件以及需要在不同数据源之间比较数据的情况。
过去,我使用 Hadoop 和 Pig 编写了一些 mapreduce 作业。然而,这些任务非常简单,因为它们只涉及操作单个数据集。我们现在的要求要求我们从多个来源读取数据,并对另一个数据源上的各种数据元素进行比较。然后我们报告差异。我们正在使用的数据集大约有 1000 万到 6000 万条记录,到目前为止,我们还没有设法让这些工作足够快。
是否有使用 mapreduce 来解决此类问题的案例,还是我走错了路。
非常感谢任何建议。
【问题讨论】:
-
数据集是否预先排序和分区?数据集是如何比较的(记录中的关键,或更复杂)?
-
数据集来自第三方,所以我不能保证排序顺序。基本上,我必须将来自这些来源的地址字段与我们托管的“主”来源相匹配,并根据匹配我们做某些事情。地址字段的比较操作涉及相当复杂的字符串匹配逻辑。
标签: hadoop hbase apache-pig