提高数据库的数据处理速度
系统以前的业务逻辑处理都是利用数据库的存储过程来执行,但速度很慢。
想请问大家,在windows平台上,大家对逻辑数据的处理都采用什么方式?
------解决方案--------------------速度慢有很多因素引起,你先要定位引起问题的原因,比如网络问题,索引问题,数据库是否合理等问题
------解决方案--------------------sp的写法很重要,获取同样的数据,用不同的写法效率差异很大的,分析一下SP的性能,跟踪网络延时(数据库,程序不在同一台机器的话),记录一下比较复杂的业务逻辑代码的执行时间。相信你应该知道问题在哪里了
------解决方案--------------------数据库往往是主要的瓶颈,慢的原因一般如下
1.表设计,导致查询开销增加
2.事务和提交方式使用,对于数据库写操作,尽量减少提交次数,这和普通文件读写的优化是一样的
3.磁盘I/O,硬指标,换更好的磁盘,或者用内存预读,许多应用中,都是x86集群做业务,ibm小型机做存储,关系型数据库不太适合用分布式来提升性能,因为有关系的数据如果被分在了不同机器上,反而降低性能
4.SQL语句解析和执行,作为脚本,SQL本身就慢,两种解决方案,一是存储过程,二是真正的高性能应用,换NoSQL等不用SQL的数据库