【问题标题】:Hadoop or Postgresql for effective processingHadoop 或 Postgresql 进行有效处理
【发布时间】:2012-03-08 03:36:04
【问题描述】:

我是一名学生,试图将一些机器学习算法用于大型数据集。我们的训练集中有大约 1.4 亿条记录(目前在 postgresql 表中),有五个表有大约 600 万条记录主键 - 外键关系。

我们只有 2 台机器,配置如下 1) 6GB 内存,第二代 i5 处理器 2) 8GB 内存,第二代 i7 处理器

我们现在正计划在运行我们的统计分析之前将它们分成逻辑分组,因为周转时间非常长。

1) 我是否应该在 postgresql 中将它们拆分为单独的表,并且它们使用 MATLAB 或 R 进行编程 或者 2) 我应该通过移植数据库来使用 hadoop 和 hbase 3)我是否应该组合和使用它们(即根据逻辑组分解它们并转储到postgresql数据库中,并设置hadoop +hbase进行分析并根据必要的算法使用它。

谢谢

【问题讨论】:

    标签: postgresql hadoop machine-learning


    【解决方案1】:

    很难相信 Hadoop 在如此小的集群中会有效。如果您可以在没有它的情况下有效地并行化任务 - 几乎可以肯定它会更有效
    我要考虑的另一个考虑因素是学习过程中的迭代时间。如果迭代需要几十秒 - 那么 Hadoop 作业开销(大约 30 秒)将会太多。
    你可以从 Hadoop 中得到什么——有效的外部并行排序——这就是 shuffle 阶段。如果您需要它 - 考虑使用 hadoop。
    另请注意,通常将关系模式移植到 HBase 并不容易 - 因为不支持连接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-01
      相关资源
      最近更新 更多