首页 > Linux操作系统 > Linux操作系统 > 畅谈绿色数据库的应用
他说“我们围绕着绿色思想一直考虑着衡量软件厂商提到绿色数据库的想法,我们Sybase提出这样一个口号就是”SPoT“用它衡量一个数据库,到底绿色计算能力有多强,S代表的是源数据,P代表的是性能的指数,T是目标数据库。这个公式是什么意思呢?我们假设在P一定的情况下,大家性能都差不多的情况下,S除以T就是原数据到目标数据库的数据压缩比例。数据库的一个产品到底在什么样的SPoT值的情况下给用户提供了一个等量的性能呢?这就是衡量数据库到底有多么绿色的指标。所以比如对Sybase来说,不具体指名字了,比如对A数据库和B数据库来说,一个数据库的SPoT值大于1,一个小于1,那么就可以说大于1的数据库能够更加本着绿色计算的宗旨给用户提供服务。”
上面的是sybase技术总监卢东明先生对绿色数据的解释。在我认为,绿色数据库的主要目的还是为了提高数据库的性能,以及降低硬件成本。
那么我以使用者的身份谈谈。首先提高数据的性能,要提高数据库性能,我们就必须对其进行优化处理。
1.在一个大数据库中,数据空间的绝大多数是被少量的表所占有。
为了简化大型数据库的管理,改善应用的查询性能,一般可以使用分区这种手段。所谓分区就是动态表中的记录分离到若干不同的表空间上,使数据在物理上被分割开来,便于维护、备份、恢复、事务及查询性能。当使用的时候可建立一个连接所有分区的视图,使其在逻辑上仍以一个整体出现。
2.分区索引。
3.分区管理
根据实际需要,还可以使用Alter table命令来增加、删除、交换、移动、修改、重命名、划分、截短一个已存在分区的结构
4.重建索引
如果表中记录频繁地被删除或插入,尽管表中的记录总量保持不变,索引空间的使用量会不断增加。虽然记录从索引中被删除,但是该记录索引项的使用空间不能被重新使用。因此,如果表变化不定,索引空间量会不断增加,不论表中记录数量是否增加,只是因为索引中无效空间会增加。
要回收那些曾被删除记录使用的空间,需要使用Alter index rebuild命令。可以做一个定期运行的批处理程序,来重建最活动表的索引。这个批处理程序可以在空闲时运行,以避免该程序与其他应用程序冲突。若能坚持索引的这一程序规划,便可以及时回收那些未使用空间,提高空间利用率。
5.段的碎片整理
当生成一个数据库对象时(一个表或一个索引),通过用户缺省值或指定值来为它指定表空间。一个在表空间中生成的段,用于存储对象的相关数据。在段被关闭、收缩、截断之前,段所分配的空间将不被释放。
一个段是由范围组成,而范围是由相邻的Oracle块组成。一旦存在的范围不能再存储新的数据,这个段就会去获得新的范围,但并不要求这些范围是彼此相邻的。这样的扩展会一直继续下去,直到表空间中的数据文件不能提供更多的自由空间,或者范围数量已达到极限。
6.优化代码
在我们编写代码的时候要尽量少用一些IN等方法。而且不必要存入数据库的数据尽量不存入数据库。比如说有人喜欢把大量文字、HTML页面、图片等数据都存入数据库,占用了大量的数据库空间,造成数据库文件过大,使得数据查询起来耗费N多资源。
第二、降低硬件成本。目前数据库发展的越来越完善,功能越来越强大,但是使用的系统资源也越来越多。这样系统就必须提升硬件性能,造成硬件成本过大。所以尽可能的做到高性能少资源。加大对数据库数据的压缩等等。
以上就是我针对绿色数据库的一些看法。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7699723/viewspace-617678/ ,如需转载,请注明出处,否则将追究法律责任。