问题标签 [stocator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
640 浏览

java - 在 Spark 中通过 SWIFT 从对象存储中获取数据需要什么配置

我浏览了文档,但如何从 swift 获取数据仍然非常令人困惑。

我在我的一台 linux 机器上配置了 swift。通过使用以下命令,我可以获得容器列表,

swift -A https://acc.objectstorage.softlayer.net/auth/v1.0/ -U 用户名 -K 密码密钥列表

我看过很多关于 blumix 的博客(https://console.ng.bluemix.net/docs/services/AnalyticsforApacheSpark/index-gentopic1.html#genTopProcId2)并编写了以下代码

我希望集成到 java spark 中。java代码中需要配置对象存储凭证的地方。有没有示例代码或博客?

0 投票
5 回答
1960 浏览

pyspark - 方案没有文件系统:cos

我正在尝试从 IBM Data Science Experience 连接到 IBM Cloud Object Storage:

这将返回:

我猜我需要使用基于 stocator docs的 'cos' 方案。但是,错误表明 stocator 不可用或者是旧版本?

有任何想法吗?


更新1:

我还尝试了以下方法:

然而,这一次的反应是:

0 投票
4 回答
252 浏览

pyspark - java.lang.AbstractMethodError: com/ibm/stocator/fs/common/IStoreClient.setStocatorPath(Lcom/ibm/stocator/fs/common/StocatorPath;)V

我正在尝试根据此博客文章从 Data Science Experience 访问 IBM COS 上的数据。

首先,我选择1.0.8版本的stocator ...

重启内核,然后...

但是,这会导致以下错误:

​<strong>注意:我第一次尝试连接 IBM COS 时出现了不同的错误。此处捕获了该尝试:No FileSystem for scheme: cos

0 投票
1 回答
140 浏览

amazon-web-services - 如何在 Amazon EMR 上配置 Stocator

我正在尝试在 Amazon EMR 集群上配置 Stocator 以访问 Amazon s3 上的数据。我找到了表明这应该是可能的资源,但关于如何使其工作的细节很少。

当我启动 EMR 集群时,我使用以下配置:

然后我尝试使用访问文件cos://mybucket.service/myfile

由于缺少凭据,这会产生错误。

我使用以下方法将凭据添加spark-shell到属性中:

现在,当我尝试访问时cos://mybucket.service/myfile,出现错误:org.apache.spark.sql.AnalysisException: Path does not exist:.

使用作品访问文件s3://mybucket/myfile,因为它不使用 Stocator。也可以通过 amazon CLI 访问该文件。

是否有任何在线资源详细说明如何开始Stocator工作AWS

有没有人自己成功地做到了这一点,你能分享你的配置吗?

0 投票
1 回答
473 浏览

scala - java.io.FileNotFoundException: 未找到 cos://mybucket.myservicename/checkpoint/offsets

我正在尝试使用 Spark Structured Streaming 2.3 从 Kafka (IBM Message Hub) 读取数据并将其保存到 1.1 IBM Analytics Engine Cluster 上的 IBM Cloud Object Storage 中。

创建集群后,通过 ssh 进入:

创建jaas.confspark 与 Message Hub 对话所需的文件:

这将在集群jaas.conf的目录中创建一个文件。/home/wce/clsadmin

创建一个实用程序脚本来启动 spark shell(现在我们只有一个执行程序):

使用实用程序脚本启动 spark 会话:

现在在 spark shell 中,读取 Kafka(消息中心)流。确保更改kafka.bootstrap.servers以匹配您的服务凭据:

我们可以测试我们的连接是否正常:

一段时间后,您应该会看到一些数据打印到控制台,例如

设置 spark session 以便它可以访问 COS 实例:

我们可以通过编写一个虚拟文件来测试 COS 是否设置:

如果对 COS 的读写成功,上面的测试应该会输出如下内容:

现在尝试将流数据帧写入 COS:

对我来说,这失败了:

这是 stocator 还是 Spark Structured Streaming 的问题?

0 投票
2 回答
1036 浏览

apache-spark - Spark 将流写入 IBM Cloud 对象存储失败,并显示“访问密钥为空。请提供有效的访问密钥”

我目前正在使用 Apache Spark 2.3.2 并创建一个管道以从文件系统读取流 csv 文件,然后将其流写入 IBM Cloud 对象存储。

我为此使用Stocator连接器。通过以下配置,对 IBM COS 的常规读写工作正常。但是,读写流操作会抛出错误:

com.ibm.stocator.fs.common.exception.ConfigurationParseException:配置解析异常:访问 KEY 为空。请提供有效的访问密钥

stocator 配置

读取流

写流

错误日志:

"2018-12-17 16:51:14 WARN FileStreamSinkLog:66 - Could not use FileContext API for managing metadata log files at path cos://stream-csv.Cloud Object Storage-POCDL/_spark_metadata. Using FileSystem API instead for managing log files. The log may be inconsistent under failures. 2018-12-17 16:51:14 INFO ObjectStoreVisitor:110 - Stocator registered as cos for cos://stream-csv.Cloud Object Storage-POCDL/_spark_metadata 2018-12-17 16:51:14 INFO COSAPIClient:251 - Init : cos://stream-csv.Cloud Object Storage-POCDL/_spark_metadata Exception in thread "main" com.ibm.stocator.fs.common.exception.ConfigurationParseException: Configuration parse exception: Access KEY is empty. Please provide valid access key"

有没有办法解决这个错误或其他替代方案来解决?

更新了更多日志

0 投票
2 回答
378 浏览

jupyter-notebook - 如何使用运行 pyspark 的 IBM Jupyter 笔记本中的 stocator?

我想使用 stocator 从运行 pyspark 的 Jupyter 笔记本(在 IBM Watson Studio 上)访问 IBM 云存储。有人可以告诉我该怎么做吗?

我知道 stocator 已预先安装,但您是否必须先从笔记本中输入凭据或设置(如果 COS 上有特定的存储桶,我正在尝试访问)

例如。我有一个存储桶名称:my-bucket

我如何访问它?

我知道我可以使用 ibm_boto3 直接访问 COS,但这是针对 spark 应用程序的,因此我需要能够通过 stocator 来访问。

0 投票
0 回答
1155 浏览

apache-spark - 如何从火花将镶木地板写入minio?

我们有一些代码可以创建和使用本地 spark 并将 parquet 文件写入 S3。它适用于 Amazon S3 和 IBM Cloud Object Storage。但是当我建立一个 minIO 容器并将代码指向那里时,它会失败并出现如下错误:

据我所知,spark/hadoop/stocator 正在编写一个名为的空对象test.parquet,然后编写一个逻辑上“低于”该对象的 parquet 对象(模拟文件系统层次结构)。不幸的是,minIO 开发人员非常坚持不支持,因为 minIO 由文件系统支持,并且它们将它们的键映射到真实的文件系统路径(因此空test.parquet目录对象阻止他们成功创建同名的目录来放置分区)。

那么,还有其他方法可以通过 spark 将 parquet 写入 minIO 吗?!有没有办法告诉它不要创建那个空文件(或者强制它/最后有一个我认为可能适用于minio的文件?)

写入的示例代码片段:

0 投票
1 回答
448 浏览

apache-spark - Spark-submit with Stocator failed with Class com.ibm.stocator.fs.ObjectStoreFileSystem not found 错误

我正在尝试通过提取存储在 COS 中的文本文件在 Kubernetes 集群上运行 spark-submit wordcount Python。

对于配置,我遵循Stocator README.md

我可以看到驱动程序和执行程序 pod 正在旋转,几分钟后驱动程序出错并显示以下日志。

关于如何使这项工作的任何想法?我想将存储在 COS 中的文本文件传递给 Spark 下载附带的 wordcount Python 示例(示例文件夹)

我正在使用Spark-3.0.1-hadoop2.7,对于容器图像,我遵循了此处的文档