有没有办法将 Gzipped 文件从 Amazon S3 加载到 Pentaho (PDI / Spoon / Kettle) 中?

发布于 2024-11-14 08:36:21 字数 368 浏览 13 评论 0原文

有没有办法将 Gzipped 文件从 Amazon S3 加载到 Pentaho Data Integration (Spoon) 中?

有一个“文本文件输入”具有支持 Gzip 的压缩属性,但该模块无法连接到 S3 作为源。

有一个“S3 CSV 输入”模块,但没有压缩属性,因此它无法将 Gzipped 内容解压缩为表格形式。

此外,无法将数据从 S3 保存到本地文件。下载的内容只能“跳转”到另一个Step,但没有Step可以读取前一个Step的gzip压缩数据,Gzip兼容的步骤都只能从文件中读取。

因此,我可以从 S3 获取压缩数据,但无法将该数据发送到可以使用它的任何地方。

我错过了什么吗?有没有办法从非文件源解压缩压缩数据?

Is there a way to load a Gzipped file from Amazon S3 into Pentaho Data Integration (Spoon)?

There is a "Text File Input" that has a Compression attribute that supports Gzip, but this module can't connect to S3 as a source.

There is an "S3 CSV Input" module, but no Compression attribute, so it can't decompress the Gzipped content into tabular form.

Also, there is no way to save the data from S3 to a local file. The downloaded content can only be "hopped" to another Step, but no Step can read gzipped data from a previous Step, the Gzip-compatible steps all read only from files.

So, I can get gzipped data from S3, but I can't send that data anywhere that can consume it.

Am I missing something? Is there a way to unzip zipped data from a non-file source?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

薆情海 2024-11-21 08:36:21

Kettle 在处理文件时使用 VFS(虚拟文件系统)。因此,您可以通过http、ssh、ftp、zip等获取文件,并在读取文件的所有步骤中将其用作常规的本地文件。只需使用正确的“url”即可。您可以在此处这里,还有一个非常好的教程在这里。另外,请查看 Kettle 附带的 VFS 转换示例。

这是 S3 的 url 模板: s3://:@s3

在您的情况下,您将使用带压缩的“文本文件输入”您提到的设置和选择的文件将是:

s3://aCcEsSkEy:SecrEttAccceESSKeeey@s3/your-s3-bucket/your_file.gzip

Kettle uses VFS (Virtual File System) when working with files. Therefore, you can fetch a file through http, ssh, ftp, zip, ... and use it as a regular, local file in all the steps that read files. Just use the right "url". You will find more here and here, and a very nice tutorial here. Also, check out VFS transformation examples that come with Kettle.

This is url template for S3: s3://<Access Key>:<Secret Access Key>@s3<file path>

In your case, you would use "Text file input" with compression settings you mentioned and selected file would be:

s3://aCcEsSkEy:SecrEttAccceESSKeeey@s3/your-s3-bucket/your_file.gzip

墨洒年华 2024-11-21 08:36:21

我真的不知道如何做,但如果您确实需要这个,您可以寻找通过 Pentaho Data Integration 提供的 VFS 功能来使用 S3。我可以在我的 PDI CE 发行版中找到包含以下内容的 vsf-providers.xml

../data-integration/libext/pentaho/pentaho-s3-vfs-1.0.1.jar

<providers>
  <provider class-name="org.pentaho.s3.vfs.S3FileProvider">
    <scheme name="s3"/>
    <if-available class-name="org.jets3t.service.S3Service"/>
  </provider>
</providers>

I really don't know how but if you really need this you can look for using S3 through VFS capabilities that Pentaho Data Integration provides. I can se a vsf-providers.xml with the following content in my PDI CE distribution:

../data-integration/libext/pentaho/pentaho-s3-vfs-1.0.1.jar

<providers>
  <provider class-name="org.pentaho.s3.vfs.S3FileProvider">
    <scheme name="s3"/>
    <if-available class-name="org.jets3t.service.S3Service"/>
  </provider>
</providers>
半透明的墙 2024-11-21 08:36:21

您还可以尝试在peanatho 水壶中使用GZIP 输入控制。

You can also try with GZIP input control in peanatho kettle it is there.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文