您的位置:首页 > 数据库

提交数据库访问性能一些简单措施

2012-01-16 20:10 274 查看
1.合理安排索引

2.优化查询条件

3.谨慎使用触发器

4.大批量插入使用导入方式

5.区分实时与历史数据,转存

6.分表,分库,分渠道储存,数据库,硬盘,缓存。数据库的优化和定期整理

7.建立全文索引

8.优化查询

就有可以百万级也是1秒内出来

我认为数据分区、分成多个表、增加内存、换更好的机器都是物理上的,当然她带来的速度的改善是有的。但是性能的改善一般比较少做多10倍到100倍之间。

对Oracle我不熟悉,但在SQL Server中最有效和可行的办法是优化数据库结构和索引。

对于优化数据库有根据事务型和数据仓库型分为两个方面。

偏重事务需要插入、更新速度快,所以一般这样的表索引比较少,字段数目也少

数据仓库需要查询速度快,他一般会根据查询可能出现的条件建立所有的索引,形成所谓的索引覆盖。在大数据量的数据库中,一旦某个查询不能完全利用索引,就会形成表扫描。这是最坏的情况,查询速度同数据量成正比。而如果能完全利用索引,查询速度只有在数据量变化几个等级才会有一些变化。我曾经测试过一个库存表150条记录,索引建立不好一个查询需要4分钟,对索引优化以后1秒不到。如果数据单纯作为查询可以取消对该表的日志功能。

我一般是分成两个库,一个处理事务,一个处理查询,然后建立一个定期事务把事务数据增加到查询库中。

总的来说,只有才所有软的手段不能解决问题的情况下才采用物理的方法。但是物理的方法也不是单纯增加应加的配置。一般有以下几个手段

1。把日志放到另外的硬盘上

2。把修改最频繁的表放到另外的硬盘上、甚至放入内存中

3。采用更快的硬盘

4。增加更多内存

5。增加CPU数目

6。建立数据库服务器集群

数据库的优化是一门很专业的学问,这又你充分的了解数据在数据库中存储的结构,查询、修改的处理方式同时又了解业务才可能做好。我们应该花20%的精力去解决那些最关键最常用的地方。

希望能有更多的人参与讨论,一点议论不要见笑。

其实问题到了sundyl这里,已经提升到了一个高度了。

显然为了提高系统的性能,通常有几个办法

1。将所有相关的硬件升级,并尽最大可能减少每个瓶颈,诸如网络速度、硬盘速度等

2。选择稳定、高性能的软件支撑平台,比如选择数据库、应用服务器。。。

3。程序代码优化

4。将软件系统环境优化,例如索引、存储空间、临时空间、碎片整理等选项。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: