每 3 小时到每分钟在 AWS 上报告一次
Reports on AWS from every 3 hours to every minute
我需要一点帮助,指点正确的方向。
我的任务是将客户订单数据(用于销售服装)从本地传输到云端以用于报告目的(只读)。我们与 AWS 合作。数据源是 Oracle DB & mysql。我打算使用粘合作业,抓取数据源,然后通过步骤 functions/lambdas 将数据移动到说 Dynamo 数据库(NoSQl,快速),数据将在其中链接起来(假设有一个 ID 字段每个都链接数据)。以前报告此数据的时间大约为 2-3 小时。我打算每 2-3 小时安排一次胶水工作。
现在已经改变了。
我现在想让数据尽可能接近实时(同事们开始要求了)。一两分钟(或更早)的数据就足够了。
我想做的事情是否是我想要实现的正确方法(仅增加抓取源数据的频率)?还是我应该看看别的东西?
注意:我还没有制作系统(我只玩过 Dynamo、胶水作业和步进函数)。
那么,在 AWS 中是否有更好的方法,我想听听我的选择是什么(advantages/disadvantages 等)。
提前致谢
可以编写 Lambda 函数来获取数据源并更新 DynamoDB table。您可以使用 AWS SDK 编写 Lambda 函数来执行 AWS 服务操作;例如,更新 DynamoDB table。如果您编写了多个 Lambda 函数,那么您是对的 - 您可以通过 AWS Step Functions 一起使用它们来创建工作流。
这里的好处是,如果您确实创建了一个 AWS Step Functions 工作流,您需要按计划 运行,您可以创建另一个使用 AWS Step Functions API 的 Lambda 函数使用 startExecution 操作动态执行工作流。
总的来说,你的思路是对的。我会推荐在 AWS Step Functions 工作流中使用的 Lambda 函数,它可以经常被另一个根据 CRON 触发的 Lambda 函数调用,它调用 startExecution 操作。
我需要一点帮助,指点正确的方向。
我的任务是将客户订单数据(用于销售服装)从本地传输到云端以用于报告目的(只读)。我们与 AWS 合作。数据源是 Oracle DB & mysql。我打算使用粘合作业,抓取数据源,然后通过步骤 functions/lambdas 将数据移动到说 Dynamo 数据库(NoSQl,快速),数据将在其中链接起来(假设有一个 ID 字段每个都链接数据)。以前报告此数据的时间大约为 2-3 小时。我打算每 2-3 小时安排一次胶水工作。 现在已经改变了。 我现在想让数据尽可能接近实时(同事们开始要求了)。一两分钟(或更早)的数据就足够了。
我想做的事情是否是我想要实现的正确方法(仅增加抓取源数据的频率)?还是我应该看看别的东西?
注意:我还没有制作系统(我只玩过 Dynamo、胶水作业和步进函数)。
那么,在 AWS 中是否有更好的方法,我想听听我的选择是什么(advantages/disadvantages 等)。
提前致谢
可以编写 Lambda 函数来获取数据源并更新 DynamoDB table。您可以使用 AWS SDK 编写 Lambda 函数来执行 AWS 服务操作;例如,更新 DynamoDB table。如果您编写了多个 Lambda 函数,那么您是对的 - 您可以通过 AWS Step Functions 一起使用它们来创建工作流。
这里的好处是,如果您确实创建了一个 AWS Step Functions 工作流,您需要按计划 运行,您可以创建另一个使用 AWS Step Functions API 的 Lambda 函数使用 startExecution 操作动态执行工作流。
总的来说,你的思路是对的。我会推荐在 AWS Step Functions 工作流中使用的 Lambda 函数,它可以经常被另一个根据 CRON 触发的 Lambda 函数调用,它调用 startExecution 操作。