【问题标题】:unable to connect to minio-s3 spark无法连接到 minio-s3 spark
【发布时间】:2020-06-21 11:52:51
【问题描述】:

我正在尝试使用 spark 连接到 minio 提供的 s3 但它说 bucket minikube 不存在。 (已创建存储桶)

val spark = SparkSession.builder().appName("AliceProcessingTwentyDotTwo")
    .config("spark.serializer", "org.apache.spark.serializer.KryoSerializer").master("local[1]")
    .getOrCreate()
  val sc= spark.sparkContext
  sc.hadoopConfiguration.set("fs.s3a.impl", "org.apache.hadoop.fs.s3a.S3AFileSystem")
  sc.hadoopConfiguration.set("fs.s3a.endpoint", "http://localhost:9000")
  sc.hadoopConfiguration.set("fs.s3a.access.key", "minioadmin")
  sc.hadoopConfiguration.set("fs.s3a.secret.key", "minioadmin")
  sc.hadoopConfiguration.set("fs.s3`a`.path.style.access", "true")
  sc.hadoopConfiguration.set("fs.s3a.connection.ssl.enabled","false")  
  sc.textFile("""s3a://minikube/data.json""").collect()

我正在使用以下指南进行连接。

https://github.com/minio/cookbook/blob/master/docs/apache-spark-with-minio.md

这些是我在 scala 中使用的依赖项。

"org.apache.spark" %% "spark-core" % "2.4.0", "org.apache.spark" %% “spark-sql”%“2.4.0”,“com.amazonaws”%“aws-java-sdk”%“1.11.712”, "org.apache.hadoop" % "hadoop-aws" % "2.7.3",

【问题讨论】:

  • 1) 错误出现在什么时候?更精确。 2)这个位:(“fs.s3a.path.style.access”,“true”)你有反引号,在你的原始代码中也是如此吗?他们并不真正属于那里。
  • @frandroid 说 s3a 是复制粘贴错误.. 错误出现在 sc.textFile()
  • 1.切掉“fs.s3a.impl”——这只是别人传下来的一些迷信。 2.使用与你正在使用的五年旧版hadoop相同版本的AWS SDK mvnrepository.com/artifact/org.apache.hadoop/hadoop-aws/2.7.0

标签: scala apache-spark amazon-s3 minio


【解决方案1】:

尝试不使用 hadoop 的 spark 2.4.3 并使用 Hadoop 2.8.2 或 3.1.2。尝试以下链接中的步骤后,我可以使用 cli 连接 minio

https://www.jitsejan.com/setting-up-spark-with-minio-as-object-storage.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-01-25
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 2019-11-24
    • 2022-12-18
    • 1970-01-01
    • 2015-04-24
    相关资源
    最近更新 更多