gpt4 book ai didi

hadoop - 一个包含 HDFS 和 MapReduce 的文件数据库

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

假设我想存储大量带有相关元数据的 url

URL => Metadata

在文件中

hdfs://db/urls.seq

我希望这个文件在每次运行 MapReduce 后增长(如果找到新的 URL)。

这可以与 Hadoop 一起使用吗?据我了解,MapReduce 将数据输出到新目录。有没有办法获取该输出并将其附加到文件中?

我想到的唯一想法是创建一个临时的 urls.seq 然后替换旧的。它有效,但感觉很浪费。另外,根据我的理解,Hadoop 喜欢“一次编写”的方法,而这个想法似乎与此冲突。

最佳答案

作为blackSmith已经解释说你可以很容易地在 hdfs 中附加一个现有的文件,但是它会降低你的性能,因为 hdfs 是用“一次写入”策略设计的。我的建议是避免这种方法,直到别无选择。您可能会考虑的一种方法是,您可以为每个 mapreduce 输出创建一个新文件,如果每个输出的大小足够大,那么这种技术将使您受益最大,因为写入新文件不会像追加那样影响性能。而且,如果您正在读取下一个 mapreduce 中每个 mapreduce 的输出,那么读取一个新文件不会像追加那样影响您的性能。因此,需要权衡取舍,这取决于您想要的是性能还是简单性。(无论如何圣诞快乐!)

关于hadoop - 一个包含 HDFS 和 MapReduce 的文件数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27624458/

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