1

My Requirments:

  1. I want to store real-time events data coming from e-commerce websites into a database
  2. In parallel to storing the data, i want to access the events data from a database
  3. I want to perform some sort of ad-hoc analysis(SQL)
  4. Using some sort of built-in methods(either from Boto3 or JAVA SDK), I want to access the events data
  5. I want to create some sort of Custom-API's to access events data stored in database

I recently came across with Amazon Aurora(mysql) database.

I thought Aurora is one of the good example for my requirements. But when I dig into this Amazon Aurora(mysql), I noticed that we can create a database using AWS-CDK

BUT

1. No equivalent methods to create tables using AWS-CDK/BOTO3

2. No equivalent methods in BOTO3 or JAVA SDK to store/access the database data

Can anyone tell me how i can create a table using(IAC) in AURORA db?

Can anyone tell me how i can store realtime data into AURORA?

Can anyone tell me how i can access realtime data stored in AURORA?

siva
  • 339
  • 1
  • 7

1 Answers1

1
  1. No equivalent methods to create tables using AWS-CDK/BOTO3

This is because only Aurora Serveless can be accessed using Data API, not regular database.

You have to use regular mysql tools (e.g., mysql cli, phpmyadmin, mysql workbench etc) to create tables and populate them.

  1. No equivalent methods in BOTO3 or JAVA SDK to store/access the database data

Same reason and solution as for point 1.

  1. Can anyone tell me how i can create a table using(IAC) in AURORA db?

Terraform has mysql, but its not for tables, but users and databases.

Can anyone tell me how i can store realtime data into AURORA?

There is no out-of-the box solution for that, so you need custom solution for that. Maybe stream data to Kinesis Streams or Firehose, then to lambda and lambda will populate your DB? Seems easiest to implement.

Can anyone tell me how i can access realtime data stored in AURORA?

If you stream data to Kinesis Stream first, you can use Kinesis Analytics to analyze it in real time.

Since many of the above requires custom solutions, other architectures are possible.

Marcin
  • 108,294
  • 7
  • 83
  • 138