【发布时间】:2019-02-14 15:55:30
【问题描述】:
我有以下 2 个用例适用于此
案例 1. 我需要单独调用 lambda 来调用 athena 来对 s3 数据执行查询?问题:如何通过api单独调用lambda?
案例 2。每当文件复制到已映射到 athena 的同一个 s3 存储桶时,我需要 lambda 函数来调用 athena?
我正在参考以下链接来执行相同的操作以在 athena 上执行 Lambda 操作
链接: https://dev.classmethod.jp/cloud/run-amazon-athenas-query-with-aws-lambda/
案例2:以下是例如想要整合:
s3-1 中的文件是 sales.csv - 我会通过从其他 s3-2 复制数据来更新销售详细信息。 s3-1 数据中定义的模式/列将保持不变。 所以当我将一些文件复制到映射到 athena 的相同 s3 数据时,lambda 应该调用 athena 来执行查询
是否可以提供更好的方法来实现上述情况?
谢谢
【问题讨论】:
-
欢迎来到 StackOverflow! “自定义列表中的任何事件”是什么意思?您如何调用 Lambda 函数?它似乎正在从传入的事件中检索
name,并在 Athena 查询中使用它。你到底想达到什么目的? -
嗨@JohnRotenstein 我想要实现的是,如果我们更新已经映射到 athena 数据库的同一个 s3 buck 中的数据,如何使用 lambda 自动调用 athena 上的查询?如果我的用例在这种情况下无法应用,请纠正我
-
因此,您的用例似乎是:将文件添加到 Amazon S3 存储桶时,使用 Amazon S3 事件触发 Lambda 函数。然后 Lambda 函数将调用 Athena 以对上传的数据文件执行查询。那是对的吗?问题:文件将始终是同一个文件,还是可能有不同的名称?我这样问是因为 Athena 在运行查询之前需要一个
CREATE TABLE。此外,它只会查询一个文件,还是会查询一个目录中的多个文件?随时编辑您的问题以提供更多详细信息。 -
@JohnRotenstein 我已经编辑了问题,提出了我想要实现的 2 个案例。请让我知道是否清楚提供解决方案?谢谢
标签: amazon-web-services amazon-s3 aws-lambda amazon-athena