Shiraz Bhaiji Asked: 2010-02-20 08:11:52 +0800 CST2010-02-20 08:11:52 +0800 CST 2010-02-20 08:11:52 +0800 CST 每秒最大数据库插入数 772 我正在考虑设计一个可以接收很多记录的系统。 每秒可以在数据库中执行多少次插入是否有任何固定限制? 我们通常使用 MS SQL 服务器,Oracle 更好吗?是否有可能在 No-SQL 云解决方案上获得更好的性能? database-performance 2 个回答 Voted voretaq7 2010-02-20T08:30:27+08:002010-02-20T08:30:27+08:00 我不知道有任何数据库系统对每秒的操作数有人为的限制,如果我找到一个这样做的,我会很生气。您唯一的限制因素应该是您的操作系统和硬件施加的实际限制,尤其是磁盘吞吐量。 您的其余问题(哪个数据库“更好”)取决于您的实施和要求。如果您只是将数据转储到存储桶中,那么像MongoDB这样的 NoSQL 解决方案可能是合适的,它们的性能可能会非常令人印象深刻。如果您的数据是高度相关的,基于 SQL 的 RDBMS 系统是更好的选择。 对于任何基于 SQL 的 RDBMS,您都应该花费一些时间来调整系统以获得最佳性能——您的数据库供应商可能会拥有大量关于该主题的文档,以及经过优化调整的系统与刚刚优化的系统之间的区别扔在硬件上可能是戏剧性的。 Kellenjb 2011-01-11T22:07:03+08:002011-01-11T22:07:03+08:00 当我在寻找为什么在我自己的一些性能测试中看到一些有趣的结果时,我偶然发现了这篇文章。 我在 postgres 上进行了测试,看看如何通过将我的插入分组来提高性能。因为我不是一次插入 1 次,而是将几个插入到一个大的 sql 字符串中,然后运行该 sql。 在进行测试时,我知道我坚持的越多,我期望的性能就越好,因为与实际数据相比,开销开始最小化。我还认为,由于在如此长的字符串中存在单个位错误时必须重新传输相关的开销,因此性能会在某个时候开始下降。 我没想到的是我的实验结果。我不确定如何解释这些数据,所以也许如果有人对此了解更多,他们可以尝试解释一下。
我不知道有任何数据库系统对每秒的操作数有人为的限制,如果我找到一个这样做的,我会很生气。您唯一的限制因素应该是您的操作系统和硬件施加的实际限制,尤其是磁盘吞吐量。
您的其余问题(哪个数据库“更好”)取决于您的实施和要求。如果您只是将数据转储到存储桶中,那么像MongoDB这样的 NoSQL 解决方案可能是合适的,它们的性能可能会非常令人印象深刻。如果您的数据是高度相关的,基于 SQL 的 RDBMS 系统是更好的选择。
对于任何基于 SQL 的 RDBMS,您都应该花费一些时间来调整系统以获得最佳性能——您的数据库供应商可能会拥有大量关于该主题的文档,以及经过优化调整的系统与刚刚优化的系统之间的区别扔在硬件上可能是戏剧性的。
当我在寻找为什么在我自己的一些性能测试中看到一些有趣的结果时,我偶然发现了这篇文章。
我在 postgres 上进行了测试,看看如何通过将我的插入分组来提高性能。因为我不是一次插入 1 次,而是将几个插入到一个大的 sql 字符串中,然后运行该 sql。
在进行测试时,我知道我坚持的越多,我期望的性能就越好,因为与实际数据相比,开销开始最小化。我还认为,由于在如此长的字符串中存在单个位错误时必须重新传输相关的开销,因此性能会在某个时候开始下降。
我没想到的是我的实验结果。我不确定如何解释这些数据,所以也许如果有人对此了解更多,他们可以尝试解释一下。