database - 管理大量数据的最佳数据库解决方案

标签 database performance traffic large-data-volumes

我必须设计一个交通数据库,其中包含来自不同城镇(8 个城镇)2mb 的数据,每个城镇 24 小时 10 分钟。所有城镇的传入数据都是相同的。所以我的第一个问题是在性能方面哪个更好:为所有城镇设计一个包含许多表的数据库(每个城镇一个表)还是设计多个数据库(每个城镇一个数据库)?我的第二个问题是什么是适合这种情况的最佳数据库管理系统,MySQL、Postgres、Oracle 还是其他?

最佳答案

您每天接收的数据量相当大 (~5GB),但插入的行数实际上相当低。因此,您需要设计物理模型,使数据库存储管理变得简单且查询高效。

只有在每个数据库有一个服务器的情况下,每个城镇都有一个单独的数据库才有意义。但是您不需要负载平衡,因为您只需每十分钟处理八次插入。另一方面,该体系结构会将每个将一个城镇与另一个城镇进行比较的查询转变为分布式查询。

如果您的大部分查询仅限于来自城镇的数据而不是比较城镇,则在同一个数据库中为每个城镇拥有一张表可能会给您带来一些性能优势。但是我不想在上面投入太多的钱。即使它确实有效,它也可能会使其他类型的查询变得更加困难。

鉴于所有城镇的数据都相同,我的首选方案是使用一个带有区分列 (TOWN_ID) 的表。特别是如果我有钱购买带有分区选项的 Oracle 许可证。

关于database - 管理大量数据的最佳数据库解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2272273/

相关文章:

c# - ASP.NET MVC 3 如何将 ViewModel 数据保存到多个关联表

升级到mysql8后mysqldump慢

android - 更快地启动不同进程中的 Activity

linux - 为什么 Windows 上的 FFTW 比 Linux 上快?

php,流量捕手

java - 用 Jpcap 过滤

MySQL 分析表响应

sql - 数据库中有多少行太多了?

javascript - 为什么+=(加法赋值,加上等于)在 Node 中这么慢?

node.js - Node js..创建一个代理服务器来监视和记录流量