gpt4 book ai didi

file-io - 为什么Hadoop文件系统不支持随机I/O?

转载 作者:可可西里 更新时间:2023-11-01 14:44:16 25 4
gpt4 key购买 nike

Google File System、Hadoop等分布式文件系统不支持随机I/O。
(它不能修改之前写入的文件。只能写入和追加。)

为什么要这样设计文件系统?
设计的重要优势是什么?

P.S 我知道Hadoop会支持修改写入的数据。
但是他们说,它的性能会很不好。为什么?

最佳答案

Hadoop 分发和复制文件。由于文件被复制,任何写操作都必须通过网络找到每个复制的部分并更新文件。这将大大增加操作的时间。更新文件可能会超过 block 大小并需要将文件分成 2 个 block ,然后复制第二个 block 。我不知道内部结构以及何时/如何拆分一个 block ...但这是一个潜在的并发症。

如果已经进行了更新并重新运行的作业失败或被杀死怎么办?它可以多次更新文件。

在分布式系统中不更新文件的好处是当你更新文件的时候你不知道还有谁在使用这个文件,你不知道碎片存储在哪里。有潜在的超时(带有 block 的节点没有响应)所以你最终可能会得到不匹配的数据(同样,我不知道 hadoop 的内部结构并且可能会处理节点关闭的更新,这只是我正在集思广益)

在 HDFS 上更新文件有很多潜在的问题(上面列出了一些)。它们都不是不可克服的,但它们需要性能影响来检查和解释。

由于 HDFS 的主要目的是存储用于 mapreduce 的数据,行级更新在这个阶段并不那么重要。

关于file-io - 为什么Hadoop文件系统不支持随机I/O?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5769394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com