gpt4 book ai didi

hadoop - 如何从 Spark Dataproc 检查文件是否存在于 Google Storage 中?

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

我假设 Google 存储连接器将允许直接查询 GS,就好像它是 Dataproc 中来自 Spark 的 HDFS 一样,但看起来以下内容不起作用(来自 Spark Shell):

scala> import org.apache.hadoop.fs.FileSystem
import org.apache.hadoop.fs.FileSystem

scala> import org.apache.hadoop.fs.Path
import org.apache.hadoop.fs.Path

scala> FileSystem.get(sc.hadoopConfiguration).exists(new Path("gs://samplebucket/file"))
java.lang.IllegalArgumentException: Wrong FS: gs://samplebucket/file, expected: hdfs://dataprocmaster-m

有没有办法只使用 Hadoop API 访问 Google 存储文件?

最佳答案

那是因为 FileSystem.get(...) 返回默认的 FileSystem 根据您的配置是 HDFS 并且只能与以 hdfs:// 开头的路径。使用以下方法获取正确的 FS。

Path p = new Path("gs://...");
FileSystem fs = p.getFileSystem(...);
fs.exists(p);

关于hadoop - 如何从 Spark Dataproc 检查文件是否存在于 Google Storage 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46079970/

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