【问题标题】:Issues while working with Amazon Aurora Database使用 Amazon Aurora 数据库时的问题
【发布时间】:2021-03-12 10:31:50
【问题描述】:

我的要求:

  1. 我想将来自e-commerce 网站的real-time events data 存储到数据库中
  2. 在存储数据的同时,我想从数据库中access the events data
  3. 我想执行某种ad-hoc analysis(SQL)
  4. 使用某种built-in methods(either from Boto3 or JAVA SDK),我想访问事件数据
  5. 我想创建某种Custom-API's 来访问存储在数据库中的事件数据

我最近遇到了Amazon Aurora(mysql) database.

我认为Aurora 是满足我要求的好例子之一。但是当我深入研究这个 Amazon Aurora(mysql) 时,我注意到我们可以使用 AWS-CDK 创建一个 database

但是

1.没有使用 AWS-CDK/BOTO3 创建表的等效方法

2。 BOTO3 或 JAVA SDK 中没有等效的方法来存储/访问数据库数据

谁能告诉我如何在 AURORA db 中使用 (IAC) 创建表?

谁能告诉我如何将实时数据存储到 AURORA 中?

谁能告诉我如何访问存储在 AURORA 中的实时数据?

【问题讨论】:

    标签: amazon-web-services boto3 aws-cdk amazon-aurora aws-java-sdk


    【解决方案1】:
    1. 没有使用 AWS-CDK/BOTO3 创建表的等效方法

    这是因为使用 Data API 只能访问 Aurora Serveless,而不是常规数据库。

    您必须使用常规 mysql 工具(例如,mysql cli、phpmyadminmysql workbench 等)来创建表并填充它们。

    1. BOTO3 或 JAVA SDK 中没有等效方法来存储/访问数据库数据

    与第 1 点相同的原因和解决方案。

    1. 谁能告诉我如何在 AURORA db 中使用 (IAC) 创建表?

    Terraform 有 mysql,但它不是用于表,而是用于用户和数据库。

    谁能告诉我如何将实时数据存储到 AURORA 中?

    没有开箱即用的解决方案,因此您需要为此定制解决方案。也许将数据流式传输到Kinesis Streams or Firehose,然后到 lambda 和 lambda 将填充您的数据库?似乎最容易实现。

    谁能告诉我如何访问存储在 AURORA 中的实时数据?

    如果您先将数据流式传输到 Kinesis Stream,则可以使用 Kinesis Analytics 对其进行实时分析。

    由于上述许多都需要自定义解决方案,因此其他架构也是可能的。

    【讨论】:

    • 我正在使用Aurora Serverless 方法。所以我可以使用DataAPI 在数据库中创建表吗?
    • @siva 是的。您运行普通 SQL 语句,但通过 AWS API,而不是直接连接到 RDS。它不起作用?
    • @siva 很高兴听到这个消息。如果答案有帮助,我们将不胜感激。
    【解决方案2】:

    创建连接管理器为 DriverManager.getConnection( "jdbc:mysql://localhost:3306/$dbName", //用你的端点和数据库名称替换这里 “根”, “管理员123” ) 然后 val stmt: Statement = con.createStatement() stmt.executeQuery("使用产品目录信息;") 每当您的 lambda 触发时,它也会执行此连接和 DDL 操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-04
      • 2017-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-19
      • 2018-03-01
      相关资源
      最近更新 更多