MySql 执行 insert 插入 每秒最大能达到多少呢?

274 天前
 zhangkunkyle

被问到 MySql 的问题,人家问我不考虑索引等情况,MySql insert 每秒能达到多少,我回答说应该几百到几千吧写硬盘应该不会太快,对方说不对,能达到 10 万,我对此有点疑惑,看有的网友说高性能 MySql 中写测试读的 QPS 最大 8000 ,搜到的信息也确定不了什么情况下能有这个吞吐量,不知有没有大佬能给小弟解答一下,真能达到 10 万么?还是需要特殊条件?谢谢~

1987 次点击
所在节点    MySQL
26 条回复
liprais
274 天前
我有一个阿里云的 mysql rds 峰值写入过 2w qps,我看还有 50%的剩余内存,应该不是上限
你自己去阿里云上买个大内存的 mysql 试试呗,基本上 buffer 用完了就是上限了
偷偷告诉你国产数据库厂家测 qps 都用的 256g 大内存的节点,内存比数据集还大是现在的基本操作
w8123
274 天前
batch insert 应该是可以支持 10w 这个量级的。另外如果表非常简单,没有多余索引,支持的 tps 肯定会高一些
hefish
274 天前
1 亿亿次
zhangkunkyle
274 天前
@liprais 谢谢
zhangkunkyle
274 天前
@w8123 谢谢
zhangkunkyle
274 天前
@hefish 这是要起飞的速度啊。。。
lscho
274 天前
不太懂,如果不加硬件限制,这个问题有意义吗
idealhs
274 天前
不谈硬件就问 MySQL?
dode
274 天前
批量插入很快,每秒 10w 小意思
hefish
274 天前
@zhangkunkyle e....随便讲讲的。
我觉着这个问题好像也有点意义,好像又没多少意义。。。
就像我年轻时候,特别注意一些没啥用的细节。。。
比如学校 4 楼实验室旁的男厕所有几个蹲位?
hongfs
274 天前
问完这个,不问问主键用完了怎么办吗。。。
zhangkunkyle
274 天前
@hongfs 没有问。。。
zhangkunkyle
274 天前
@dode 谢谢
dode
274 天前
@hongfs uuid 呗
dif
274 天前
用 SSD 会更快,但一般都会以数据安全(没钱)为由不给你配 ssd 。
godwinma
274 天前
各种影响因素很多,mysql 版本,机器配置。
qingbu
274 天前
insert values 每次插入 500 行,在不考虑冲突的情况下,并发情况下的写入很快的。单线程大概能跑 2-3w ,多线程 10w+没问题。但是插入速度会被很多因素影响,比如数据类型和数据的复杂程度。还比如一般 MySQL 都是主从,主库扛得住写,但是从库大概率会有主从延迟
zhangkunkyle
274 天前
@qingbu 谢谢
git00ll
274 天前
不能达到 10w 吧,我用 aws rds 测试,批量插入也就在 5000 左右,不过表中有 6 个索引
Superheroes
274 天前
表除了主键,不带索引,将语句限制( max_allowed_packet )改大点,batch insert 轻松到 10W (硬件性能要好),不要小看 mysql

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/963548

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX