投入多少,收获多少;投入多深,领悟多深。太阳底下没有新鲜事,排列组合就是创新。每天多做一点点,就是进步的开始,每天进步一点点,就是成功的开始,每天创新一点点,就是领先的开始。

DBA参与开发项目的意义

上一篇 / 下一篇  2008-03-21 09:40:53 / 个人分类:ORACLE

1.        为什么DBA要了解业务需求? DBA了解业务需求后会给项目代来哪些建议?

 

DBA了解业务需求后,就明白了业务流程,熟悉了业务流程就清楚了数据的流向,然后就可以站在数据的角度来分析数据变化的情况(如数据增长情况,数据分布情况,是否有特殊性数据等),有了以上这些分析,DBA就可以更好的配合开发同事来设计表和索引等.

比如,一些记录日志的表,这些表中的数据生命周期相对很短。几周或是几个月而已。这时DBA可能会和开发同事讨论,建议使用partition table技术来完成。

 

2.      为什么开发同事设计好项目中所有的表和索引后,开发同事要和DBA一起讨论一下?

 

因为开发同事主要是偏向于业务功能如何实现,对实现业务功能和业务逻辑有较强的技能。但对数据库的认识一般会把数据库当作是一个存放数据的工具,一个黑匣子来看。而DBA的工作正是了解数据库的工作机制,站在性能的角度来考虑如何让数据有效的存放和快速的取出。所以感觉开发人员和DBA共同协作,可能会做得更好,设计出更高效的系统.

 

3.      为什么开发同事要将与项目相关的SQL提供给DBA查看?

 

开发同事主要提供执行次数较为频繁(执行次数很多)SQL,这样的SQL执行一次可能开销不太,但是由于执行次数较多,所以整体开销会很大(Executions*per exec)。同时由于执行执行次数较多容易会现lock或是latch等现象。另外,执行次数较为频繁的SQL所牵涉到的表,应该也是热点表,所以当DBA知道这些后,会有针对性的重点观察关注这些SQL及用到的热点表。

 

 


TAG:

不胜人生一场醉 引用 删除 bq_wang   /   2008-03-21 18:17:55
好像开窍了

这是阶级斗争的需要
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-07-07  
  12345
6789101112
13141516171819
20212223242526
2728293031  

数据统计

  • 访问量: 2569
  • 日志数: 118
  • 建立时间: 2007-12-06
  • 更新时间: 2008-07-04

RSS订阅

Open Toolbar