分享
分销 收藏 举报 申诉 / 6
播放页_导航下方通栏广告

类型分布式-DBA-创建及使用分区表.doc

  • 上传人:仙人****88
  • 文档编号:7848743
  • 上传时间:2025-01-21
  • 格式:DOC
  • 页数:6
  • 大小:38.26KB
  • 下载积分:10 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    分布式 DBA 创建 使用 分区表
    资源描述:
    分布式 DBA: 创建和使用分区表 表分区是一种数据组织方案,它根据一列或多列中的值把表数据划分为多个称为数据分区 的存储对象。分区的表能够包含的数据比普通的表多得多;另外,通过利用称为分区消除 的过程,针对分区表运行的查询通常比针对非分区表运行时执行速度更快,需要的磁盘 I/O 更少。(DB2 优化器能够感知分区,在执行查询时只扫描相关的数据分区。)   在这篇专栏文章中,我将讨论如何创建分区表,解释分区表的定义如何决定各个记录的存储位置。   范围分区表   数据分区也称为范围(当前 DB2 只支持范围分区方案),一个数据分区包含一个行子集,这些行存储在与表中其他行集不同的地方。不同的数据分区可以驻留在不同的表空间中,也可以驻留在相同的表空间中。CREATE TABLE 语句的 PARTITION BY 子句中提供的信息决定表数据的分区方式。这个可选子句的语法取决于是希望让 DB2 在指定的表数据范围内均匀地生成每个分区范围,还是要手工控制每个范围的边界。对于给定的表数据范围自动生成分区的语法是: PARTITION BY <RANGE>   ([ColumnName] <NULLS LAST | NULLS FIRST> ,...)   (   STARTING <FROM> [Start | MINVALUE | MAXVALUE] |    STARTING <FROM> ([Start | MINVALUE | MAXVALUE] ,...)   <INCLUSIVE | EXCLUSIVE>   ENDING <AT> [End | MINVALUE | MAXVALUE] |    ENDING <AT> ([End | MINVALUE | MAXVALUE] ,...)   <INCLUSIVE | EXCLUSIVE>   EVERY <(>[Constant] <DurationLabel> <)>   ,...)  手工指定分区的语法是: PARTITION BY <RANGE>     ([ColumnName] <NULLS LAST | NULLS FIRST> ,...)    (    <PARTITION [PartitionName]>   STARTING <FROM> [Start | MINVALUE | MAXVALUE] |    STARTING <FROM> ([Start | MINVALUE | MAXVALUE] ,...)   <INCLUSIVE | EXCLUSIVE>   ENDING <AT> [End | MINVALUE | MAXVALUE] |    ENDING <AT> ([End | MINVALUE | MAXVALUE] ,...)   <INCLUSIVE | EXCLUSIVE>    <IN [TSName]>    <INDEX IN [IndexTSName]>    <LONG IN [LongTSName]>    其中:   ColumnName:用名称指定一个或多个列(最多 16 列),这些列的值用来决定数据行应该存储在哪个数据分区中。(指定的列组成表的分区键 — 参见边栏 “选择表分区键”。)数据类型为 LONG VARCHAR、LONG VARGRAPHIC、BLOB、CLOB、DBCLOB、XML、基于这些数据类型的 distinct 类型和结构化数据类型的列都不能作为数据分区键的组成部分。   PartitionName:指定分配给要创建的数据分区的惟一名称。   Start:指定每个数据分区的范围下限。   End:指定每个数据分区的范围上限。   Constant:在使用语法的自动生成形式时,指定每个数据分区范围的宽度。从 STARTING FROM 值开始创建数据分区,数据分区的范围内包含指定数量的值。支持这种语法的条件是分区键由单一列组成,这一列的数据类型是数字、日期、时间或时间戳。 DurationLabel:如果分区键列的数据类型是日期、时间或时间戳,这个参数指定与 Constant 值相关的时间单位。这个参数的有效值是:YEAR、YEARS、MONTH、MONTHS、DAY、DAYS、HOUR、HOURS、MINUTE、MINUTES、SECOND、SECONDS、MICROSECOND 和 MICROSECONDS。   TSName:指定存储每个数据分区的表空间。   IndexTSName:指定存储每个数据分区的分区索引的表空间。   LongTSName:指定存储长列的值的表空间。   注意:尖括号 (< >) 中的参数是可选的;方括号 ([ ]) 中的参数或选项是必需的,必须提供它们;逗号后面跟着省略号 (...) 表示前面的参数可以重复出现多次。   因此,如果希望创建一个名为 SALES 的分区表,把每个季度的数据存储在单独的分区中,每个分区驻留在不同的表空间中,那么可以执行以下 CREATE TABLE 语句: CREATE TABLE sales   (sales_date  DATE,   sales_amt   NUMERIC(5,2))   IN tbsp0, tbsp1, tbsp2, tbsp3   PARTITION BY RANGE (sales_date)    (STARTING '1/1/2010' ENDING '12/31/2010'    EVERY 3 MONTHS)    图 1 说明生成的表是什么样的。 图 1. 一个简单分区表中存储的数据   另一方面,如果希望创建一个名为 INVENTORY 的分区表,把物品编号在 1 到 100 之间的行存储在一个表空间中的一个分区中,把编号在 101 到 200 之间的行存储在另一个表空间中的另一个分区中,以此类推,那么可以执行下面的 SQL 语句: CREATE TABLE inventory    (item_no INT,    desc VARCHAR(20))  PARTITION BY (item_no NULLS FIRST)  (PARTITION PRODUCE STARTING MINVALUE ENDING 100 IN tbsp0,  PARTITION DAIRY  STARTING    101 ENDING 200 IN tbsp1,  PARTITION BAKERY  STARTING    201 ENDING 300 IN tbsp2,  PARTITION MEAT   STARTING    301 ENDING 400 IN tbsp3)    选择表分区键   选择有效的表分区键列对于发挥表分区的优势非常重要。最有效的表分区键列是有利于分区消除的列。例如,如果通常按日期查询表中的记录,那么应该用日期或时间列进行表分区。   同样,如果希望随着时间的推移把表数据的一部分删除或存档,应该根据期望的记录存档方式进行表分区。例如,如果希望把三年前的所有数据都存档,应该按周、月或季度进行表分区,这样就可以分别在每周、每月或每季度末删除一个老分区。   对于这个示例,ITEM_NO 值在 1 到 100 之间的行将存储在名为 PRODUCE 的分区中(这个分区的数据写到表空间 TBSP0 中),ITEM_NO 值在 101 到 200 之间的行将存储在名为 DAIRY 的分区中(这个分区的数据写到表空间 TBSP1 中),依次类推;ITEM_NO 值为 NULL 的行将存储在 PRODUCE 分区中。   一定要注意,当指定 NULLS FIRST 选项时,第一个分区必须从 MINVALUE 开始。(同样,如果使用 NULLS LAST 选项,最后一个分区必须结束于 MAXVALUE。)否则,在插入分区键列为 NULL 值的记录时,会产生 “data out of bounds” 错误。另外,每个分区的数据、索引和长列数据可以放在不同的表空间中。如果不为索引或长列指定表空间,分区索引和长列数据会存储在与数据相同的表空间中。   在默认情况下,范围包含边界本身。要想防止在某一分区中存储特定的记录,可以用 EXCLUSIVE 选项创建范围。例如: CREATE TABLE sales   (sales_date DATE,   sales_amt NUMERIC(5,2))  IN tbsp0, tbsp1, tbsp2, tbsp3  PARTITION BY RANGE (sales_date)  (STARTING '1/1/2010' ENDING '3/31/2010' EXCLUSIVE,   STARTING '3/31/2010' ENDING '6/30/2010' EXCLUSIVE,   STARTING '6/30/2010' ENDING '9/30/2010' EXCLUSIVE,   STARTING '9/30/2010' ENDING '12/31/2010')    在这个示例中,销售日期为 3/31/2010 的记录不会存储在表空间 TBSP0 中,而是存储在表空间 TBSP1 中。   当在分区表中插入行时,会根据键值及其所处的范围自动地把它放到适当的数据分区中。如果键值不处于表的任何范围内,插入操作就会失败并产生一个错误。   轻松地移入和移出数据   使用分区表的另一个优点是,可以轻松地在表中添加新数据(作为新的数据分区),同时可以轻松地删除并存档老数据。在下一篇专栏文章中,我将讲解添加(移入)和删除(移出)数据分区的过程。还要讨论 DB2 9.7 中的改进如何大大加快移入和移出数据分区的速度,减少这些操作产生的干扰。
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:分布式-DBA-创建及使用分区表.doc
    链接地址:https://www.zixin.com.cn/doc/7848743.html
    页脚通栏广告

    Copyright ©2010-2026   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork