【问题标题】:Does anyone know if we can start a storedprocedure in Aurora based on SQS有谁知道我们是否可以在 Aurora 中基于 SQS 启动一个存储过程
【发布时间】:2017-07-14 08:14:06
【问题描述】:

我正在尝试将数据从 Aurora 导出到 S3,我创建了一个存储过程来执行此操作。我可以在 Aurora Scheduler 上安排它在特定时间点运行。

但是,我有多个表 - 最多可以到 100 个;所以我希望我的进程控制器(它是 Lambda 中的一个 python 脚本)发送队列消息 - 基于此队列消息,将启动 Aurora 中的存储过程

我看这个的原因如下

  • 我不希望在开始两次导出之间有太多时间间隔
  • 我也不希望两个导出在执行时间上重叠

【问题讨论】:

    标签: python amazon-web-services amazon-sqs amazon-aurora


    【解决方案1】:

    没有任何内置集成允许 SQS 与 Aurora 交互。

    显然,您可以在外部执行此操作,使用从队列中读取并调用过程的队列使用者,但这似乎不相关,在这里。

    【讨论】:

    • 你是对的 - 这将是另一个 python 程序,除非我们在 Aurora 中有函数来监听 SQS - 有人知道它们是否存在
    • 它们不存在。正如我所指出的,没有任何内置集成......而且 Aurora 不允许您添加用户定义的函数(可以与外界交互并且用 C/C++ 编写,不要混淆使用存储函数,这些函数是用 SQL 编写的,当然支持但无济于事,在这里)。
    • 这也是我的猜测。想发帖看看有没有人做过类似的事情可以分享
    【解决方案2】:

    我使用 lambda 和 alembic 包来创建架构和结构。我知道我们可以创建用户并执行其他数据库命令——就像执行存储过程一样

    Lambda 可能会很昂贵——我们可能有一个容器来做它

    【讨论】:

      【解决方案3】:

      正如您所说,您正尝试按某个计划将数据从 Aurora 导出到 S3。
      我建议您使用AWS Data Pipeline 服务。
      这是解决此类问题的正确方法。

      AWS Data Pipeline 是一项 Web 服务,可帮助您以指定的时间间隔在不同的 AWS 计算和存储服务以及本地数据源之间可靠地处理和移动数据。借助 AWS Data Pipeline,您可以定期访问存储数据、大规模转换和处理数据,并将结果高效地传输到 AWS 服务,例如 Amazon S3、Amazon RDS、Amazon DynamoDB 和 Amazon EMR。

      【讨论】:

        猜你喜欢
        • 2022-09-23
        • 2013-09-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多