【发布时间】:2017-05-23 17:45:33
【问题描述】:
目前我确实有一个 mysql 数据库,我收集的数据是每年 5 兆字节。我会一直保存我的数据,我不认为我想很早就删除一些东西。 我问自己是否应该使用分布式数据库,因为我的数据每年都会增长。 5 年后,我将拥有 25 个没有索引的太字节。 (只是计算了我每天保存的原始数据)
我有 5 个表,大多数查询是多个表的连接。 而且我需要在特定的时间戳访问多行的 1-2 列。
分布式数据库会比单个 mysql 数据库更受欢迎吗?
分区会很困难,因为我所有的表都是高度连接的。
我知道这取决于查询和数据库表设计,我也可以拥有一个分布式 mysql 数据库。 我只想知道什么时候应该考虑分布式数据库。 这会是一个用例吗?或者mysql可以处理这么大的数据集吗?
编辑:
平均而言,我每秒将有 1500 个客户端写入数据,它们会影响所有表。
我只需要旧数据集进行分析。比如机器学习和 模式匹配。
- 客户端也应该能够看到历史数据
【问题讨论】:
-
鉴于您的查询负载,您应该考虑对表进行分区。可能还有其他非常合理的解决方案。
-
你的意思是只在一台机器上分区,没有分布式分区?
-
它需要了解更多关于使用的信息。重要的是您平均拥有多少连接以及它们使用的查询量有多大。他们是否仍会大量使用前几年的数据,如果查询通常仅限于某一特定年份,预计响应速度等。还有您拥有的 MySQL 版本以及服务器/实例的配置 - CPU/内存/如果使用仅适用于 mysql 等。可能会在某些时候发生,您每年都需要单独的实例,并使用联合引擎从主连接数据库中查询它们。但是如果没有详细的负载知识,就很难说...
标签: mysql database-partitioning distributed-system large-data bigdata