我有一个具有5亿条记录的Aurora表。 我需要执行大数据分析,例如查找两个表之间的差异。 到目前为止,我一直在文件系统上使用HIVE进行此操作,但是现在我们已将所有文件行插入Aurora DB中。 但是仍然每个月我都需要做同样的事情才能找到差异。
那么,什么才是最好的选择呢?
或者还有什么更好的方法。
答案 0 :(得分:1)
我认为Aurora MySQL不是执行大数据分析的好选择。这是由于MySQL InnoDB的限制以及与MySQL InnoDB有关的Aurora的其他限制所致。例如,您找不到诸如数据压缩或列格式的功能。
关于Aurora,您可以使用例如Aurora并行查询,但是它不支持分区表。
https://aws.amazon.com/blogs/aws/new-parallel-query-for-amazon-aurora/
其他选项是使用AWS Glue直接连接到Aurora并执行分析,但是在这种情况下,数据库性能可能会出现问题。可能是瓶颈。
https://docs.aws.amazon.com/glue/latest/dg/populate-add-connection.html
我建议使用LOAD DATA FROM S3 / SELECT INTO OUTFILE S3 to S3导入/导出数据到s3,然后使用Glue或EMR执行分析。您还应该考虑使用Redshift代替Aurora。