mapreduce 和任何其他 hadoop 技术(HBase、Hive、pig 等)是否适用于您有多个输入文件以及需要在不同数据源之间比较数据的情况。
过去,我使用 Hadoop 和 Pig 编写了一些 mapreduce 作业。然而,这些任务非常简单,因为它们只涉及处理单个数据集。我们现在的要求要求我们从多个来源读取数据并对另一个数据源上的各种数据元素进行比较。然后我们报告差异。我们正在处理的数据集在 1000 万到 6000 万条记录之间,到目前为止,我们还没有设法使这些工作足够快。
是否有使用 mapreduce 来解决此类问题的案例,还是我走错了路。
非常感谢任何建议。
最佳答案
我想我会将不同的数据集预处理成通用格式(确保包含一个“数据源”id 列,其中来自同一数据集的每一行都有一个唯一值)。然后将文件移动到同一目录,加载整个目录并将其视为单个数据源,您可以在其中根据行的数据集 ID 比较行的属性。
关于hadoop - 使用 Hadoop 处理来自多个数据源的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10825754/