每秒约插入1万行数据进数据库,求解决方案
每秒约会产生1万条数据,字段都固定,加ID共6个,其中4个会经常查询,其中1个需要全文查询。现在使用mysql,每秒只能越插入100多条数据。。求方案不好意思我说的不太清...
每秒约会产生1万条数据,字段都固定,加ID共6个,其中4个会经常查询,其中1个需要全文查询。
现在使用mysql,每秒只能越插入100多条数据。。
求方案
不好意思我说的不太清楚,着重点不在查询,而在记录,能记录完全,查询慢点问题不是太大(也不能太慢。。)
以前是纯文本记录,数据量大约1MB/s的样子,因为数据量太大,每天记录都自动压缩,查询起来非常不方面,经常为了查询一条数据,解压都解1个小时。。
改数据库后第一便于查询,第二每个记录数据量也不纯文本要小的多。
现在1个小时1张表,索引只做了datetime和一个varchar(50)字段的联合索引。
字段分别是 bigint(8),varchar(50),varchar(255),datetime.
mysql不给力。。 昨天改成sqlserver,拿了一台每秒300kb/s左右的数据源测试,每秒可以记录2000条左右了。。
但还是达不到性能指标。。 展开
现在使用mysql,每秒只能越插入100多条数据。。
求方案
不好意思我说的不太清楚,着重点不在查询,而在记录,能记录完全,查询慢点问题不是太大(也不能太慢。。)
以前是纯文本记录,数据量大约1MB/s的样子,因为数据量太大,每天记录都自动压缩,查询起来非常不方面,经常为了查询一条数据,解压都解1个小时。。
改数据库后第一便于查询,第二每个记录数据量也不纯文本要小的多。
现在1个小时1张表,索引只做了datetime和一个varchar(50)字段的联合索引。
字段分别是 bigint(8),varchar(50),varchar(255),datetime.
mysql不给力。。 昨天改成sqlserver,拿了一台每秒300kb/s左右的数据源测试,每秒可以记录2000条左右了。。
但还是达不到性能指标。。 展开
12个回答
展开全部
1、编程,而非SQL插入;
2、使用参数,避免动态生成SQL ;
3、若可以,Table上先去掉索引与约束,全部插入完成后再重建;
2、使用参数,避免动态生成SQL ;
3、若可以,Table上先去掉索引与约束,全部插入完成后再重建;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
··这个也太多了点吧,只有几个途径了,一个是改用ORACLE,二个提高机器配置了,这个插入量按理都应该用分布式的数据库了,单机的估计很麻烦。
补充:说白了还是我说这两个途径,要么提高数据库规格,用ORACLE,要么就提高配置,不然就分布式数据库,多几个机器作为数据库就对了。
补充:说白了还是我说这两个途径,要么提高数据库规格,用ORACLE,要么就提高配置,不然就分布式数据库,多几个机器作为数据库就对了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个流量持续多久啊?
每3个小时一亿条记录而且还要经常查询,
这数据量有点离谱了。绝不是标准数据库可以搞定的,mysql不行,oracle也没戏。
每3个小时一亿条记录而且还要经常查询,
这数据量有点离谱了。绝不是标准数据库可以搞定的,mysql不行,oracle也没戏。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
程序中很多地方都会影响性能,索引做在字符串上是什么鬼,Oracle上单机基本上可以做到每秒持续万行到十万行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
别做索引会快点 ,索引只增加查询速度,会降低插入速度的。你的重点不在查询。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询