首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL集群中的大容量插入和更新

MySQL集群中的大容量插入和更新
EN

Stack Overflow用户
提问于 2018-10-25 18:56:42
回答 1查看 110关注 0票数 0

目前我们使用的是带有Mybaits的Mysql集群。当我们对特定表进行批量插入或更新时,花费了超过120秒,但期望低于30秒。

例如10k个记录,首先我们尝试一次更新10k行,这花费了180到240分钟。所以我们转移到一些解决方案,像4k,4k,2k,这也花了120到180分钟。最后我们把记录分成2k,2k,...花费了90到120秒,但是CPU使用率很高。

那张表上没有关系。

对于这些情况的任何解决方案,我们应该转向nosql或数据库级别的优化。

EN

回答 1

Stack Overflow用户

发布于 2018-10-29 20:46:55

当批量处理时,集群非常有效,因为避免了网络往返。但是你的插件听起来太慢了。即使不使用批处理的串行插入也应该快得多。

当我将20k批处理记录插入到一个聚类表中时,在我的笔记本电脑上大约需要0.18秒。这显然取决于模式和数据量。

确保你没有在每条记录后使用自动提交。还可以使用

插入...值()、()、() ...分批插入类型

而不是

插入...值()插入...值()

您还可以根据要在一个事务中插入的数据量来增加ndb批处理大小。

有关您的设置、如何插入、是否存在blobs以及模式和数据外观的详细信息将有助于更具体地回答问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52987615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档