gpt4 book ai didi

mysql - 具有最佳插入/秒性能的数据库?

转载 作者:IT老高 更新时间:2023-10-28 13:09:32 26 4
gpt4 key购买 nike

我们部署了一个由 Comet 服务器提供服务的(基于 AJAX 的)即时通讯工具。为了满足法定保留要求,我们需要将发送的消息存储在数据库中以供长期存档。

哪个数据库引擎在这种一次写入、从不读取(极少数异常(exception))要求中提供最佳性能?

我们需要至少 5000 次插入/秒。我假设既不是 MySQL 也不是 PostgreSQL可以满足这些要求。

有更高性能解决方案的建议吗? HamsterDB、SQLite、MongoDB ...?

最佳答案

请忽略上面的 Benchmark,我们有一个 bug。

我们插入了 1M 条记录,其中包含以下列:id (int)、status (int)、message (140 char, random)。所有测试均在具有 500 GB SATA 磁盘的台式 PC i5 上使用 C++ 驱动程序完成。

MongoDB 基准测试:

1M 记录插入无索引

time: 23s, insert/s: 43478

1M 记录插入 索引 在 Id 上

time: 50s, insert/s: 20000

接下来我们将 1M 记录添加到具有索引和 1M 记录的同一个表中

time: 78s, insert/s: 12820

这一切都会导致 fs 上接近 4gb 的文件。

MySQL 基准测试:

1M 记录插入无索引

time: 49s, insert/s: 20408

1M 记录插入带索引

time: 56s, insert/s: 17857

接下来我们将 1M 记录添加到具有索引和 1M 记录的同一个表中

time: 56s, insert/s: 17857

完全一样的性能,增长时mysql没有损失

我们看到 Mongo 在这次测试中吃了大约 384 MB 的内存并加载了 3 个 CPU 核心,MySQL 很满意 14 MB 并且只加载了 1 个核心。

Edorian 的提议是正确的,我会做更多的基准测试,我相信我们可以达到 2x 四核服务器 50K 插入/秒。

我认为 MySQL 将是正确的选择。

关于mysql - 具有最佳插入/秒性能的数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3519972/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com