Lambda触发的Pentaho di工作

时间:2018-08-13 20:06:54

标签: amazon-web-services aws-lambda pentaho pentaho-data-integration

请帮助,如何实现?

要求:

当AWS S3存储桶中有新文件可用时,将触发lambda流程,并应触发用于验证/处理文件的Pentaho作业。

Pentaho作业应在服务器中执行,而不是在Lambda JVM中执行 (以利用可以使用Pentaho 7.1客户端社区版本的Linux Server的资源。)


注意:我遵循了https://dankeeley.wordpress.com/2017/04/25/serverless-aws-pdi/中的方法,这将在Lambda JVM中执行代码,但是根据我们的要求,我们需要作业在Linux服务器上运行。

Infra详细信息:

Pentaho代码将在服务器的文件存储库中;挂载位置示例:/ mnt / data

Pentaho版本:Pentaho 7.1客户端社区版本。

服务器:Linux

谢谢。

1 个答案:

答案 0 :(得分:0)

如果您希望在服务器而不是Lambda JVM中执行Pentaho作业,则根本不需要AWS Lambda。

您可以使用

  1. AWS SNS
  2. 在Linux服务器上提供HTTP端点,然后subscribes to SNS topic

基本上,您将需要安装HTTP服务器并提供一个HTTP端点,当S3中有新文件可用时可以调用该HTTP端点。 因此,当AWS S3存储桶中有新文件可用时,您可以将通知设置为AWS SNS而不是AWS Lambda,然后作为该SNS主题的订阅者,您可以挂钩在上面的步骤2中配置的HTTP端点。 >

因此,每当调用一个新文件时,SNS都会收到一条通知,该通知会将其推送到HTTP端点,然后您可以读取文件并执行Pentaho Job