gpt4 book ai didi

hadoop - 使用 apache ignite 在 hdfs 上写一个文件

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

我想借助 ignite write through cache 在 hdfs 中插入数据。我正在使用以下示例配置文件来运行点燃节点。

ignite.sh /app/apache-ignite-fabric-1.9.0-bin/examples/config/filesystem/example-igfs.xml

这是我的 core-site.xml 文件

<configuration>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hmaster:9000/</value>
</property>
<property>
<name>fs.file.impl</name>
<!-- value>org.apache.hadoop.fs.LocalFileSystem</value -->
<value>org.apache.ignite.hadoop.fs.v1.IgniteHadoopFileSystem</value>
<description>The FileSystem for file: uris.</description>
</property>

<property>
<name>fs.hdfs.impl</name>
<value>org.apache.hadoop.hdfs.DistributedFileSystem</value>
<description>The FileSystem for hdfs: uris.</description>
</property>

<property>
<name>fs.igfs.impl</name>
<value>org.apache.ignite.hadoop.fs.v1.IgniteHadoopFileSystem</value>
</property>
</configuration>
</configuration>

当我执行 hadoop fs -cat igfs:/// 时,它显示 igfs 文件系统。如果我通过以下命令运行任何 hadoop 作业 它会在 igfs 中插入数据。但是我需要在 hdfs 文件系统中插入数据。如何在hdfs中插入数据?

hadoop --config /app/apache-ignite-fabric-1.9.0-bin/examples/config/filesystem  jar /app/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount igfs:///workDir/myFile1 /outputWC

最佳答案

您应该使用辅助文件系统配置 IGFS,以便在 Ignite 中使用直写式缓存。

此文档页面说明了一些内容:https://apacheignite-fs.readme.io/docs/secondary-file-systemIgnite Hadoop版的config(default-config.xml)有如下代码,默认注释掉:

              <property name="secondaryFileSystem">
<bean class="org.apache.ignite.hadoop.fs.IgniteHadoopIgfsSecondaryFileSystem">
<property name="fileSystemFactory">
<bean class="org.apache.ignite.hadoop.fs.CachingHadoopFileSystemFactory">
<property name="uri" value="hdfs://your_hdfs_host:9000/"/>
</bean>
</property>
</bean>
</property>

您需要取消注释并提供适当的辅助文件系统 URI。请注意已知错误,即在第二个文件系统 URI 的末尾应出现尾部斜线,hdfs://your_hdfs_host:9000/ .默认 DUAL_ASYNC模式将被使用。设置DUAL_SYNC模式设置“fileSystemConfiguration”bean 的“defaultMode”属性。

一般评论。

  1. 不应嵌套<configuration> Hadoop 配置文件中的标记。
  2. 您可能不需要重新定义“fs.file.impl”和“fs.hdfs.impl”,请使用$IGNITE_HOME/config/hadoop/core-site.ignite.xml作为core-site.xml文件模板。
  3. hadoop fs -cat ...不适用于目录,请使用 hadoop fs -ls ...

关于hadoop - 使用 apache ignite 在 hdfs 上写一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42946913/

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