Google cloud storage 谷歌云存储与HDFS

Google cloud storage 谷歌云存储与HDFS,google-cloud-storage,hdfs,google-cloud-dataflow,Google Cloud Storage,Hdfs,Google Cloud Dataflow,在HDFS中,可以创建具有多个分区的文件。这让我开始思考谷歌云存储的几个问题 在Google云存储中,我可以将文件分散到多个节点上吗 我可以创建一个包含N个空分区并在每个分区中填充N个节点的文件吗 当我们的数据通过系统流到最后时,这允许我们将客户提供给我们的任何大小的文件映射到单个输出文件(即使输出文件分布在一个节点集群上) 嗯,大声想一想,除了通过map/reduce,我不知道如何在Hadoop中做到这一点。hadoop HDFS中有没有一种方法可以 创建一个包含N个空分区的文件 让我的N个节

在HDFS中,可以创建具有多个分区的文件。这让我开始思考谷歌云存储的几个问题

  • 在Google云存储中,我可以将文件分散到多个节点上吗
  • 我可以创建一个包含N个空分区并在每个分区中填充N个节点的文件吗
  • 当我们的数据通过系统流到最后时,这允许我们将客户提供给我们的任何大小的文件映射到单个输出文件(即使输出文件分布在一个节点集群上)

    嗯,大声想一想,除了通过map/reduce,我不知道如何在Hadoop中做到这一点。hadoop HDFS中有没有一种方法可以

  • 创建一个包含N个空分区的文件
  • 让我的N个节点写入这些分区
  • 谢谢,
    Dean

    我认为你在你的问题中隐含了关于GCS的假设,比如它的实现或多或少类似于HDFS,或者它支持部分写入,就像文件系统一样。事实并非如此,GCS是一个blob(或对象)存储系统,而不是一个文件系统。我将尽我所能回答您的直接问题,但希望本序言有助于:

    在Google云存储中,我可以将文件分散到多个节点上吗

    您无法控制GCS如何跨节点分配对象(或对象的一部分)。话虽如此,出于性能和冗余原因,地面军事系统会自动将大型对象分割到多个“节点”上

    我可以创建一个包含N个空分区并在每个分区中填充N个节点的文件吗

    对象在GCS中是不可变的。一旦创建它们,就无法更改它们(可以创建新版本)。简言之,不,你不能完全按照你的要求去做,但你可以做一些有类似效果的事情,例如:

  • 您可以有N个进程,每个进程创建自己的对象,然后
  • 将这些对象组合成一个更大的对象,这是一个纯服务器端操作,因此非常高效

  • 请注意,compose一次仅限于32个对象,但您可以使用多个compose操作递归构建越来越大的对象。

    谢谢@coryan,这很有帮助。我没有假设,而是问,因为我实际上认为它的行为不像HDFS。假设这意味着我甚至不会问这个问题。无论如何,+1和一个正确的复选标记表示感谢!!!