资源描述:
《Chapter 4_ Design a Database》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、MinWangTongjiUniversitymailto:min.wang@tongji.edu.cn学生将会学到:数据库设计数据库设计onDB2forZ/OS需求分析设计实现DatabaseImplementationLogicalDatabaseDesignNon-FunctionalSoftwareimplementationRequirementSpecificationApplicationSoftwareFunctionalDesignImplementation功能性需求(用例)
2、◦数据◦商业规则非功能性需求◦平台◦架构(集中式或者分布式)◦性能目标◦数据容量和增长的速率◦加密策略◦安全策略◦备份和恢复策略软件需求规约原始信息Entity-Relationship•数据设计逻辑数据datamode•商业规则库目标参数可选设计物理数据库•性能目标•数据规模•数据增长比率Relationaldatamode•加密策略•安全策略可选实现数据库•备份和恢复DB2database存储耗费是预算计划的一部分最初需要大小和增长速率千万别忘了开销Record(row)开销◦8byte
3、headerColumn开销◦1bytefor每一个空列◦2bytesfor每一个varying-length或者ROWIDcolumn◦6bytesinthebasetableforeachLOBcolumnPage开销◦22-byteheader最大的recordsize<=pagesize索引需要占存储空间的索引存储空间是所有叶接点page和非叶接点page的和Indexkey大小AVGKEYLENcolumninSYSIBM.SYSINDEXESFactorTightMedium
4、designLoosedesigndesignRecordoverheadX1.021.101.30FreespaceX1.001.051.30UnusablespaceX1.151.151.15DatasetexcessX1.021.11.3indexes=1.021.21.40MultiplierM1.221.753.54除了数据需要存储空间之外,有些还需要额外的存储设备:◦Imagecopiesofdatasets,whichcanbeontape◦Systemlibraries,system
5、databases,andthesystemlog◦TemporaryworkfilesforutilityandsortjobsDiskspace=3xMultiplierCREATEDATABASESQLstatement◦Storagegroup◦Bufferpool◦Indexbufferpool为了一致性,应避免把大量的表放在同一个数据库中当你创建对象没有指定数据库时◦InV8,objectcreatedinDSNDB04◦InV9NFM,DB2automaticallyCreate
6、sanewdatabaseusingthenamingconventionofDSNxxxxx(fromDSN00001toDSN60000)CREATETABLESPACESQLstatementTablespacetype◦Segmented◦Partitioned◦Universal◦LOB例如:◦CREATETABLESPACEMYTSINMYDBUSINGSTOGROUPMYSTOGRPPRIQTY30720SECQTY10240SEGSIZE32LOCKSIZETABLEBUFFER
7、POOLBP0;一个表空间可以被隐式的创建表是存储数据的逻辑结构CreatetableSQLstatementCREATETABLEDBTBRCH(BRANCHCHAR(5)NOTNULLPRIMARYKEY,FULL_NAMECHAR(50)NOTNULL,TELEPHONECHAR(20),ADDRESSCHAR(70),MANAGERCHAR(8)NOTNULL,STSCHAR(2),OPEN_DATEDATE,MAKER-IDCHAR(8),PROC-BR-CODECHAR(5),LS
8、T-MAINT-DATEDATE)ColumnnameDatatypeNullvalues◦standforanunknownormissingvalueDefaultvaluesRecordlength—固长的和变长的Recordlengthsandpages◦Recordlength:所有列的长度的总和◦在page中真实数据存储的大小:sumoflengthsPageheader#rowsmultipliedby(recordhead