【发布时间】:2016-11-12 04:53:17
【问题描述】:
我正在使用 IBM 对象存储(类似于 AWS S3)来存储数据。 IBM 的对象存储实现了 S3 api。 Spark 的 Hadoop 配置can be modified to allow it to connect to Amazon S3。
我正在尝试(在 pyspark 中)通过将端点设置为指向 IBM 而不是 Amazon 来访问我的数据。
sc._jsc.hadoopConfiguration().set("fs.s3.impl", "org.apache.hadoop.fs.s3native.NativeS3FileSystem")
sc._jsc.hadoopConfiguration().set("fs.s3a.endpoint", "s3-api.us-geo.objectstorage.service.networklayer.com")
sc._jsc.hadoopConfiguration().set('fs.s3a.access.key', '<my_key>')
sc._jsc.hadoopConfiguration().set("fs.s3a.secret.key", "<secret_key>")
哪个会引发错误:
An error occurred while calling o131.partitions.
: com.amazonaws.services.s3.model.AmazonS3Exception: Forbidden (Service: Amazon S3; Status Code: 403; Error Code: 403 Forbidden; Request ID: 7F46A12CDBB841AA)
注意“服务:Amazon S3;”这让我假设 SDK 仍然指向 AWS。这个可以改吗?
【问题讨论】:
标签: java pyspark aws-sdk ibm-cloud-infrastructure object-storage