最近接触到海量数据库的工作,菜鸟不甚明白,想要和高手学习一二!前提:一张表有1千万条数据!问题一:每次统计记录数时,都要耗时20秒左右,用网页取数据根本打不开!
我已经在主键上建了索引,好像没有什么明显的效果!
请问高手们有好的建议或者方法吗?
问题二:在不用索引排序的情况下,每次取出10条很快,但是使用‘order by 索引’子句后,速度就达到让人难以忍受的地步了!
请问高手们是怎么做的啊?
欢迎大家指点!
我已经在主键上建了索引,好像没有什么明显的效果!
请问高手们有好的建议或者方法吗?
问题二:在不用索引排序的情况下,每次取出10条很快,但是使用‘order by 索引’子句后,速度就达到让人难以忍受的地步了!
请问高手们是怎么做的啊?
欢迎大家指点!
如果画面上必须从该表检索全部数据,可以把表作为Cache,直接在启动的时候Load到内存里去以减少数据库负担。(以后就相当于在APserver上面取结果集)
如果你查询的条件可以进行分段,例如时间或者名字按照开始字母等等,可以考虑建立分区表的存储方式。当然,如果你频繁对1000万级别的表进行update操作的话,慢也是肯定的。 是否考虑重新建立数据存储的结构?