database - 在多个 AWS EC2 实例之间共享的持续更新数据库
问题描述
对于一个小型个人项目,我每 5 分钟抓取一些数据并将其保存在 SQL 数据库中。到目前为止,我一直在使用结合 100GB EBS 存储的小型 EC2 AWS 实例。这对于抓取非常有效,但对于分析结果数据变得无法使用,因为 EC2 实例没有足够的内存。
数据分析只是不定期地进行,所以花 24/7 小时来拥有更大的 EC2 实例会感觉很浪费,所以我正在寻找更灵活的东西。通过阅读,我了解到:
- 您不能同时将 EBS 连接到两个 EC2 实例,因此无法在需要分析时启动第二个临时大实例。
- AWS EFS 似乎是一个解决方案,但要贵得多,而且考虑到我的知识有限,我不能 100% 确定这是理想的解决方案。
- 像 Amazon Athena 这样的无服务器选项看起来很棒,但这是基于 S3 的,它不适合需要持续更新的数据(?)。
我认为这对于 AWS 来说是一个非常常见的用例,所以我希望尝试在正确的方向上获得一些指示。我忽略了哪些适合我的问题的选项?EFS 是正确的方法吗?
谢谢!
解决方案
据我所知,S3 和 Athena 是不错的选择。我不确定您是否担心不使用 S3,但是一旦您可以将抓取的数据保存在 S3 中,您就可以使用 Athena(按查询付费模型)对其进行分析。
或者,您可以使用 RedShift 保存数据并分析哪些具有类似于 ec2 按需定价模型的按需服务。
此外,您可以使用 Kenisis Firehose,它可用于在您摄取数据时实时分析数据。
推荐阅读
- linux - 如何将 iptables-service 规则转换为 firewalld 规则?
- c# - .Net DataGridView Rows.Add 和 Rows.AddRange 与自定义 DataGridViewRow 的区别
- python - 使用 O-Auth 在 Flask 应用程序上访问 Google My Business API 的问题
- scala - 如何确定 if 语句中哪个条件为假
- react-final-form - 反应最终表单 FieldArray、侦听器和在表单外显示来自 api 调用的数据的问题
- java - 使用 PCF 用户提供的服务创建数据源失败
- python - 使用 cmake 和 pybind11 构建示例应用程序时找不到 Python.h
- python - gunicorn ModuleNotFound 错误,以前工作过
- laravel - 函数 store() 和 update()
- javascript - 如何格式化从数据库中提取的日期?