gpt4 book ai didi

Hadoop运维

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

我已准备好 hadoop 实现的所有部分 - 我有一个正在运行的集群,以及一个将事件数据推送到 HDFS 的客户端编写器。我对接下来会发生什么有疑问。我了解我们针对已转储到 HDFS 中的数据运行作业,但我的问题是:

1) 首先,我正在写入流并定期刷新 - 我正在通过 HDFS java 客户端中的线程写入文件,并且在我终止我的服务器之前我没有看到这些文件出现在 HDFS 中。如果我写入足够的数据来填充一个 block ,它会自动出现在文件系统中吗?我如何才能达到准备好由 M/R 作业处理的文件?

2) 我们什么时候运行 M/R 作业?就像我说的,我正在通过 HDFS java 客户端中的线程写入文件,并且该线程锁定了文件以供写入。我应该在什么时候释放该文件?这种互动是如何运作的?在什么时候针对该数据运行作业是“安全的”,完成后 HDFS 中的数据会发生什么?

最佳答案

我会尽量避免数据插入到 hadoop 和处理结果之间的“硬”同步。我的意思是,在许多情况下,异步进程是最实际的:
a) 一个进程将文件放入 HDFS。在许多情况下,按日期构建目录结构很有用。
b) 为除最新数据以外的所有数据运行作业。
您可以对最新数据运行作业,但应用程序不应依赖最新的结果。无论如何,工作通常需要几分钟以上

还有一点——append 不是 100% 主流的,而是为 HBase 构建的高级东西。如果您在不使用它的情况下构建您的应用程序 - 您将能够使用其他不支持追加的 DFS,例如 amazon s3。我们在本地文件系统中收集数据,当文件足够大时,然后将它们复制到 HDFS。

关于Hadoop运维,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10674502/

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