网站数据库的设计规范
一个好的网站数据库产品不等于就有一个好的应用系统,如果不能设计一个合理的数据设计数据库模型,不仅会增加客户端和服务器段程序的规范编程和维护的难度,而且将会影响系统实际运行的网站性能。一般来讲,数据设计在一个MIS系统分析、规范设计、网站测试和试运行阶段,数据设计因为数据量较小,规范设计人员和测试人员往往只注意到功能的网站实现,而很难注意到性能的数据设计薄弱之处,等到系统投入实际运行一段时间后,规范才发现系统的网站性能在降低,这时再来考虑提高系统性能则要花费更多的数据设计人力物力,而整个系统也不可避免的规范形成了一个打补丁工程。 1、命名的规范 不同的数据库产品对对象的命名有不同的要求,因此,数据库中的各种对象的命名、后台程序的代码编写应采用大小写敏感的形式,各种对象命名长度不要超过30个字符,这样便于应用系统适应不同的数据库。 2、索引的使用原则 创建索引一般有以下两个目的:维护被索引列的性和提供快速访问表中数据的策略。大型数据库有两种索引即簇索引和非簇索引,一个没有簇索引的表是按堆结构存储数据,所有的数据均添加在表的尾部,而建立了簇索引的表,其数据在物理上会按照簇索引键的顺序存储,一个表只允许有一个簇索引,因此,根据B 树结构,可以理解添加任何一种索引均能提高按索引列查询的速度,但会降低插入、更新、删除操作的性能,尤其是当填充因子(Fill Factor)较大时。所以对索引较多的表进行频繁的插入、更新、删除操作,建表和索引时应设置较小的填充因子,以便在各数据页中留下较多的自由空间,减少页分割及重新组织的工作。 3、数据的一致性和完整性 为了保证数据库的一致性和完整性,设计人员往往会设计过多的表间关联(Relation),尽可能的降低数据的冗余。表间关联是一种强制性措施,建立后,对父表(Parent Table)和子表(Child Table)的插入、更新、删除操作均要占用系统的开销,另外,知名不要用Identify 属性字段作为主键与子表关联。如果数据冗余低,数据的完整性容易得到保证,但增加了表间连接查询的操作,为了提高系统的响应时间,合理的数据冗余也是必要的。使用规则(Rule)和约束(Check)来防止系统操作人员误输入造成数据的错误是设计人员的另一种常用手段,但是,不必要的规则和约束也会占用系统的不必要开销,需要注意的是,约束对数据的有效性验证要比规则快。所有这些,设计人员在设计阶段应根据系统操作的类型、频度加以均衡考虑。 4、事务的陷阱 事务是在一次性完成的一组操作。虽然这些操作是单个的操作,SQL Server能够保证这组操作要么全部都完成,要么一点都不做。正是大型数据库的这一特性,使得数据的完整性得到了极大的保证。 事务可以嵌套,可以通过全局变量@@trancount检索到连接的事务处理嵌套层次。需要加以特别注意并且极容易使编程人员犯错误的是,每个显示或隐含的事物开始都使得该变量加1,每个事务的提交使该变量减1,每个事务的回滚都会使得该变量置0,而只有当该变量为0时的事务提交(后一个提交语句时),这时才把物理数据写入磁盘。 5、游标的慎用 游标提供了对特定集合中逐行扫描的手段,一般使用游标逐行遍历数据,根据取出的数据不同条件进行不同的操作。尤其对多表和大表定义的游标(大的数据集合)循环很容易使程序进入一个漫长的等特甚至死机,笔者对某市《住房公积金管理系统》进行日终帐户滚积数计息处理时,对一个10万个帐户的游标处理导致程序进入了一个无限期的等特(后经测算需48个小时才能完成)(硬件环境:Alpha/4000 128Mram,Sco Unix ,Sybase 11.0),后根据不同的条件改成用不同的UPDATE语句得以在二十分钟之内完成。 6、数据库性能调整 在计算机硬件配置和网络设计确定的情况下,影响到应用系统性能的因素不外乎为数据库性能和客户端程序设计。而大多数数据库设计员采用两步法进行数据库设计:先进行逻辑设计,而后进行物理设计。数据库逻辑设计去除了所有冗余数据,提高了数据吞吐速度,保证了数据的完整性,清楚地表达数据元素之间的关系。而对于多表之间的关联查询(尤其是大数据表)时,其性能将会降低,同时也提高了客户端程序的编程难度,因此,物理设计需折衷考虑,根据业务规则,确定对关联表的数据量大小、数据项的访问频度,对此类数据表频繁的关联查询应适当提高数据冗余设计。 7、数据类型的选择 数据类型的合理选择对于数据库的性能和操作具有很大的影响,有关这方面的书籍也有不少的阐述,这里主要介绍几点经验。Identify字段不要作为表的主键与其它表关联,这将会影响到该表的数据迁移。Text 和Image字段属指针型数据,主要用来存放二进制大型对象(BLOB)。这类数据的操作相比其它数据类型较慢,因此要避开使用。 深圳网站建设公司-沙漠风(www.szweb.cn.),拥有设计团队为企业提供FLASH网站设计,网页制作,多媒体触摸屏展示设计.
-
上一篇
-
下一篇
- 最近发表
- 随机阅读
-
- 些工作
- 网站建设商城网站有哪些功能?
- Google贝宝等将给英国十万企业免费建网站
- 装饰公司网站策划的重要性是什么?
- 制作高格调美食网站模板
- 网站如何做到用户体验度好留住浏览者
- 深圳福田网站建设设计,seo网站优化的方法有哪些?
- 深圳福田网站建设要多少钱,独立的外贸网站有哪些优势?
- 如何利用网站建设增强品牌价值与推广效果?
- 什么是栅格化设计 栅格化设计是什么
- 百度搜索调整后应该怎么做推广
- 允许城市夫妇生二胎,有多少人愿意生?
- 网站建设后如何去维护
- 定制网站建设的基本原则
- 几个需要特别注意的设计细节浅析
- 如何选择好的网站建设公司
- SEO与搜索引擎的关系发展
- 深圳网站建设中如何进行可持续发展的SEO策略?
- 企业建设营销型网站有哪些要点?深圳网站建设
- 企业应该如何制作设计酒店网站建设?
- 搜索
-
- 友情链接
-
- 微营销如何开展微信营销的方法
- 网站建设设计出的网站着陆页的技巧
- 什么是网站降权以及如何判断网站被降权
- 做网站SEO一定要有自己的信念和目标
- 搜索引擎最喜欢什么样的网站标题
- 移动WAP站标题和内容如何优化
- 网站建设设计出的网站着陆页的技巧
- 新网站上线找网站目录路径的优化
- 做SEO优化站长不要迷失方
- 移动营销中如何做好社群营销的技巧
- 微营销社交营销朋友圈的引流方式
- 做好网站排名需要指令
- 零基础SEO教程:seo入门书籍推荐
- 浅谈百度优化排名的“冷暴力”带来的影响
- 我也谈SEO 行业网站的经验SEO研究
- cookie有什么作用,对优化有什么影响?
- 理解正确与否决定seo优化效果
- 一个好的免费信息平台是企业网上推广捷径
- 网站建设优化企业网站的策划技巧有哪些
- 看到“SEO优化秘诀”请绕过,不如踏实做网络推广