hadoop是在一台机器上管理批处理数据的可行解决方案吗?

hadoop是在一台机器上管理批处理数据的可行解决方案吗?,hadoop,parallel-processing,batch-processing,Hadoop,Parallel Processing,Batch Processing,我有一系列命令行应用程序,它们以3GB数据文件的形式接收原始数据。这些应用程序被链接在一起以产生更小的输出。我有一个6核系统,每个应用程序只需要一个核,所以我想我可以并行运行6个 我一直在尝试自动化这个过程(包括整理结果),并一直在阅读Hadoop作为解决这个问题的可能方法 Hadoop是一个合适的解决方案吗?如果是的话,我应该使用它的哪些部分(或者还有其他更合适的东西) 编辑 为了让这一点更清楚,粗略的管道如下所示: .-> [A] -> W1 -> [B] -&g

我有一系列命令行应用程序,它们以3GB数据文件的形式接收原始数据。这些应用程序被链接在一起以产生更小的输出。我有一个6核系统,每个应用程序只需要一个核,所以我想我可以并行运行6个

我一直在尝试自动化这个过程(包括整理结果),并一直在阅读Hadoop作为解决这个问题的可能方法

Hadoop是一个合适的解决方案吗?如果是的话,我应该使用它的哪些部分(或者还有其他更合适的东西)

编辑

为了让这一点更清楚,粗略的管道如下所示:

     .-> [A] -> W1 -> [B] -> X1 -> [C] -> Y1 -.
    /                                          \
V -<                                            >- [D] -> Z
    \                                          /
     `-> [M] -> W2 -> [B] -> X2 -> [C] -> Y2 -`
->[A]->W1->[B]->X1->[C]->Y1-。
/                                          \
V-<>-[D]->Z
\                                          /
`->[M]->W2->[B]->X2->[C]->Y2-`
…在哪里

  • [A、B、C、D]
    是命令行应用程序
  • V
    是一个3GB的数据文件(其中有几百个)
  • W1
    W2
    是~3MB的中间文件
  • X1
    X2
    是大约200KB的中间文件
  • Y1
    Y2
    是大约200KB的中间文件
  • Z
    是最终报告

这取决于您的要求。如果您的数据将会增加,并且如您所说是原始或非结构化格式,那么hadoop可以在这方面为您提供帮助

  • 您可以使用为它提供一系列的输入,将产生输出,该输出根据键和值列表提供给减速器。对于map reduce和编程语言,可以使用不同的方法。您将获得有关hadoop的更多信息
  • 如果您有一个处理过程,比如从文件或数据库中获取数据,对其进行处理并将输出存储回文件或数据库,并且您的数据相对较小(正如它所说的,当您在TB中有非常大的数据时,通常使用hadoop),那么您还可以查看

  • 我认为你不应该使用Hadoop,除非你真的需要它

    因此,在您的情况下,基于您所说的和合理的数据量,支付使用Hadoop的成本是没有意义的


    我的2美分。

    有其他选择的建议吗。。。或者我应该用Python来实现我自己的想法(这是我最初的想法)?