有什么工具可以插入大量的测试数据?

kyle315 2010-07-19 10:02:12
数据库使用MySQL,现需插入大量的测试数据,数据量在十几亿条以上,且都需按照一定的规则产生,使用存储过程插入太慢了,有什么工具或方法可以产生吗?
...全文
465 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
linscooter 2010-07-27
  • 打赏
  • 举报
回复
用insert into select的方法,选择一个备用表,两个表来回的倒,一个来回2倍增加,应该快些吧。就是到后期的执行速度是否太慢?
kyle315 2010-07-23
  • 打赏
  • 举报
回复
汗,楼上的回答相当于让中国人每人给我1块钱我都是亿万富翁一样。呵呵。

CSDN真TMD无聊,一个人还不能连续发3个回复,想顶一下都不成。
商科程序员 2010-07-23
  • 打赏
  • 举报
回复
让十亿人一人帮你写一条.
kyle315 2010-07-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 acmain_chm 的回复:]
数据量在十几亿条以上

这个的确是个难题。 唯一能想到的办法,就是直接写C程序调用MYISAM引擎的API代码,不通过MYSQL,直接写MYISAM文件。 不过即使是直接用C写数据文件,写 十几亿条 *平均每条50字节 = 50G的数据,也不容易啊。
[/Quote]

这种方式明天测试一下。
kyle315 2010-07-20
  • 打赏
  • 举报
回复
粗略计算了下,大概需要30亿条数据记录。
kyle315 2010-07-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 iihero 的回复:]
引用楼主 kyle315 的回复:
数据库使用MySQL,现需插入大量的测试数据,数据量在十几亿条以上,且都需按照一定的规则产生,使用存储过程插入太慢了,有什么工具或方法可以产生吗?

本来我想建议你使用WinSQL来插入的,一看数据量在十几亿条,。。。。。估计效率太低。它倒是有这个功能,设置规则随机生成测试数据。

我的建议是,根据你的表结构定制,使用C程序生成符合格式的文本文件,然后……
[/Quote]

本来也想使用load data的方式,但考虑到同样也要先写文件,就没去测试。

因为要模拟一年中,不同时间(间隔5分)的数据,并涉及几百张同样的表,使用存储过程循环插入(采用批量提交的方式),效果一般。最后采用insert into select的方式,将存储过程插入ok的表数据插入到其他表中(本来每张表中的数据是不一样的,这里为了快速模拟,做了些牺牲),但效果还一般,500万条要12分钟。截止现在,还没有插完。
ACMAIN_CHM 2010-07-20
  • 打赏
  • 举报
回复
数据量在十几亿条以上

这个的确是个难题。 唯一能想到的办法,就是直接写C程序调用MYISAM引擎的API代码,不通过MYSQL,直接写MYISAM文件。 不过即使是直接用C写数据文件,写 十几亿条 *平均每条50字节 = 50G的数据,也不容易啊。
zuoxingyu 2010-07-20
  • 打赏
  • 举报
回复
用PowerDesigner 吧。
ChumpKlutz 2010-07-20
  • 打赏
  • 举报
回复
如何使用存储过程都慢,估计没有快的了
iihero 2010-07-20
  • 打赏
  • 举报
回复
[Quote=引用楼主 kyle315 的回复:]
数据库使用MySQL,现需插入大量的测试数据,数据量在十几亿条以上,且都需按照一定的规则产生,使用存储过程插入太慢了,有什么工具或方法可以产生吗?
[/Quote]
本来我想建议你使用WinSQL来插入的,一看数据量在十几亿条,。。。。。估计效率太低。它倒是有这个功能,设置规则随机生成测试数据。

我的建议是,根据你的表结构定制,使用C程序生成符合格式的文本文件,然后,使用mysql的命令行load data
这样,效率应该是最快的。
kyle315 2010-07-19
  • 打赏
  • 举报
回复
顶顶。

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧