




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
DB2设计与性能优 讲师
【】和幻灯片为炼数成金网络课程的教程以外范围散播,违者将可能被法律和经济课程详情炼数成金培训 DB2设计与性能优 讲
提 MDCDB2设计与性能优 讲师
DB2何时使用全表扫表的大部分数据行都必须 才能获查询结表很索引不存
Originalselectacct_id,namefromacctwherebalance>AccessTotalQuery |TABLE:
1DB2设计与性能优 讲
如何避免全表扫描的I/O操的缓冲池空扫描全部行需 的合适的索范围定界谓词(Range-完全索引扫描(Index-OnlyAccess支持双向扫描的索MQT(物化视图DB2设计与性能优 讲
利用索引提高性能避免不必要的全表扫避免排加速频繁执行的查内表上创建的索引能加速多表连减少锁等待和死
DB2设计与性能优 讲
使用索引提高性能使用EXPLAIN工具分析SQL的执行计划增加编译或者准备SQL实用工具的代价(RUNSTATS,REORG,DB2设计与性能优 讲
提 MDCDB2设计与性能优 讲师
索引 结构-B+ (‘P’ (‘E’,(‘E’,rid)(‘F’,(‘G’,rid)(‘I’,rid)(‘N’,rid1,
(‘N’,rid3,rid4)(‘P’,
(‘T’(‘T’)‘T’‘T’‘I’‘P’‘N’‘E’‘N’‘N’,‘N’‘E’‘N’‘N’,“Q’‘G’DB2设计与性能优 讲
谓词处理的方Residual谓
SalarySalary>ALLSearch(SARGs)谓
NameLIKEBuffer
Rang-delimiting谓词IndexStart/StopIndexSargable谓词 可用叶子节点中的数据计
DB2设计与性能优 讲WHERE子句IndexRange-delimitingRange-delimiting谓Index-sargable谓LikeDataLikeSargableSargable谓关联子查量关联子查量化子查Longvarchar等数据类ResidualResidual谓 DB2设计与性能优 讲 ListPrefetch,IndexANDing和Index
(
隐含的IXOR
(
(|
TABLE:
(
TABLE:(|(
TABLE:
((
显式的
((|
((|(INDEX:
(|INDEX:UDBP
(|INDEX:UDBP
INDEX:UDBP
INDEX:UDBPDB2设计与性能优 讲
列表预取(ListPrefetch)是如何工作311423331221242211341332
WHERENAME<1214233133
12123456789
123 的挖掘 (nonclustered)索引的好避免对同一个数据页多次DB2设计与性能优 讲Explain详细信息中的顺序预IXSCAN:(IndexMAXPAGES: umpagesPREFETCH:(TypeofPrefetch)ROWLOCK:(RowLockSCANDIR:(ScanDirection)TABLOCK:(TableLockINTENT
TBSCAN:(TableMAXPAGES: umpagesPREFETCH:(TypeofPrefetch)ROWLOCK:(RowLockintent)NEXTKEYSHARESCANDIR:(ScanTABLOCK:(TableLockINTENTDB2设计与性能优 讲
索引或操作(Index* ==ABA'David'ABA'David'CBB C C ..DB2设计与性能优 讲..
B分专数 分专数 提 MDCDB2设计与性能优 讲师
完全索引扫描(IndexOnlyAccess)和包含列(INCLUDEColumns)CREATECREATEUNIQUEINDEXXACCTONACCT(ACCT_GRPASC,ACCT_IDDESC)INCLUDE(ACCT_NAME,ADDRESS)CREATEINDEX命令允许在唯一索引的键后面加上额外的数据这些列作为索引的一部分,但不是键的组一些查询只 这样的索引而避 基本表,从而获得更好的性比如:SELECTacct_name,addressFROMacctWHEREacct_grpANDacct_id=?注意:当需要更新这些包含列时,会给索引 带来额外的开DB2设计与性能优 讲
双向索CREATEINDEX...ALLOWREVERSEDB2设计与性能优 讲
索引的空闲空间(FreeCREATEINDEXL_PKONLINEITEM(L_PARTKEY)PCTFREE40Values->Values->RIDValues->RIDValues->RIDValues->Values->FreePCTFREE(4040%空闲
Index
这些空间 索引或者REORG时使默认设置为DB2设计与性能优 讲
索引 索CREATEINDEXIX1DB2设计与性能优 讲
CREATEINDEXIX2(product_id)索 DB2在输入新的记录时尽 这利用表的PCTFREE设置,可以为建 索引的表的数 预留空这可以在CREATETABLE指定或ALTERTABLECREATEINDEXCL_INXONLINEITEM(L_SHIPDATE)ALTERTABLELINEITEMPCTFREEDB2设计与性能优 讲
SELECTLASTNAME=SELECTLASTNAMEFIRSTNAME=SELECTLASTNAME='Free'FIRSTNAME>SELECTLASTNAME='Free'ANDAGE>38SELECTWHEREGROUPBY--
ORDERBY 索引的统计信索引的统计信息或db2RUNSTATSONTABLEUSERID.ACCTANDDETAILEDINDEXESALL或db2RUNSTATSONTABLEANDSAMPLEDDETAILEDINDEXESDB2设计与性能优 讲
索引的额外开对 OAD等操作增加了额外的CPU和IO开 选择,会增加查询的编译时DB2设计与性能优 讲
索引的最佳实对所有的主键PK和绝大多少外键FK建立索引。因为大部分JOIN操作都发生在主键和外键 的列建立索引,但是<>这种谓词除外。也就是说范围谓词和 DB2设计与性能优 讲
提MDCDB2设计与性能优 讲师
设计向
ControlCenterDesignControlCenterDesign
集群表DB2设计与性能优 讲使用Design db2advis–dsample–mMICP–i- M- I-IndexesC-MDCtablesP-Workloadtypekeyword:(choose
SingleSQLSQLfrominputSQLfromQueryPatrollerSQLfromADVISE_WORKLOADtablebyworkloadnameGetworkloadfromdynamicSQLsnapshot - numberofMBavailableforindexesandMQTs(-1for - specifies in DB2设计与性能优 讲利用db2advis推荐索db2advis-dtpcds-icost.sql-disklimit2-onewindex.ddl>executionstartedattimestamp2012-05-17-11.54.08.236000found[3]SQLstatementsfromtheinputfilemendingtotaldiskspaceneededforinitialset 0.817]totaldiskspaceconstrainedtoTryingvariationsofthesolutionset.Optimizationfinished.2indexesincurrent
2.000][1118.4197]timerons(without [362.6014]timerons(withcurrentsolution)[67.58%]improvement--LIST MENDEDCREATEINDEXON"TPCD ("L_RETURNFLAG"ASC,"L_DISCOUNT"ASC,"L_EXTENDEDPRICE"ASC,"L_ORDERKEY"ALLOWREVERSESCANSRUNSTATSONTABLE"TPCD FORINDEX"DB2ADMIN"."IDX509062043470000";CREATEUNIQUEINDEXON ("O_ORDERDATE"ASC,"O_ORDERKEY"ASC,"O_CUSTKEY"ASC)ALLOWREVERSESCANS;RUNSTATSONTABLE FORINDEX“DB2ADMIN”.“IDX509062044160000”DB2设计与性能优 讲设计向导的图形化界DB2设计与性能优 讲DB2设计与性能优 讲DB2设计与性能优 讲DB2设计与性能优 讲DB2设计与性能优 讲 提 MDCDB2设计与性能优 讲师
表每一个维度就是一个坐标轴,MDC示例:3维MDC–nation,colour和
DB2设计与性能优 讲
MDC与块索
CREATETABLEMDCTABLEYEARINT,STATECHAR(2),SALESINT,ORGANIZEBY(YEAR,onYEARDB2设计与性能优 讲
0-0-,4,8-12-,700-444-704-区
onRowIndexes-1indexentryperrowBlockIndexes1indexentryperbloc=Ro
=Extent(block)DB2设计与性能优 讲
索引的区
减少但不能消除reorg的需求(非强制的 数据在多个维度 数据在一个维块索引(每维度一个块索引 行索引(每个表只能有一 索引Re
Reorg基 索引来排序表中数据行的物为避免大量不必要的空间分配,维度的该适度粗(维度列的基数较低
列的粒度比MDC如果选择了不合适的维度,可能增加表在磁盘不影响表在磁盘上的大小,除非你为 上的占用空
增大DB2设计与性能优 讲维度选择的考在设计MDC表选择维度列,需要考虑以下几点那些查询能受益于块事实表(facttable)块单元格的密可能的单元格数据=维度列 乘 很少的几行数可以操作的三个方利用生成列将某个维度提升到更高的粒度,如DB2设计与性能优 讲
基于生成列的MDC维CREATETABLE(DateNationColorMonthgeneratedalwaysas...ORGANIZEBY(Month,ColorDB2设计与性能优 讲
MDC表的数据转MDCLoad 迅速找到空闲DB2设计与性能优 讲
MDC设计最佳实调整维度的数调整某维度的粒度(利用生成列调整块(区间extent)的大小以及页大利用设计向导来推荐可能的MDC设计向导的图形化界面(控制中心-db2advis-dmdb-iworkload.sql-mC–oDB2设计与性能优 讲
MDC设计向导(1ofexecutionstartedattimestamp2005-09-26-found[4]SQLstatementsfromtheinputmendingMulti-Dimensionaltotaldiskspaceneededforinitialsettotaldiskspaceconstrained
0.035]5.855]Note:MDCselectionintheDB2DesignAdvisorrequiresthe tobepopulatedwithadatasample.ThissampleisusedforestimatingthenumberanddensityofMDCcellsinanyMDCsolutionthattheDesignAdvisorwill mend.IfyourdatabaseisemptytheDesignAdvisorwill mendPrioritizingMulti-dimensionalClusteringcandidateMulti-dimensionalClusteringcandidatetables,inpriorityTable0:numberofpagesblocksizeThereare1candidatetablesconsideredforMulti-dimensionalClusteringconversionSearchingthemultidimensionalspaceforsolutionsforHIST1...Percentageofsearchpoints 2clusteringdimensionsincurrent[8665.0000]timerons(without DB2设计与性能优 讲MDC设计向导LISTOFMODIFIEDCREATE-TABLESTATEMENTS PARTITIONINGKEYSANDTABLESPACESAND/OR MULTI-DIMENSIONALCLUSTERINGS----CREATETABLE "."HI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- TY/T 2103-2024绿色体育场馆运营评价
- NB/T 11548-2024立井井筒钻注平行作业技术规范
- 乒乓球课题申报书
- 名师支部建设课题申报书
- 振兴乡村教育课题申报书
- 教学课题立项申报书模板
- 思政教研课题申报书模板
- 家庭研究专题课题申报书
- 课题项目申报书模版
- 个人购平房合同范本
- (2024年)健康评估教学教案心电图检查教案
- 政府机关保安服务项目整体服务方案
- 武汉中考理化生实验备考试题库(含答案)
- 村民委员会组织法解读(修改)课件
- 旅店会客登记制度
- 无人机校企合作方案
- 新教材 人教版高中物理选择性必修第一册 第三章 机械波 知识点考点重点难点提炼汇总
- 城市轨道交通员工职业素养(高职)全套教学课件
- 体系基础知识培训
- 工程力学期末考试试卷A及答案
- 气体充装安全操作规程
评论
0/150
提交评论