【问题标题】:Hadoop (HDFS) - file versioningHadoop (HDFS) - 文件版本控制
【发布时间】:2017-03-15 20:33:48
【问题描述】:

在给定时间,我的应用程序 (apache CMIS) 中有用户文件系统。 随着它越来越大,我怀疑是否迁移到 hadoop (HDFS),因为我们还需要对其进行一些统计。 问题: 当前文件系统提供文件的版本控制。 当我阅读 hadoop - HDFS- 和文件版本控制时,我发现大部分时间我必须自己编写这个(版本控制)层。 是否已经有一些东西可用于管理 HDFS 中文件的版本控制,还是我真的必须自己编写(不想重新发明热水,但也找不到合适的解决方案)。

回答

有关详细信息:请参阅下面的 cmets 答案

Hadoop (HDFS) 不支持文件的版本控制。当您将 hadoop 与(amazon)S3 结合使用时,您可以获得此功能: Hadoop 将使用 S3 作为文件系统(没有块,但恢复将由 S3 提供)。此解决方案附带 S3 提供的文件版本控制。 Hadoop 仍将使用 YARN 进行分布式处理。

【问题讨论】:

    标签: hadoop version-control hdfs


    【解决方案1】:

    HDFS 无法进行版本控制。
    相反,您可以使用Amazon S3,它提供Versioning,同时也是compatible 与Hadoop。

    【讨论】:

    • “也兼容 Hadoop”。不是hadoop可以用S3做文件系统吗?所以这不是真正的版本控制。
    • @VandeperreMaarten 兼容是指 Hadoop 可以从 S3 读写。 Hadoop 可以通过不在 S3 上强制执行其原生 HDFS 功能来将 S3 用作 FS。因此它不会影响 S3 的版本控制能力。 S3 提供真正的版本控制,不同于手动调用或计划的 HDFS 快照
    • 好的,但是我不能为我的文件版本使用这个版本,对吧?由于hadoop将文件存储在块中......所以在S3中我会有版本化的块,而不是版本化的文件。那么我将不得不在 hadoop 之上获得一些版本控制。
    • 是的,您可以对文件版本使用 S3 版本控制。如果您计划将 S3 用作 FS,它提供了版本控制。除了 S3 的版本控制之外,您不需要编写任何版本控制层。此外,正如我在之前的评论中所解释的那样,Hadoop 的块概念也没有出现,当文件系统为 S3 时,Hadoop 不会强制执行其原生功能,如块/块。 Amazon S3 的所有功能都将保留,使用 Hadoop,您可以对存储在 S3 中的数据执行所有分布式处理。
    • thx :) 但是使用 hadoop 并只使用 S3 是不是有点矫枉过正?还是两者都用?
    【解决方案2】:

    HDFS 支持快照。我认为这与 HDFS 的“版本控制”非常接近。

    【讨论】:

      猜你喜欢
      • 2012-06-01
      • 2015-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多