Microsoft Word - Oracle官方文档概念V2_第三章.docx

Size: px
Start display at page:

Download "Microsoft Word - Oracle官方文档概念V2_第三章.docx"

Transcription

1 3 索引和索引 - 组织表 本章讨论索引, 是一种能加速访问表中行的模式对象, 还有索引组织表, 是用索引结构存储的表 本章包含以下几个部分 : 索引概述 索引组织表概述 索引概述 索引 (index) 是一个可选结构, 与表或者表簇 (table cluster) 相关联, 可以在某些时候加快数据访问速度 通过创建索引 (index) 在表的一个或多个列上, 在某些情况下, 你能增强从表中获取一小部分随机分布行的检索能力 索引是一种更多意味着减少磁盘 I/O 的手段 如果堆组织表没有索引, 那么数据库必须执行全表扫描 (full table scan) 来查找一个值 例如, 不使用索引, 在 hrdepartments 表中定位 2700 的查询 (query) 需要数据库在每一个表块中查找这个值 这种方法不能随着数据量增长而扩展 打个比方, 假设一位人力资源经理有一架子纸箱 箱子中文件夹包含被随机插入的员工信息文件夹 员工 Whalen (ID 200) 的文件夹是从 1 号箱子底部向上的 10 个文件夹, 而 King (ID 100) 的文件夹在 3 号箱子的底部 要定位一个文件夹, 经理翻阅了 1 号箱子中的从底到上的每一个文件夹, 然后从箱子到另一箱子挨个走, 直到文件夹被找到 为了加快访问速度, 经理可以创建一个按顺序列出每一个员工的 ID 和文件夹的位置索引 : ID 100: 箱子 3, 位置 1 ( 底 ) ID 101: 箱子 7, 位置 8 ID 200: 箱子 1, 位置 10 同样地, 经理可以为员工的姓氏 部门 ID 等创建单独的索引 一般情况下, 在下列任一一种情况中可以考虑在列上创建索引 : 被索引的列是经常查询并且返回在表中总行数的一小部分 引用的完整性约束 (integrity constraint) 存在于索引的一列或多列

2 索引是一种用来避免全表锁 (lock) 的手段, 否则如果你更新父表的主键 (primary key), 合并到父表, 或者从父表中删除时将被请求全表锁 索引和索引 - 组织表 3-1 索引概述 唯一键约束被置于表中并且你想手动指定索引和所有索引选项 参见 : 第 5 章, 数据完整性 索引特性 索引是和其关联的对象数据在逻辑上及物理上都相互独立的模式对象, 所以, 索引 的删除和创建不会对其关联的表产生物理上的影响 注意 : 如果你删除索引, 而后应用仍然能工作 然而, 访问先前索引的数据 可能要慢一些 索引存在或不存在都无需改变任何 SQL 语句的写法 索引是到单行数据的快速访问路径 (access path) 它只影响执行的速度 给定一个已被索引的数据值, 索引直接指向包含那个值的行的位置 数据库自动地维护并使用索引在创建它们之后 数据库也自动的反映数据的变化, 如增加 更新和删除行, 不带有用户需要的额外动作在所有相关的索引中 被索引数据的检索性能几乎保持不变, 即使有插入行 然而, 有众多索引存在的表上会降低 DML 的性能, 因为数据库必须同时更新索引 索引有以下属性 : 可用性索引有可用的 ( 默认 ) 或不可用的 不可用索引 (unusable index) 不被 DML 操作并且被优化器 (optimizer) 忽略 不可用索引可以提高批量加载的性能 代替删除索引并重新创建 (re- creating) 它, 你可以让索引不可用, 然后重建 (rebuild) 它 不可用索引和索引分区都不消耗空间 当你让一个可用索引变为不可用时, 数据库删除它的索引段 (segment) 可见性索引有可见的 ( 默认 ) 或不可见的 不可见索引 (invisible index) 被 DML 操作并且默认不被优化器使用 使索引不可见是一种替代使它不可用或者删除它的方法 不可见索引对于测试在删除索引前移除它或者临时使用索引而不影响整个应用程序是特别有用的 参见 : " 优化器概述 " 在 7-10 页 Oracle 数据库 2 天 DBA 和 Oracle 数据库管理员指南来了解如何管理索引 Oracle 数据库性能调优指南来了解如何调整索引

3 3-2 Oracle 数据库概念 索引概述键和列键 (key) 是你可以建立索引的一组列或者表达式 (expressions) 虽然这些术语经常互换使用, 但是索引和键是不同的 索引 (Indexes) 是在数据库中用户使用 SQL 语句管理的存储结构 键在严格意义上是一个逻辑概念 下面的语句在样表 oeorders 的 customer_id 列上创建了一个索引 : CREATE INDEX ord_customer_ix ON orders (customer_id); 在前面的语句中,customer_id 列是索引键 索引自身被命名为 ord_customer_ix 注意 : 主键和唯一键自动带有索引, 但你可能需要在外键 (foreign key) 上创建一个索引 参见 :Oracle 数据库 SQL 语言参考手册 CREATE INDEX 语法和语义复合索引复合索引 (composite index), 也称为级联索引 (concatenated index), 是在表中多列上的一种索引 在复合索引中列需要按顺序出现, 使查询在表中检索到最有意义的数据时, 并不需要相邻的数据 复合索引可以加速对 SELECT 语句中 WHERE 子句引用的复合索引里所有的数据或者列开头部分数据的检索速度 因此, 在定义时使用的列的顺序是非常关键的 通常, 最常访问的列要放在第一个位置 例如, 假设一个应用频繁在 employees 表中查询 last_name job_id 和 salary 列 再假设 last_name 具有高基数 (cardinality), 这表示不同值的数量相对于表中行的数量很大 你可以创建带有下列顺序的索引 : CREATE INDEX employees_ix ON employees (last_name, job_id, salary); 访问所有三个列 只有 last_name 列或者只有 last_ name 和 job_id 列的查询使用这个索引 在这个例子中, 查询不访问 last_name 列也就不使用索引 注意 : 在某些情况下, 例如当起始列的基数非常低的时候, 数据库可能会使用跳跃式扫描该索引 ( 见 索引跳跃扫描 在 3-8 页 ) 如果每个索引的列排列不同, 则多个索引可以存在于同一个表中 如果你指定明显不同排列的列, 那么你可以使用相同的列创建多个索引 例如, 下面的 SQL 语句指定有效的排列 : CREATE INDEX employee_idx1 ON employees (last_name, job_id); CREATE INDEX employee_idx2 ON employees (job_id, last_name);

4 索引和索引 - 组织表 3-3 索引概述 参见 :Oracle 数据库性能调优指南来了解关于使用压缩索引的更多信息唯一与非唯一索引索引可以是唯一 (unique) 或者非唯一的 唯一索引保证在键列或列中, 一张表没有两行重复值 例如, 没有两个员工可以有相同的员工 ID 因此, 在一个唯一索引中,rowid( 行的唯一标识 ) 存在于每一个数据值中 在叶子块中的数据仅按键的顺序排列 在索引列中, 非唯一索引允许重复值 例如,employees 表的 first_name 列可能包含多个 Mike 值 对于非唯一索引,rowid 按排序顺序被包含在键中, 所以非唯一索引是按照索引键和 rowid( 升序 ) 排序的 Oracle 数据库没有所有键列是空 (null) 的索引表行, 除位图索引或者当簇键列值为空以外 索引类型 Oracle 数据库提供了多种索引方案, 它提供了功能上互补的性能方案 索引可以被分为以下几类 : B- 树索引这些索引是标准索引类型 它们对于主键和高选择性索引是非常有效的 作为级联索引,B- 树能按照索引列的排序顺序检索数据 B- 树索引有以下的子类型 : 索引 - 组织表索引 - 组织表不同于堆 - 组织表, 因为数据本身就是索引 见 索引 - 组织表概述 在 3-20 页 反向键索引在这种索引类型中, 索引键的字节是反向的, 例如,103 被存储为 301 反转字节插入到索引中伸展到许多块上 见 反向键索引 在 3-11 页 降序索引这种类型的索引用降序顺寻在特定列上存储数据 见 升序和降序索引 在 3-11 页 B- 树簇索引这种类型的索引用于索引表的簇键 键指向与包含簇键相关行的块, 而不是指向单行 见 索引簇概述 在 2-23 页 位图和位图连接索引在位图索引中, 索引条目使用位图指向多行 与此相反,B- 树索引条目指向单行 位图连接索引是用来连接两个或多个表的索引 见 位图索引 在 3-13 页 基于函数索引这种类型的索引包含由函数转化的列, 如 UPPER 函数, 或者包含在表达式中 B- 树或位图索引可以是基于函数的 见 基于函数索引 在 3-17 页 应用程序域索引

5 3-4 Oracle 数据库概念 索引概述这种类型的索引由在特定应用程序域中的用户为数据创建 物理索引不必使用传统的索引结构并且可以被存储在 Oracle 数据库的表或外部文件 见 应用程序域索引 在 3-19 页 参见 :Oracle 数据库性能调优指南来了解关于不同索引类型 B- 树索引 B- 树, 短于平衡树 (balanced trees), 是数据库索引的最常见类型 B- 树索引是划分值域的有序列表 通过关联带有一行或行范围中的键,B- 树索引为大范围查询, 包括精确匹配和范围搜索提供优良的检索性能 图 3 1 示出 B- 树索引的结构 这个例子显示了在 department_id 列的索引, 是在 employees 表中的外键列 图 3 1B- 树索引内部结构 分支块与叶块 B- 树索引有两种类型的块 : 分支快 (branch blocks) 用于搜索和叶块 (leaf blocks) 用于存储值 B- 树索引的上级分支块包含的索引数据指向下级索引块 在图 3 1 中, 根分支块有一个条目 0-40, 指向在下面分支级别中最左边的块 这个分支块包含条目如 0-10 和 这些条目的每一个都指向包含落在范围中键值的叶块

6 索引和索引 - 组织表 3-5 索引概述 B- 树索引是平衡的, 因为所有的叶块自动的被放置在相同的深度 因此, 从任意位置检索任何记录需要花费大约相同的时间 索引的高度 (height) 是需要从根块走到叶块的块数量 分支级别 (branch level) 是高度减 1 在图 3 1 中, 索引有 3 的高度和 2 的分支级别 分支块存储需要的最小键前缀使分支决策在两键之间 这种技术使得数据库适应尽可能多的数据在每一个分支块上 分支块包含的指针指向包含键的子块 键的数量和指针通过块大小限制 叶块包含每一个索引的数据值和用于定位实际行对应的 rowid 每个条目按照( 键 rowid) 进行分类 叶块内, 键和 rowid 链接到它左边和右边的兄弟条目上 叶块本身也是双向链接的 在图 3 1 中最左边的叶块 (0-10) 是链接到第二个叶块 ( 11-19) 注意 : 在列中带有字符数据的索引是基于在数据库字符集中字符 的二进制值 索引扫描在索引扫描 (index scan) 中, 数据库通过遍历索引来检索一行, 使用语句中指定的索引列的值 如果数据库为一个值扫描索引, 那么它将在 n 次 I/O 中找到这个值, 其中 n 是 B- 树索引的高度 这是 Oracle 数据库索引背后的基本原理 如果一个 SQL 语句仅访问索引列, 那么数据库直接从索引而不是表中读取值 如果语句访问除索引列外的列, 那么数据库使用 rowid 来查找表中的行 通常情况下, 数据库通过交替的读索引块和表块来检索表中数据 参见 :Oracle 数据库性能调优指南来了解关于索引扫描的详细信息完全索引扫描在完全索引扫描 (full index scan) 中, 数据库按顺序读取整个索引 如果谓词 (predicate)(where 子句 ) 在 SQL 语句中引用了索引中的列, 并在某些情况下当没有指定谓词时, 完全索引扫描是可用的 完全扫描可以消除排序因为数据是按照索引键的顺序 假设一个应用程序运行下面的查询 : SELECT department_id, last_name, salary FROM employees WHERE salary > 5000 ORDER BY department_id, last_name; 再假定 department_id,last_name 和 salary 是索引中的组合键 Oracle 数据库进行索引的完全扫描, 按照排序顺序读取 ( 通过部门 ID 和姓氏顺序 ) 并在工资属性上过滤 在这种方式中, 数据库将扫描比雇员表更小的数据集, 表中包含列要比查询中包含的列多, 并且避免了对数据进行排序 例如, 完全扫描可以读取索引条目如下 : 50,Atkinson,2800,rowid 60,Austin,4800,rowid 70,Baer,10000,rowed

7 3-6 Oracle 数据库概念 索引概述 80,Abel,11000,rowid 80,Ande,6400,rowid 110,Austin,7200,rowid 快速完全索引扫描快速完全索引扫描 (fast full index scan) 是一种完全索引扫描, 其中数据库在索引本身中访问数据, 而不用访问表, 并且数据库读取索引块没有固定的顺序 当以下两个条件都满足的情况下, 快速完全索引扫描是全表扫描 (full table scan) 的一种替代 : 该索引必须包含查询所需的所有列 A 包含所有空值的行不能出现在查询结果集中 为了确保这一结果, 索引中的至少一列必须具有下列条件之一 : NOT NULL 约束 A predicate applied to it that prevents nulls from being considered in the query result set 例如, 一个应用程序发出下面的查询, 其中不包括 ORDER BY 子句 : SELECT last_name, salary FROM employees; last_name 列有一个非空约束 如果姓氏和工资都是索引中的复合键, 那么快速索引扫描可以读取索引中的条目来获取所需的信息 : Baida,2900,rowid Zlotkey,10500,rowid Austin,7200,rowid Baer,10000,rowid Atkinson,2800,rowid Austin,4800,rowid 索引范围扫描索引范围扫描 (index range scan) 是具有以下特征的索引有序扫描 : 在条件中指定索引中的一个或多个导列 条件 (condition) 指定一个或多个表达式及逻辑 ( 布尔 ) 运算符 (operators) 的组合并返回一个 TRUE FALSE 或 UNKNOWN 值 对于索引键 0 1 或更多值是可能的 数据库通常使用索引范围扫描来访问选择的数据 选择性 (selectivity) 是在表中查询选择行的百分比, 并且 0 表示没有行而 1 表示所有行 选择性是绑定一个查询的谓词 (predicate), 像 WHERE last_name LIKE 'A%' 或者谓词的组合 谓词变的更有选择性如值接近 0, 较少的选择性 ( 或更多非选择性 ) 作为值接近 1 例如, 一个用户查询哪位员工的姓氏起始是 A 假设 last_name 列被索引, 具有以下条目 : 索引和索引 - 组织表 3-7

8 索引概述 Abel,rowid Ande,rowid Atkinson,rowid Austin,rowid Austin,rowid Baer,rowid 数据库可以使用范围扫描, 因为 last_name 列在谓词中是指定的并且对每个索引键可能是成倍的 rowid 例如, 两个员工的名字叫 Austin, 所以两个 rowid 是用 Austin 键关联的 索引范围扫描可以被划定两侧的界限, 如在一个带有部门 ID 在 10 和 40 之间的查询, 或者只在一边有界限, 如在查询 ID 超过 40 为了扫描索引, 数据库向前或者向后移动来穿过叶块 例如, 一个对 ID 在 10 和 40 之间的扫描定位到包含最小键值是 10 或更大的第一个索引的叶块 扫描然后水平地前进通过叶子节点的链表直到定位到一个大于 40 的值 索引唯一扫描相比于索引范围扫描, 索引唯一扫描 (index unique scan) 必须具有 0 或 1 的 rowid 与索引键关联 当谓词参考所有列在索引 UNIQUE 键中使用相等运算符时数据库执行唯一扫描 索引唯一扫描在它找到第一条记录时会迅速停止, 因为没有第二条可能的记录 作为一个例子, 假设一个用户运行下面的查询 : SELECT * FROM employees WHERE employee_id = 5; 假设 employee_id 列是主键, 并用下列条目作为索引 : 1,rowid 2,rowid 4,rowid 5,rowid 6,rowid 在这种情况下, 该数据库可以使用索引唯一扫描来定位员工 ID 为 5 的 rowid 索引跳跃扫描索引跳跃扫描 (index skip scan) 使用复合索引的逻辑子索引 如果数据库正在查找分开的索引, 那么它会 跳跃 通过单一索引 跳跃扫描是有好处的, 如果有几个不同值在复合索引的前列并且许多的不同值在非前列键的索引中 数据库可能选择索引跳跃扫描, 当复合索引的前列在查询谓词中不是指定的 例如, 假设你对客户在 shcustomers 表中运行下列查询 : SELECT * FROM shcustomers WHERE cust_ = 'Abbey@companycom'; 3-8 Oracle 数据库概念

9 索引概述 customers 表中有一 cust_gender 列, 其中值是 M 或 F 假设复合索引存在于 (cust_gender,cust_ ) 列 例 3 1 显示了索引条目的一部分 例 3 1 复合索引条目 F,Wolf@companycom,rowid F,Wolsey@companycom,rowid F,Wood@companycom,rowid F,Woodman@companycom,rowid F,Yang@companycom,rowid F,Zimmerman@companycom,rowid M,Abbassi@companycom,rowid M,Abbey@companycom,rowid 数据库可以使用这个索引的跳跃扫描, 即使在 WHERE 子句中不指定 cust_gender 在跳跃扫描中, 逻辑子索引的数量由在首列中不同值的数量决定 在例 3 1 中, 首列有两种可能值 数据库逻辑的分割索引到带有键 F 的一个子索引和带有键 M 的第二个子索引 当为客户的电子邮件是 Abbey@companycom 的记录查找时, 数据库先查找带有值 F 的子索引, 然后查找带有值 M 的子索引 从概念上讲, 数据库处理该查询如下 : SELECT * FROM shcustomers WHERE cust_gender = 'F' AND cust_ = 'Abbey@companycom' UNION ALL SELECT * FROM shcustomers WHERE cust_gender = 'M' AND cust_ = 'Abbey@companycom'; See Also: Oracle Database Performance Tuning Guide to learn more about skip scans 索引簇因子索引簇因子 (index clustering factor) 衡量行相对于索引值的顺序如员工的姓氏 这个值越按照顺序存在在行存储中, 则它的簇因子越低 簇因子作为通过索引读取整个表来粗略估算 I/O 需求数量是非常有用的 : 如果簇因子高, 那么 Oracle 数据库在一个大索引范围扫描期间执行一个比较高数量的 I/O 索引条目指向随机表块, 所以数据库可能需要读并重读相同的数据块, 一遍又一遍的检索由索引指向的数据 如果簇因子低, 那么 Oracle 数据库在一个大索引范围扫描期间执行一个相对低数量的 I/O 在一个范围中的索引键趋向于指向相同的数据块, 所以数据库不需要一遍又一遍的读并重读相同的数据块 簇因子是和索引扫描有关的, 因为它能表明 : 该数据库是否将会为大范围扫描使用索引 表组织级别相对于索引键 如果行必须按照索引键排序, 你是否应该考虑使用索引组织表 分区表或表簇 索引和索引 - 组织表 3-9

10 索引概述 例如, 假设 employees 表装载到两个数据块中 表 3 1 描绘出在两个数据块中的行 ( 用省略号表示未示出的数据 ) 表 3 1 在 Employees 表中的连个数据块的内容 Data Block 1 Data Block Steven King SKING 156 Janette King JKING 115 Alexander Khoo AKHOO 149 Eleni Zlotkey EZLOTKEY 200 Jennifer Whalen JWHALEN 116 Shelli Baida SBAIDA 204 Hermann Baer HBAER 105 David Austin DAUSTIN 130 Mozhe Atkinson MATKINSO 137 Renske Ladwig RLADWIG 166 Sundar Ande SANDE 173 Sundita Kumar SKUMAR 174 Ellen Abel EABEL 101 Neena Kochar NKOCHHAR 按照姓氏顺序存储在块中的行 ( 以粗体显示 ) 例如, 在数据块 1 中底部的行描述了 Abel, 向上的下一行描述了 Ande, 按字母顺序以此类推, 直到在块 1 中顶端的行 Steven King 在块 2 中底部的行描述了 Kochar, 向上的下一行描述了 Kumar, 按字母顺序以此类推, 直到在块中的最后一行 Zlotkey 假设一个索引存在于姓氏列 每个名字条目对应于一个 rowid 从概念上讲, 索引条目将如下所示 : Abel,block1row1 Ande,block1row2 Atkinson,block1row3 Austin,block1row4 Baer,block1row5 假设一个单独的索引存在于员工的 ID 列 从概念上讲, 带有员工 ID 分布的几乎随机的位置贯穿这两个块, 索引条目可能如下所示 : 100,block1row50 101,block2row1 102,block1row9 103,block2row19 104,block2row39 105,block1row4 例 3 2 查询 ALL_INDEXES 视图来查找这两个索引的簇因子 EMP_NAME_IX 的簇因子低, 这意味着在单一叶块中的相邻索引条目倾向于指向在相同块中的行 EMP_EMP_ID_PK 的簇因子高, 这意味着在相同叶块中的相邻索引条目不太可能指向在相同数据块中的行 例 3 2 簇因子 SQL> SELECT INDEX_NAME, CLUSTERING_FACTOR 2 FROM ALL_INDEXES 3-10 Oracle 数据库概念

11 索引概述 3 WHERE INDEX_NAME IN ('EMP_NAME_IX','EMP_EMP_ID_PK'); INDEX_NAME CLUSTERING_FACTOR EMP_EMP_ID_PK 19 EMP_NAME_IX 2 参见 :Oracle 数据库参考手册来了解关于 ALL_INDEXES 反向键索引反向键索引 (reverse key index) 是 B- 树的一种, 在保持列顺序时, 它物理地反转每一个索引键的字节 例如, 如果索引键是 20, 并且如果在一个标准 B- 树索引中, 这个键的两个字节按照十六进制存储是 C1,15, 那么反向键索引存储的字节就是 15,C1 反向键解决在 B- 树索引右侧叶块的争议问题 这个问题尤其在 Oracle 真实应用集群 (Oracle RAC) 数据库中多个实例同时修改同一块时是很严重的 例如, 在 orders 表中订单的主键是连续的 在集群中的一个实例增加顺序 20, 这时另一个增加 21, 每个实例都将它的键写入到索引右侧的相同叶块 在反向键索引中, 反向字节交叉有序的分散插入到索引中的所有叶块中 例如, 像键 20 和 21 在标准索引中必然是相邻的, 而现在存储到相距很远的单独块中 因此,I/O 对连续键的插入会分布的比较均匀 因为在索引中的数据在它存储时是不按照列键排序的, 反向键的部署消除了在一些情况下运行索引范围扫描查询的能力 例如, 如果用户发出一个订单 ID 大于 20 的查询, 那么数据库不能开始于包含这个 ID 的块并且不能通过叶块水平地处理 参见 :Oracle 数据库性能调优指南来了解关于设计考虑反向键索引升序和降序索引在升序索引 (ascending index) 中,Oracle 数据库用升序方式存储数据 默认情况下, 字符数据是由包含在每个字节的二进制值来排序, 数字数据是从小到大的数值, 而日期是从最早到最新的值 举一个升序索引的例子, 考虑下面的 SQL 语句 : CREATE INDEX emp_deptid_ix ON hremployees(department_id); Oracle 数据库在 hremployees 表的 department_id 列上排序 它加载 department_id 的升序索引和按升序排列相对应的 rowid 值, 起始为 0 当它使用索引时,Oracle 数据库查找排序的 department_id 值并使用关联的 rowid 定位需要 department_id 值的行 通过在 CREATE INDEX 语句中指定 DESC 关键字, 你可以创建降序索引 (descending index) 在这种情况下, 索引按照降序储存数据在指定的一列或多列 如果图 3 1 中在 employeesdepartment_id 列上的索引是降序, 那么包含 250 的叶块将在树的左侧并且带有 0 的块在右侧 默认通过降序索引查询是从最高到最低值 索引和索引 - 组织表 3-11

12 索引概述 当一个查询用升序和其他降序排序一些列时, 降序索引是有用的 举个例子, 假设你创建一个复合索引在 last_ name 列和 department_id 列如下 : CREATE INDEX emp_name_dpt_ix ON hremployees(last_name ASC, department_id DESC); 如果用户用升序 (A 到 Z) 查询 hremployees 的姓氏并且部门 ID 按照降序顺序 ( 高到低 ), 那么数据库能使用这个索引检索数据并且避免多于的排序步骤 参见 : Oracle 数据库性能调优指南来了解更多关于升序和降序索引查找 Oracle 数据库 SQL 语言参考手册来查询 CREATE INDEX 的 ASC 和 DESC 选项的描述键压缩 Oracle 数据库能使用键压缩 (key compression) 来压缩在 B- 树索引或者索引 - 组织表中主键列值的一部分 在一般情况下, 索引键有两个片, 一是分组片 (grouping piece) 另一是唯一片 (unique piece) 键压缩拆分索引键到前缀条目(prefix entry), 这是分组片, 和后缀条目 (suffix entry), 这是唯一或者几乎唯一片 数据库通过共享后在索引块的缀条目中的前缀条目实现压缩 注意 : 如果键不定义唯一片, 那么数据库提供一个附加的 rowid 到分组片 默认情况下, 唯一索引前缀包含所有键列而不包括最后一个, 而非唯一索引前缀包含所有键列 例如, 假设你在 oeorders 表上创建一个复合索引如下 : CREATE INDEX orders_mod_stat_ix ON orders ( order_mode, order_status ); 许多重复值出现在 order_mode 和 order_status 列中 一个索引块可以包含在例 3 3 中所示的条目 例 3 3 在 Orders 表中的索引条目 online,0,aaapvcaafaaaafaaaa online,0,aaapvcaafaaaafaaag online,0,aaapvcaafaaaafaaal online,2,aaapvcaafaaaafaaam online,3,aaapvcaafaaaafaaaq online,3,aaapvcaafaaaafaaat 在例 3 3 中, 键前缀将包含 order_mode 和 order_status 的串联值 如果创建这个索引并带有默认键压缩, 那么重复键前缀如 online,0 和 online,2 将被压缩 从概念上讲, 数据库如下面的例子所示来实现压缩 : online,0 AAAPvCAAFAAAAFaAAa AAAPvCAAFAAAAFaAAg AAAPvCAAFAAAAFaAAl 3-12 Oracle 数据库概念

13 索引概述 online,2 AAAPvCAAFAAAAFaAAm online,3 AAAPvCAAFAAAAFaAAq AAAPvCAAFAAAAFaAAt 后缀条目构成索引行的压缩版本 每一个后缀条目都参考前缀条目, 这是存储在和后缀条目相同的索引块中 另外, 当创建压缩索引时, 你可以指定前缀长度 例如, 如果你指定前缀长度为 1, 那么前缀将是 order_mode 而后缀将是 order_status,rowid 对于在例 3 3 中的值, 索引将分离出重复出现的 online 如下 : online 0,AAAPvCAAFAAAAFaAAa 0,AAAPvCAAFAAAAFaAAg 0,AAAPvCAAFAAAAFaAAl 2,AAAPvCAAFAAAAFaAAm 3,AAAPvCAAFAAAAFaAAq 3,AAAPvCAAFAAAAFaAAt 索引每次存储一个指定的前缀在最多一个叶块中 只有在 B- 树索引的叶块中的键是压缩的 在分支块中的键后缀可以被截断, 但键不是压缩的 参见 : Oracle 数据库管理员指南来了解如何使用压缩索引 Oracle 数据库 VLDB 和分区指南来了解分区索引如何使用键压缩 Oracle 数据库 SQL 语言参考手册来查看 CREATE INDEX 的 key_ compression 子句描述 位图索引 在位图索引 (bitmap index) 中, 数据库将每个索引键存储在一个位图中 在常规的 B- 树索引中, 一个索引条目指向单一行 在一个位图索引中, 每个索引键存储指向多个行 位图索引主要为了数据仓库或者在一个特设方式中查询参考许多列的情况下设计的 可能需要位图索引的情况包括 : 索引列含有低基数 (cardinality), 也就是说, 不同数量的值和表中行数相比是很小的 T 被索引表可以是只读的或者没有受到 DML 语句明显的修改 举一个数据仓库的例子,shcustomer 表有一个 cust_gender 列仅有两种可能的值 :M 和 F 假设查询特定性别顾客的数量是常见的 在这种情况下, customercust_gender 列将是位图索引的一个候选 在位图中的每一个位都对应着一个可能的 rowid 如果位被设置, 那么带有对应 rowid 的行包含这个键值 映射函数转换这个位的位置成为一个实际的 rowid, 所以位图索引提供与 B- 树索引相同的功能, 尽管它使用了不同的内部表示 索引和索引 - 组织表 3-13

14 索引概述 如果在单行中的索引列被更新, 那么数据库锁定 (locks) 索引键条目 ( 例如,M 或 F) 并且不止是映射到更新行的个别位 因为一个键指向许多行, 在索引数据上 DML 通常要锁定所有行 因此, 位图索引是不适用于大多数 OLTP 的应用 参见 : Oracle 数据库性能调优指南来了解对性能如何使用位图索引 Oracle 数据库数据仓库指南来了解在数据仓库中如何使用位图索引在单表上的位图索引例 3 4 显示了 shcustomers 表的一个查询 在这张表中的一些列是位图索引的候选 例 3 4 customers 表的查询 SQL> SELECT cust_id, cust_last_name, cust_marital_status, cust_gender 2 FROM shcustomers 3 WHERE ROWNUM < 8 ORDER BY cust_id; CUST_ID CUST_LAST_ CUST_MAR C Kessel M 2 Koch F 3 Emmerson M 4 Hardy M 5 Gowen M 6 Charles single F 7 Ingram single F 7 rows selected cust_marital_status 和 cust_gender 列具有低基数, 而 cust_id 和 cust_last_name 没有 因此, 位图索引可能适合于 cust_marital_status 和 cust_gender 位图索引或许对其他列没有作用 相反, 在这些列上的唯一 B- 树索引有可能提供最高效的表达和检索 表 3 2 展示了位图索引在例 3 4 中对 cust_gender 列输出显示 它由两个单独的位图组成, 一个对应一个性别 Table 3 2 Sample Bitmap Value Row 1 Row 2 Row 3 Row 4 Row 5 Row 6 Row 7 M F 映射函数转换在位图索引中的每一个位成为 customers 表的 rowid 每个位值都依赖于在表中关联行的值 例如, 对于 M 值的位图包含一个 1 作为它的第一个位, 因为在 customers 表的第一行性别是 M 位图 cust_gender='m' 有一个 0 在行 的位, 因为这些行它们的值不包含 M 3-14 Oracle 数据库概念

15 索引概述 注意 : 位图索引能包含完全由空值组成的键, 不像 B- 树索引 索引了空值可以对一些 SQL 语句非常有用, 如带有聚合函数 COUNT 的查询 分析师调查客户的人口发展趋势可能问, 我们的女顾客中有多少是单身或者离 异的? 这个问题相当于以下 SQL 查询 : SELECT COUNT(*) FROM customers WHERE cust_gender = 'F' AND cust_marital_status IN ('single', 'divorced'); 位图索引可以有效地通过计算 1 的数量在生成的位图中处理这个查询, 如在表 3 3 中展示的 为了确定哪位顾客符合标准,Oracle 数据库可以使用生成的位 图来访问表 表 3 3 示例位图 Value Row 1 Row 2 Row 3 Row 4 Row 5 Row 6 Row 7 M F single divorced single or divorced, and F 位图索引有效的合并对应的几个条件在 WHERE 子句中的索引 在表本身被访问 之前, 条件将过滤掉一些, 而不是所有的行 这种技术提高了响应时间, 通常 会很显著 位图连接索引 A 位图连接索引 (bitmap join index) 是对连接 (join) 两个或多个表 的位图索引 在表列中的每个值, 索引存储在被索引表中对应行的 rowid 相 比之下, 一个标准的位图索引是被创建在单表上的 位图连接索引是减少数据量的有效途径, 在性能限制的前提下数据必须被连接 例如当使用位图连接索引, 假设用户经常查询特定作业类型的员工数量 一个 典型的查询可能看起来如下 : SELECT COUNT(*) FROM employees, jobs WHERE employeesjob_id = jobsjob_id AND jobsjob_title = 'Accountant'; 上面的查询通常在 jobsjob_title 上使用索引来检索 Accountant 的行然后作 业 ID 和在 employeesjob_id 上的索引来查找匹配的行 为了从索引自身而不 是从表的扫描中检索数据, 你可以创建位图连接索引如下 : CREATE BITMAP INDEX employees_bm_idx ON employees (jobsjob_title) FROM employees, jobs WHERE employeesjob_id = jobsjob_id; 索引和索引 - 组织表 3-15 索引概述

16 图 3 2 位图连接索引 如图所示在图 3 2 中, 索引键是 jobsjob_title 而索引表是 employees 从概念上讲, 在例 3 5 中 ( 包括示例输出 ) 如 SQL 查询所示 employees_bm_idx 是 jobstitle 列的索引 在索引中的 job_title 键指向在 employees 表中的行 会计数量的查询可以使用索引来避免访问 employees 表和 jobs 表, 因为索引本身包含所需的信息 例 3 5 employees 表和 jobs 表的连接 SELECT jobsjob_title AS "jobsjob_title", employeesrowid AS "employeesrowid" FROM employees, jobs WHERE employeesjob_id = jobsjob_id ORDER BY job_title; jobsjob_title employeesrowid Accountant AAAQNKAAFAAAABSAAL Accountant AAAQNKAAFAAAABSAAN Accountant AAAQNKAAFAAAABSAAM Accountant AAAQNKAAFAAAABSAAJ Accountant AAAQNKAAFAAAABSAAK Accounting Manager AAAQNKAAFAAAABTAAH Administration Assistant AAAQNKAAFAAAABTAAC Administration Vice President AAAQNKAAFAAAABSAAC Administration Vice President AAAQNKAAFAAAABSAAB 3-16 Oracle 数据库概念 索引概述

17 在数据仓库中, 连接条件 (join condition) 是在维度表的主键列和事实表中的外键列之间的等值连接 (equijoin)( 它使用相等运算符 ) 位图连接索引有时比物化连接视图在存储方面更有效, 前提是替代物化视图连接 位图存储结构 Oracle 数据库使用 B- 树索引结构来为每个索引键存储位图 例如, 如果 jobsjob_title 是位图索引的键列, 那么索引数据被存储在一个 B- 树中 各个位图被存储在叶块中 假设 jobsjob_title 列具有唯一值 Shipping Clerk 和 Stock Clerk 其他几个 对于这个索引的位图索引条目包含以下组件 : 职位标题作为索引键 一个低 rowid 和一个高 rowid 作为 rowid 的范围 位图给在范围内制定的 rowid 从概念上讲, 在这个索引中的索引叶块可以包含条目如下 : Shipping Clerk,AAAPzRAAFAAAABSABQ,AAAPzRAAFAAAABSABZ, Shipping Clerk,AAAPzRAAFAAAABSABa,AAAPzRAAFAAAABSABh, Stock Clerk,AAAPzRAAFAAAABSAAa,AAAPzRAAFAAAABSAAc, Stock Clerk,AAAPzRAAFAAAABSAAd,AAAPzRAAFAAAABSAAt, Stock Clerk,AAAPzRAAFAAAABSAAu,AAAPzRAAFAAAABSABz, 相同的工作标题出现在多个条目中, 因为 rowid 的范围不同 假设一个会话更新员工的作业 ID 从 Shipping Clerk 到 Stock Clerk 在这种情况下, 会话需要独占访问索引键条目对旧值 (Shipping Clerk) 和新值 ( Stock Clerk) Oracle 数据库通过这两个条目锁定行指向 而非由 Accountant 或其他任意键的行指向 直到 UPDATE 提交 位图索引的数据在一个段 (segment) 中存储 Oracle 数据库在一个或多个片中存储每个位图 每一片都占用单个数据块 (data block) 的一部分 参见 : 用户段 在 页 基于函数索引 你可以在函数和表达式上创建索引, 包括一个或多个列在被索引的表中 基于函数索引 (function-based index) 计算一个包括一个或多个列的函数或表达式的值并在索引中存储它 基于函数索引可以是一个 B- 树或者位图索引 用于建立索引的函数可以是一个算术表达式或者一个包含 SQL 函数 用户定义的 PL/SQL 函数, 包函数或者 C 调用的表达式 例如, 一个函数可以在两列中增加值 索引和索引 - 组织表 3-17 索引概述 参见 :

18 Oracle 数据库管理员指南来了解如何创建基于函数索引 Oracle 数据库性能调优指南来了解更多关于使用基于函数索引 Oracle 数据库 SQL 语言参考手册来了解对基于函数索引的限制和使用说明基于函数索引的使用基于函数索引对评估在 WHERE 子句中包含函数的语句是有效的 当在一个查询中包含这个函数时, 数据库仅使用基于函数索引 当数据库处理 INSERT 和 UPDATE 语句时, 然而, 它仍然必须评估函数来处理该语句 例如, 假设你创建以下基于函数索引 : CREATE INDEX emp_total_sal_idx ON employees (12 * salary * commission_pct, salary, commission_pct); 在处理查询时, 数据库可以使用前面的索引, 如例 3 6( 包含部分示例输出 ) 例 3 6 查询包含一个算术表达式 SELECT employee_id, last_name, first_name, 12*salary*commission_pct AS "ANNUAL SAL" FROM employees WHERE (12 * salary * commission_pct) < ORDER BY "ANNUAL SAL" DESC; EMPLOYEE_ID LAST_NAME FIRST_NAME ANNUAL SAL Smith Lindsey Bernstein David Hall Peter Doran Louise Hutton Alyssa Zlotkey Eleni Bloom Harrison 基于函数索引定义于 SQL 函数 UPPER(column_name) 或 LOWER(column_name) 上以便于区分大小写的搜索 例如, 假设在 employees 中的 first_name 列包含混合大小写字母 你在 hremployees 表上创建下面的基于函数索引 : CREATE INDEX emp_fname_uppercase_idx ON employees ( UPPER(first_name) ); emp_fname_uppercase_idx 索引可以加速如下查询 : SELECT * FROM employees WHERE UPPER(first_name) = 'AUDREY'; 基于函数索引对于在表中仅索引特定行也是非常有用的 例如, 在 shcustomers 表中的 cust_valid 列有任意 I 或 A 作为值 为了仅索引 A 的行, 你可以写一个对除 A 行以外任意行来返回一个空值的函数 你可以创建如下索引 : 3-18 Oracle 数据库概念 索引 - 组织表概述

19 CREATE INDEX cust_valid_idx ON customers ( CASE cust_valid WHEN 'A' THEN 'A' END ); 参见 : Oracle 数据库全球化支持指南来了解关于语言索引的信息 Oracle 数据库 SQL 语言参考手册来了解更多关于 SQL 函数 使用基于函数索引优化优化器 (optimizer) 可以在基于函数索引上使用索引范围扫描对在 WHERE 子句中带有表达式的查询 当谓词 (WHERE 子句 ) 有低选择性 (selectivity) 时, 范围扫描访问路径 (access path) 是非常有帮助的 在例 3 6 中的优化器可以使用索引范围扫描, 如果索引建立在表达式 12*salary*commission_pct 上 虚拟列 (virtual column) 对于加速访问从表达式的数据导出是非常有用的 例如, 你可以定义虚拟列 annual_sal 作为 12*salary*commission_pct 并创建基于函数索引在 annual_sal 上 优化器通过解析在 SQL 语句中的表达式执行表达式匹配, 然后比较语句的表达式树和基于函数索引 这种比较是不区分大小写的并且忽略空格 参见 : 优化器概述 在 7-10 页 Oracle 数据库性能调优指南来了解更多信息关于收集统计信息 Oracle 数据库管理员指南来了解如何添加虚拟列到表中 应用程序域索引 应用程序域索引 (application domain index) 特定于应用程序的自定义索引 Oracle 数据库提供可扩展索引 (extensible indexing) 来执行以下操作 : 容纳在定制 复杂的数据类型上的索引, 如文档 空间数据 图像和视频剪辑 ( 见 非结构数据 在 页 ) 确保特定索引技术的使用你可以封装应用程序特定的索引管理常规作为一个索引类型 (indextype) 模式对象并且定义一个与索引在表列上或者对象类型的属性上 可扩展的索引可以有效地处理应用程序特定的操作符 (operators) 一个应用程序软件, 叫做盒式磁带 (cartridge), 控制结构和域索引的内容 数据库和应用程序交互来构建 维护和搜索域索引 索引结构本身可以被存储在数据库中作为一个索引 - 组织表或者外部的一个文件 参见 :Oracle 数据库数据磁带开发者指南来了解关于 Oracle 数据库可扩展体系结构中使用数据磁带的信息 索引和索引 - 组织表 3-19 索引 - 组织表概述 索引存储

20 Oracle 数据库在索引段 (index segment) 中存储索引数据 在数据块 (data block) 中可用于索引数据的空间是数据块大小减块的开销 条目开销 rowid 和每个被索引值的一字节长度 索引段的表空间 (tablespace) 是所有者的默认表空间或者在 CREATE INDEX 语句中指定的名称的表空间 为了便于管理, 你可以在单独的表空间中存储来自它表的索引 例如, 你可能选择不备份只包含索引的表空间, 它可以重建, 因此减少了备份需要的时间和存储 参见 : 第 12 章, 逻辑存储结构 索引 - 组织表概述 索引 - 组织表 (index-organized table) 是存储在一个异构 B- 树索引结构中的表 在堆 - 组织表 (heap-organized table) 中, 行被插入到适合它们的地方 在索引 - 组织表中, 表的行被存储在一个由主键定义的索引中 在 B- 树中的每个索引条目也存储非 - 键列值 因此, 索引是数据, 并且数据也是索引 应用程序操纵索引 - 组织表就像堆 - 组织表一样, 使用 SQL 语句 举个对索引 - 组织表的比喻, 假设一个人力资源经理有一书柜纸箱 每一个箱子都用数字 等标注 但是箱子不是按照序列顺序放在架子上的 相反, 每个箱子包含指向到下一个箱子在序列中的架子位置 包含员工记录的文件夹存储在每个盒子中 文件夹按照员工 ID 存储 员工 King 有 ID 号 100, 这是最小的 ID, 因此他的文件夹在箱子 1 的底部 员工 101 的文件夹在 100 的上面,102 是在 101 的上面, 以此类推直到箱子 1 已满 序列中的下一个文件夹是在箱子 2 的底部 在这个比喻中, 按照员工 ID 排序的文件夹使得它可以有效的搜索文件夹而不需要维护一个单独的索引 假设用户需要员工 和 122 的记录 而不是在一个步骤中搜索索引并在一个单独步骤中检索文件夹, 经理可以按顺序搜索文件夹并检索每个被找到的文件夹 索引 - 组织表按照主键或者键的有效前缀提供表行的快速访问 在叶块中行的非键列的存在避免了额外的数据块 (data block)i/o 例如, 员工 100 的薪水被存储在它自身的索引行中 同时, 由于行按照主键顺序存储, 通过主键或前缀访问范围涉及最小块的 I/O 另一个好处是避免单独主键索引的空间开销 当相关的数据必须存储在一起或者数据必须按照指定顺序物理的存储在一起时, 索引 - 组织表是有用的 这种类型的表通常使用于信息检索 空间 ( 参见 Oracle 空间概述 在 页 ) 和 OLAP 应用 ( 参见 OLAP 在 页 ) 3-20 Oracle 数据库概念 参见 : 索引 - 组织表概述

21 Oracle 数据库管理员指南来了解如何管理索引 - 组织表 Oracle 数据库性能调优指南来了解如何使用索引 - 组织表来提升性能 Oracle 数据库 SQL 语言参考手册关于 CREATE TABLE ORGANIZATION INDEX 的语法和语义 索引 - 组织表的特征 数据库系统通过操纵 B- 树索引结构来在索引 - 组织表上执行全部操作 表 3 4 总结了索引 - 组织表和堆 - 组织表之间的差异 表 3 4 堆 - 组织表和索引 - 组织表的比较 堆 - 组织表 rowid 唯一标识一行 主键约束可以有选择的定义 ROWID 伪列 (pseudocolumn) 中的物理 rowid 指向建立的二级索引 索引 - 组织表主键唯一标识一行 主键约束必须定义 在 ROWID 伪列中的逻辑 rowid 指向建立的二级索引 各行可以直接通过 rowid 访问 顺序全表扫描 (full table scan) 按照某些顺序返回所有行 可以与其他表存储在表簇 (table cluster) 中 可以包含一列 LONG 数据类型和多列 LOB 数据类型 可以包含虚拟列 (virtual columns)( 仅支持关系型堆表 ) 访问各行可根据主键间接实现 完全索引扫描 (full index scan) 或者快速完全索引扫描按照某些顺序返回所有行 不能被存储在一个表簇中 可以包含 LOB 列, 但不能包含 LONG 列 不能包含虚拟列 图 3 3 显示了一个索引 - 组织表 departments 的结构 叶块包含表中的行, 按主 键顺序排列 例如, 在第一个叶块中的第一个值显示了一个部门 ID20, 部门名 称是 Marketing, 经理 ID 是 201, 并且位置 ID 是 1800 索引和索引 - 组织表 3-21 索引 - 组织表概述 图 3 3 索引 - 组织表

22 索引 - 组织表在相同的结构中存储所有数据并且不需要存储 rowid 如图 3 3 中所示, 在索引 - 组织表中的叶块 1 可能包含如下条目, 按照主键顺序 : 20,Marketing,201, ,Purchasing,114,1700 在索引 - 组织表中的叶块 2 可能包含如下条目 : 50,Shipping,121, ,IT,103,1400 按主键顺序的索引 - 组织表的扫描读取块按照以下顺序 : 1 Block 1 2 Block 2 对比堆 - 组织表和索引 - 组织表的数据访问, 假设堆 - 组织 departments 表段块 1 包含如下行 : 50,Shipping,121, ,Marketing,201,1800 相同表中块 2 包含行如下 : 30,Purchasing,114, ,IT,103, Oracle 数据库概念 索引 - 组织表概述

23 对于这个堆 - 组织表的 B- 树索引叶块包含如下条目, 第一个值是主键而第二个值是 rowid: 20,AAAPeXAAFAAAAAyAAD 30,AAAPeXAAFAAAAAyAAA 50,AAAPeXAAFAAAAAyAAC 60,AAAPeXAAFAAAAAyAAB 表行的扫描按照主键顺序读取表段块在如下顺序中 : 1 Block 1 2 Block 2 3 Block 1 4 Block 2 因此, 在这个例子中的块 I/O 的数量是在索引 - 组织表例子中的双倍 参见 : 表组织 在 2-18 页 逻辑存储结构导论 在 12-1 页 带有行溢出区的索引 - 组织表 当创建一张索引 - 组织表时, 你可以指定独立段作为行溢出区 (row overflow area) 在索引 - 组织表中,B- 树索引条目可以很大, 因为它们包含一行条目, 因此独立段来包含该条目是非常有用的 相比之下,B- 树条目通常很小, 因为它们包含键和 rowid 如果一个行溢出区是指定的, 那么数据库可以在索引 - 组织表中分割一行到如下的部分中 : 索引条目这部分包含所有主键的列值 一个指向溢出区行的物理 rowid 和一些可选的非键列 这个部分被存储在索引段中 溢出部分这部分包含剩余的非键列的列值 这部分被存储在溢出存储区域段中 参见 : Oracle 数据库管理员指南来了解如何使用 CREATE TABLE 的 OVERFLOW 子句来设置一个行溢出区 Oracle 数据库 SQL 语言参考手册关于 CREATE TABLE OVERFLOW 语法和语义 在索引 - 组织表上的二级索引 二级索引 (secondary index) 是一个在索引 - 组织表中的索引 在某种意义上说, 它是在索引上的索引 二级索引是一个独立模式对象并且在索引 - 组织表外单独存储 索引和索引 - 组织表 3-23 索引 - 组织表概述 如在 2-13 页 rowid 数据类型 的解释,Oracle 数据库在索引 - 组织表中使用称为逻

24 辑 rowid(logical rowids) 的行标识符 逻辑 rowid 是一个 base64 编码表示的表主键 逻辑 rowid 长度依赖于主键长度 由于插入, 在索引叶块中的行可以在内部或者块之间移动 在索引 - 组织表中的行不像堆 - 组织表的行那样迁移 ( 参见 行链接和迁移 在 页 ) 因为在索引 - 组织表中的行没有永久物理地址, 数据库使用基于主键的逻辑 rowid 例如, 假设 departments 表是索引 - 组织的 location_id 列存储每个部门的 ID 表存储如下的末值为位置 ID 的行 : 10,Administration,200, ,Marketing,201, ,Purchasing,114, ,Human Resources,203,2400 在 location_id 列上的二级索引可能有如下索引条目, 其中逗号后面的值是逻辑 rowid: 1700,*BAFAJqoCwR/+ 1700,*BAFAJqoCwQv+ 1800,*BAFAJqoCwRX+ 2400,*BAFAJqoCwSn+ 二级索引提供快速且有效的访问使用既不是主键也不是主键前缀的索引 - 组织表 例如, 一个部门 ID 大于 1700 的名称查询可以使用二级索引来加速数据访问 参见 : Oracle 数据库管理员指南来了解如何在索引 - 组织表上创建二级索引 Oracle 数据库 VLDB 和分区指南来了解关于在索引 - 组织表分区上创建二级索引逻辑 rowid 和物理预测二级索引使用逻辑 rowid 定位表行 逻辑 rowid 包含物理预测 (physical guess), 这是当它第一次生成时索引条目的物理 rowid Oracle 数据库可以使用物理预测来直接探测到索引 - 组织表的叶块中, 绕过主键搜索 当一行的物理位置改变, 逻辑 rowid 仍然有效, 及时它包含一个陈旧的物理预测 对于堆 - 组织表, 通过二级索引访问包括二级索引扫描和一个额外的 I/O 来获得包含该行的数据块 (data block) 对于索引 - 组织表, 通过二级索引访问有所不同, 取决于使用和物理预测的准确度 : 没有物理预测, 访问包括两个索引扫描 : 二级索引扫描, 其次是主键索引扫描 带有物理预测, 访问取决于它们的精确度 : 带有准确的物理预测, 访问包括二级索引扫描和额外的 I/O 来获得包含行的数据块 3-24 Oracle 数据库概念 索引 - 组织表概述 带有不准确的物理预测, 访问包含二级索引扫描和一个 I/O 来获取错误的数

25 据块 ( 由预测所示 ), 其次是索引组织表按照主键值的索引唯一扫描 在索引 - 组织表上的位图索引在索引 - 组织表上的二级索引可以是一个位图索引 (bitmap index) 如在 3-13 页的 位图索引 中解释的, 一个位图索引为每个索引键存储一个位图 当位图索引存在于索引 - 组织表时, 所有位图索引使用一个堆 - 组织的映射表 (mapping table) 映射表存储索引- 组织表的逻辑 rowid 每个映射表行为对应的索引 - 组织表行存储一个逻辑 rowid 数据库使用搜索键访问位图索引 如果数据库查找这个键, 那么位图条目被转换为物理 rowid 对于堆- 组织表, 数据库使用物理 rowid 来访问基表 对于索引 - 组织表, 数据库使用物理 rowid 来访问映射表, 从而得出数据库用来访问索引 - 组织表的逻辑 rowid 图 3 4 展示了对 departments_iot 表查询的索引访问 图 3 4 在索引 - 组织表上的位图索引注解 : 注意 : 在索引 - 组织表中的行迁移不会留下建立在索 引 - 组织表上不能使用的位图索引 参见 : 行片的 rowid 在 2-19 页 索引和索引 - 组织表 3-25 索引 - 组织表概述

26 3-26 Oracle 数据库概念

DB2 (join) SQL DB2 11 SQL DB2 SQL 9.1 DB2 DB2 ( ) SQL ( ) DB2 SQL DB2 DB2 SQL DB2 DB2 SQL DB2 ( DB2 ) DB2 DB2 DB2 SQL DB2 (1) SQL (2) S

DB2 (join) SQL DB2 11 SQL DB2 SQL 9.1 DB2 DB2 ( ) SQL ( ) DB2 SQL DB2 DB2 SQL DB2 DB2 SQL DB2 ( DB2 ) DB2 DB2 DB2 SQL DB2 (1) SQL (2) S 9 DB2 优化器 DB2 SQL select c1 c2 from ( DB2 )??? DB2?!?, no no DB2 I/O ( transrate overhead ) SQL DML (INSERT UPDATE DELETE) DB2 (access plan) DB2 (join) SQL DB2 11 SQL DB2 SQL 9.1 DB2 DB2 ( 728 747 ) SQL

More information

98_364_Test Bank_Lesson04

98_364_Test Bank_Lesson04 第 4 课 : 了解数据存储 选择题 1. 清除冗余数据称为什么? a) 规范化 b) 重复数据消除 c) 环回 d) 返回 难度 : 中等章节参考 : 规范化数据库解释 : 在过去数据存储成本 比当前 高很多的时候, 利 用有关数据存储的规范化技术发挥着更 大作 用 简单地说, 规范化即消除冗余数据以节省空间 2. 以下哪项表 示消除重复的组? 难度 : 困难章节参考 : 什么是规范化? 解释 :

More information

目錄

目錄 資 訊 素 養 線 上 教 材 單 元 五 資 料 庫 概 論 及 Access 5.1 資 料 庫 概 論 5.1.1 為 什 麼 需 要 資 料 庫? 日 常 生 活 裡 我 們 常 常 需 要 記 錄 一 些 事 物, 以 便 有 朝 一 日 所 記 錄 的 事 物 能 夠 派 得 上 用 場 我 們 能 藉 由 記 錄 每 天 的 生 活 開 銷, 就 可 以 在 每 個 月 的 月 底 知

More information

11.2 overview

11.2 overview 1 < 在 此 处 插 入 图 片 > Explain Plan 命 令 说 明 Maria Colgan 免 责 声 明 本 讲 座 旨 在 为 您 提 供 有 关 如 何 阅 读 SQL 执 行 计 划 的 说 明, 并 帮 助 您 确 定 该 计 划 是 否 满 足 您 的 要 求 本 讲 座 并 不 能 使 您 一 举 成 为 优 化 器 专 家, 也 无 法 使 您 具 备 轻 松 调 整

More information

长 安 大 学 硕 士 学 位 论 文 基 于 数 据 仓 库 和 数 据 挖 掘 的 行 为 分 析 研 究 姓 名 : 杨 雅 薇 申 请 学 位 级 别 : 硕 士 专 业 : 计 算 机 软 件 与 理 论 指 导 教 师 : 张 卫 钢 20100530 长安大学硕士学位论文 3 1 3系统架构设计 行为分析数据仓库的应用模型由四部分组成 如图3 3所示

More information

季刊9web.indd

季刊9web.indd 在 全 国 现 场 会 上 成 功 展 示 全 国 烟 叶 收 购 暨 现 代 烟 草 农 业 建 设 现 场 会 7 月 6 日 至 8 日 在 昆 明 召 开 在 国 家 局 的 领 导 下, 由 我 司 技 术 开 发 的 烟 站 ( 单 元 ) 烟 叶 管 理 信 息 系 统 在 现 场 会 上 成 功 展 示, 并 得 到 参 会 领 导 及 代 表 们 的 关 注 与 认 可 该 系 统

More information

學 科 100% ( 為 單 複 選 題, 每 題 2.5 分, 共 100 分 ) 1. 請 參 閱 附 圖 作 答 : (A) 選 項 A (B) 選 項 B (C) 選 項 C (D) 選 項 D Ans:D 2. 下 列 對 於 資 料 庫 正 規 化 (Normalization) 的 敘

學 科 100% ( 為 單 複 選 題, 每 題 2.5 分, 共 100 分 ) 1. 請 參 閱 附 圖 作 答 : (A) 選 項 A (B) 選 項 B (C) 選 項 C (D) 選 項 D Ans:D 2. 下 列 對 於 資 料 庫 正 規 化 (Normalization) 的 敘 ITE 資 訊 專 業 人 員 鑑 定 資 料 庫 系 統 開 發 與 設 計 實 務 試 卷 編 號 :IDS101 注 意 事 項 一 本 測 驗 為 單 面 印 刷 試 題, 共 計 十 三 頁 第 二 至 十 三 頁 為 四 十 道 學 科 試 題, 測 驗 時 間 90 分 鐘 : 每 題 2.5 分, 總 測 驗 時 間 為 90 分 鐘 二 執 行 CSF 測 驗 系 統 -Client

More information

教 学 目 标 描 述 主 要 数 据 库 对 象 创 建 表 描 述 列 定 义 时 可 用 的 数 据 类 型 改 变 表 的 定 义 删 除 改 名 和 截 断 表 描 述 每 个 DML 语 句 插 入 行 到 表 中 更 新 表 中 的 行 从 表 中 删 除 行 描 述 约 束 创 建

教 学 目 标 描 述 主 要 数 据 库 对 象 创 建 表 描 述 列 定 义 时 可 用 的 数 据 类 型 改 变 表 的 定 义 删 除 改 名 和 截 断 表 描 述 每 个 DML 语 句 插 入 行 到 表 中 更 新 表 中 的 行 从 表 中 删 除 行 描 述 约 束 创 建 2 第 二 讲 创 建 和 管 理 表 与 简 单 记 录 操 作 Copyright SWFC-CISC, 2013. All rights reserved. 教 学 目 标 描 述 主 要 数 据 库 对 象 创 建 表 描 述 列 定 义 时 可 用 的 数 据 类 型 改 变 表 的 定 义 删 除 改 名 和 截 断 表 描 述 每 个 DML 语 句 插 入 行 到 表 中 更 新 表

More information

PowerPoint Presentation

PowerPoint Presentation 数 据 库 培 训 项 目 研 究 Oracle 索 引 探 究 B*tree 索 引 与 位 图 索 引 的 特 点 作 者 : 赵 超 2008 年 12 月 18 日 实 验 环 境 Windows-server2003 内 存 :2G Oracle 10.2.0 ORACLE_SID=orcl 索 引 类 型 B*tree 索 引 ( 默 认 方 式 ) 位 图 索 引 (bitmap) 反

More information

Oracle数据库应用技术13 [兼容模式]

Oracle数据库应用技术13 [兼容模式] 第十三章 SQL 语句优化 主讲内容 :SELECT 子句 WHERE 子句的优化等 ; 复习上节课内容 1. 用户帐号管理 ( 创建 编辑 删除 ) 2. 权限管理 ( 授予及回收系统权限 对象权限 ) 3. 角色管理 ( 创建 编辑 删除 ) 4. 角色权限管理 ( 授予 回收 ) 5. 授权角色给用户 第 2 页 本节课内容 一.SQL 语句优化概述二.SQL 语句优化技巧三. 其他优化方法

More information

How to Find SHOUG?

How to Find SHOUG? 介绍 ORACLE SQL 语句执 行计划的访问路径 by SHOUG. 王朝阳 How to Find SHOUG? Optimizer operators 1. 行源操作 1. Unary Operations: 一元运算, 即单表的查询 ; 2. Binary Operations: 二元运算, 两表的连接 ; 3. N-ary Operations: 多元运算 ; 2. 主要的结构和访问路径

More information

Microsoft Word - 序+目錄.doc

Microsoft Word - 序+目錄.doc ORACLE 公 司 的 專 業 認 證 是 當 今 市 場 上 公 認 價 值 最 高, 最 具 鑑 別 力 的 認 證 目 前 全 球 有 超 過 50 萬 以 上 人 已 透 過 Oracle Certification Program 取 得 專 業 認 證, 成 為 職 場 新 鮮 人 的 首 選 認 證, 它 具 有 以 下 三 大 優 勢 : 一 更 多 的 工 作 機 會, 二 更

More information

PowerPoint Presentation

PowerPoint Presentation Skill-building Courses Intro to SQL Lesson 2 More Functions in SQL 通配符 :LIKE SELECT * FROM Products WHERE PName LIKE %gizmo% PName Price Category Manufacturer Gizmo $19.99 Gadgets GizmoWorks Powergizmo

More information

水晶分析师

水晶分析师 大数据时代的挑战 产品定位 体系架构 功能特点 大数据处理平台 行业大数据应用 IT 基础设施 数据源 Hadoop Yarn 终端 统一管理和监控中心(Deploy,Configure,monitor,Manage) Master Servers TRS CRYSTAL MPP Flat Files Applications&DBs ETL&DI Products 技术指标 1 TRS

More information

目錄 C ontents Chapter MTA Chapter Chapter

目錄 C ontents Chapter MTA Chapter Chapter 目錄 C ontents Chapter 01 1-1 MTA...1-2 1-2...1-3 1-3...1-5 1-4...1-10 Chapter 02 2-1...2-2 2-2...2-3 2-3...2-7 2-4...2-11...2-16 Chapter 03 3-1...3-2 3-2...3-8 3-3 views...3-16 3-4...3-24...3-33 Chapter

More information

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例 帝国 CMS 下在 PHP 文件中调用数据库类执行 SQL 语句实例 这篇文章主要介绍了帝国 CMS 下在 PHP 文件中调用数据库类执行 SQL 语句实例, 本文还详细介绍了帝国 CMS 数据库类中的一些常用方法, 需要的朋友可以参考下 例 1: 连接 MYSQL 数据库例子 (a.php)

More information

untitled

untitled Database System Principle Database System Principle 1 SQL 3.1 SQL 3.2-3.3 3.4 3.5 3.6 Database System Principle 2 3.1 SQL SQL Structured Query Language SQL Database System Principle 3 SQL 3.1.1 SQL 3.1.2

More information

Microsoft Word - 07.doc

Microsoft Word - 07.doc 目的 Oracle DBA 两日速成课程 Http://www.yangwenjun.com 制作人 : 杨文军摘自 Oracle 网站 第 7 章 : 管理模式对象 模式是一个数据库对象的集合 模式为一个数据库用户所有, 并具有与该用户相同的名称 模式对象是由用 户创建的逻辑结构, 用以包含或引用他们的数据 模式对象包含诸如表 视图和索引之类的结构 您可以使用 Oracle Enterprise

More information

ebook46-23

ebook46-23 23 Access 2000 S Q L A c c e s s S Q L S Q L S Q L S E L E C T S Q L S Q L A c c e s s S Q L S Q L I N A N S I Jet SQL S Q L S Q L 23.1 Access 2000 SQL S Q L A c c e s s Jet SQL S Q L U N I O N V B A S

More information

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM CHAPTER 6 SQL SQL SQL 6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM 3. 1986 10 ANSI SQL ANSI X3. 135-1986

More information

untitled

untitled OO 1 SQL Server 2000 2 SQL Server 2000 3 SQL Server 2000 DDL 1 2 3 DML 1 INSERT 2 DELETE 3 UPDATE SELECT DCL 1 SQL Server 2 3 GRANT REVOKE 1 2 1 2 3 4 5 6 1 SQL Server 2000 SQL Server SQL / Microsoft SQL

More information

回滚段探究

回滚段探究 oracle oracle internal DBA oracle document oracle concepts oracle document oracle DBWR update t set object_id = '0' where object_id = '12344'; 1 row updated. commit; Commit complete. 0 12344 12344 0 10%

More information

MySQL执行计划选择--成本模型v1.0

MySQL执行计划选择--成本模型v1.0 MySQL 优化器的成本模型 周振兴 @2016 年 7 月 目录 成本模型与关系型数据库简单 JOIN 的执行成本计算 MySQL 常见 access method 的成本计算 MySQL 成本计算中的统计信息成本与执行计划选择其他的细节 成本模型与关系型数据库 图片来源 : Query Optimization Yannis E. Ioannidis 1996 示例 SELECT * FROM

More information

1-1 database columnrow record field 不 DBMS Access Paradox SQL Server Linux MySQL Oracle IBM Informix IBM DB2 Sybase 1-2

1-1 database columnrow record field 不 DBMS Access Paradox SQL Server Linux MySQL Oracle IBM Informix IBM DB2 Sybase 1-2 CHAPTER 1 Understanding Core Database Concepts 1-1 database columnrow record field 不 DBMS Access Paradox SQL Server Linux MySQL Oracle IBM Informix IBM DB2 Sybase 1-2 1 Understanding Core Database Concepts

More information

幻灯片 1

幻灯片 1 其它数据库对象 Copyright Oracle Corporation, 2001. All rights reserved. 进度表 : 时间 主题 20 分钟 讲演 20 分钟 练习 40 分钟 总共 中国科学院西安网络中心 2005 Oracle SQL 入门 12-1 幻灯片 2 目标 完成本课后, 您应当能够执行下列操作 : 创建 维护和使用序列 创建和维护索引 创建私有和公有同义词 12-2

More information

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 310-814 Title : Sun Certified MySQL Associate Version : Demo 1 / 12 1.Adam works as a Database Administrator for a company. He creates a table

More information

Oracle Database 10g: SQL (OCE) 的第一堂課

Oracle Database 10g: SQL (OCE) 的第一堂課 商 用 資 料 庫 的 第 一 堂 課 中 華 大 學 資 訊 管 理 系 助 理 教 授 李 之 中 http://www.chu.edu.tw/~leecc 甲 骨 文 俱 樂 部 @Taiwan Facebook 社 團 https://www.facebook.com/groups/365923576787041/ 2014/09/15 問 題 一 大 三 了, 你 為 什 麼 還 在 這

More information

单元四数据的查询 数据库原理与应用 课内例题 任务 5 多表查询 课内例题 例创建数据表 orders, 并向表中添加记录 首先创建表 orders,sql 语句如下 : CREATE TABLE orders( o_num int NOT NULL AUTO_INCREMENT, o_date d

单元四数据的查询 数据库原理与应用 课内例题 任务 5 多表查询 课内例题 例创建数据表 orders, 并向表中添加记录 首先创建表 orders,sql 语句如下 : CREATE TABLE orders( o_num int NOT NULL AUTO_INCREMENT, o_date d 任务 5 多表查询 课内例题 例创建数据表 orders, 并向表中添加记录 首先创建表 orders,sql 语句如下 : CREATE TABLE orders( o_num int NOT NULL AUTO_INCREMENT, o_date datetime NOT NULL, c_id int NOT NULL, PRIMARY KEY (o_num) ) ; 插入需要演示的数据,SQL

More information

Microsoft Word - Oracle官方文档概念V2_第一章_第二章.docx

Microsoft Word - Oracle官方文档概念V2_第一章_第二章.docx Oracle 数据库概念 11g 版本 2 (11.2) E25789-01 庞浩然译 2012 年 1 月 1 Oracle 数据库导论 关于关系型数据库 数据库管理系统 (DBMS) 本章为 Oracle 数据库概述并包含以下部分 : 关于关系型数据库 模式对象 数据访问 事物管理 Oracle 数据库架构 Oracle 数据库文档路线图 每个组织都有他们需要存储和管理的信息 例如, 一个企业必须收集并维护其员工的人力资源记录

More information

器之 间 向一致时为正 相反时则为负 ③大量电荷的定向移动形成电 流 单个电荷的定向移动同样形成电流 3 电势与电势差 1 陈述概念 电场中某点处 电荷的电势能 E p 与电荷量 q Ep 的比值叫做该点处的电势 表达式为 V 电场中两点之间的 q 电势之差叫做电势差 表达式为 UAB V A VB 2 理解概念 电势差是电场中任意两点之间的电势之差 与参考点的选择无关 电势是反映电场能的性质的物理量

More information

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 odps-sdk 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基 开放数据处理服务 ODPS SDK SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基础功能的主体接口, 搜索关键词 "odpssdk-core" 一些

More information

ebook 96-16

ebook 96-16 16 13 / ( ) 16-1 SQL*Net/Net8 SQL*Net/Net8 SQL*Net/Net8 16-1 / S Q L SQL*Net V2 N e t 8 S Q L * N e t N e t ( ) 16.1 S Q L O r a c l e S Q L 16 401 ) ( H R _ L I N K create database link p u b l i c (

More information

Microsoft Word - Oracle官方文档概念V2_第四章.docx

Microsoft Word - Oracle官方文档概念V2_第四章.docx 4 分区 视图和其它模式对象 虽然表和索引是最重要和经常使用的模式对象, 但数据库还支持许多其它类型的模式对象, 其中最常见会在本章中讨论 本章包含以下部分 : 分区概述 视图概述 物化视图概述 序列概述 维度概述 同义词概述 分区概述 分区 (Partitioning) 使你能够将非常大的表和索引分解成为更小且更易于管理被称为分区 (partitions) 的片中 每个分区都是拥有自己的名称和自身可选的存储特性的独立对象

More information

幻灯片 1

幻灯片 1 子查询 Copyright Oracle Corporation, 2001. All rights reserved. 进度表 : 时间 主题 25 分钟 讲演 30 分钟 练习 55 分钟 总共 中国科学院西安网络中心 2005 Oracle SQL 入门 6-1 目标 完成本课后, 您应当能够执行下列操作 : 描述字查询能够解决的问题类型 定义子查询 列出子查询的类型 写单行和多行子查询 6-2

More information

Oracle9i 的查询优化

Oracle9i 的查询优化 Oracle9i Oracle 2002 2 Oracle9i...4...4...4 Oracle?...4 SQL...5...6...6...6...7...8...9...9 CUBE...10...11...11...11 OR...12...12...14...14...15...15...16...16...18...18...18...19...19...19...20...20 OLAP...20...21...21

More information

通过Hive将数据写入到ElasticSearch

通过Hive将数据写入到ElasticSearch 我在 使用 Hive 读取 ElasticSearch 中的数据 文章中介绍了如何使用 Hive 读取 ElasticSearch 中的数据, 本文将接着上文继续介绍如何使用 Hive 将数据写入到 ElasticSearch 中 在使用前同样需要加入 elasticsearch-hadoop-2.3.4.jar 依赖, 具体请参见前文介绍 我们先在 Hive 里面建个名为 iteblog 的表,

More information

R D B M S O R D B M S R D B M S / O R D B M S R D B M S O R D B M S 4 O R D B M S R D B M 3. ORACLE Server O R A C L E U N I X Windows NT w w

R D B M S O R D B M S R D B M S / O R D B M S R D B M S O R D B M S 4 O R D B M S R D B M 3. ORACLE Server O R A C L E U N I X Windows NT w w 1 1.1 D B M S To w e r C D 1. 1 968 I B M I M S 2 0 70 Cullinet Software I D M S I M S C O D A S Y L 1971 I D M S containing hierarchy I M S I D M S I M S I B M I M S I D M S 2 2. 18 R D B M S O R D B

More information

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 月 3 日 1 1 INPUTOUTPUT 1 InputOutput 题目描述 用 cin 输入你的姓名 ( 没有空格 ) 和年龄 ( 整数 ), 并用 cout 输出 输入输出符合以下范例 输入 master 999 输出 I am master, 999 years old. 注意 "," 后面有一个空格,"." 结束,

More information

Presentation title goes here

Presentation title goes here DBI-B303 SQL Server 升级的价值与技术展望 何雷微软全球商业服务部 SQL Server 版本 发布时间 发布时间间隔 SQL Server 2016 2016 年 约 24 个月 SQL Server 2014 2014 年 4 月 25 个月 SQL Server 2012 2012 年 3 月 23 个月 SQL Server 2008 R2 2010 年 4 月 20 个月

More information

Oracle高级复制冲突解决机制的研究

Oracle高级复制冲突解决机制的研究 Oracle dbms_rectifier_diff Oracle : eygle (eygle.com@gmail.com dbms_rectifier_diff Oracle dbms_rectifier_diff : http://www.eygle.com/archives/2005/01/eoadbms_rectifi.html DIFFERENCES Oracle dbms_rectifier_diff.differences

More information

本章学习目标 小风 Java 实战系列教程 SpringMVC 简介 SpringMVC 的入门案例 SpringMVC 流程分析 配置注解映射器和适配器 注解的使用 使用不同方式的跳转页面 1. SpringMVC 简介 Spring web mvc

本章学习目标 小风 Java 实战系列教程 SpringMVC 简介 SpringMVC 的入门案例 SpringMVC 流程分析 配置注解映射器和适配器 注解的使用 使用不同方式的跳转页面 1. SpringMVC 简介 Spring web mvc 本章学习目标 SpringMVC 简介 SpringMVC 的入门案例 SpringMVC 流程分析 配置注解映射器和适配器 配置视图解析器 @RequestMapping 注解的使用 使用不同方式的跳转页面 1. SpringMVC 简介 Spring web mvc 和 Struts2 都属于表现层的框架, 它是 Spring 框架的一部分, 我们可 以从 Spring 的整体结构中看得出来 :

More information

Oracle 4

Oracle 4 Oracle 4 01 04 Oracle 07 Oracle Oracle Instance Oracle Instance Oracle Instance Oracle Database Oracle Database Instance Parameter File Pfile Instance Instance Instance Instance Oracle Instance System

More information

幻灯片 1

幻灯片 1 约束和排序数据 Copyright Oracle Corporation, 2001. All rights reserved. 进度表 : 时间 主题 45 minutes 讲演 30 minutes 练习 75 minutes 总共 中国科学院西安网络中心 2005 Oracle SQL 入门 2-1 目标 完成本课后, 您应当能够执行下列操作 : 用一个查询限制返回的行 用一个查询排序返回的行

More information

PowerPoint Presentation

PowerPoint Presentation 5 数据查询 5.1 简单 SELECT 语句 5.2 SELECT 语句的统计功能 5.3 SELECT 语句中的多表连接 5.4 子查询 5.5 使用 SQL Server Management Studio 进行数据查询与维护 学习目标 通过本部分的学习, 应该掌握以下内容 数据查询的各种语句 运用 S QL S e rve r M a n a g e m e n t S t u d io 和基本的

More information

starter_pdfmerge

starter_pdfmerge 許 致 學 本 場 次 內 容 效 能 調 校 與 規 劃 SQL Server 2008 提 升 效 能 的 新 功 能 SQL Server 2008 效 能 調 校 工 具 效 能 不 佳 之 影 響 法 滿 足 使 用 者 需 求 無 業 生 產 力 客 戶 忠 誠 度 企 資 訊 人 員 績 效 不 彰 痛 醫 頭 腳 痛 醫 腳 頭 急 亂 投 醫 硬 體 升 級 不 一 定 可 以 獲

More information

How to Find SHOUG?

How to Find SHOUG? 介绍 Oracle CBO 基于成 本优化器的原理 by SHOUG. 王朝阳 How to Find SHOUG? Intorduction to the CBO Optimizer 1. 介绍 CBO 优化器的书 :Jonathan Lewis 写的 ; 2. 结构化查询语言的类型 : 1. DML(Data Manipulation

More information

基于UML建模的管理管理信息系统项目案例导航——VB篇

基于UML建模的管理管理信息系统项目案例导航——VB篇 PowerBuilder 8.0 PowerBuilder 8.0 12 PowerBuilder 8.0 PowerScript PowerBuilder CIP PowerBuilder 8.0 /. 2004 21 ISBN 7-03-014600-X.P.. -,PowerBuilder 8.0 - -.TP311.56 CIP 2004 117494 / / 16 100717 http://www.sciencep.com

More information

单元四数据的查询 数据库原理与应用 教学设计 数据库原理与应用 教学设计 课题名称 综合案例 数据的查询一 授课班级 移动通信 课时 2 学时 授课地点 实训室 知识目标能力目标素质目标 1. 掌握查询所有数据的方 1. 能够熟练地查询表中的 1. 培养学生的吃苦耐劳 法 ; 所有数据 ; 克服困难

单元四数据的查询 数据库原理与应用 教学设计 数据库原理与应用 教学设计 课题名称 综合案例 数据的查询一 授课班级 移动通信 课时 2 学时 授课地点 实训室 知识目标能力目标素质目标 1. 掌握查询所有数据的方 1. 能够熟练地查询表中的 1. 培养学生的吃苦耐劳 法 ; 所有数据 ; 克服困难 课题名称 综合案例 数据的查询一 授课班级 移动通信 课时 2 学时 授课地点 实训室 知识目标能力目标素质目标 1. 掌握查询所有数据的方 1. 能够熟练地查询表中的 1. 培养学生的吃苦耐劳 法 ; 所有数据 ; 克服困难的精神 ; 2. 掌握按条件查询的方法 ; 2. 能够灵活使用各种关系 2. 培养学生的团队分工与 3. 掌握对查询结果排序的方法 ; 运算符 AND 和 OR 对表中的数据进行条件查询

More information

PowerPoint Presentation

PowerPoint Presentation Lesson 1 Intro to SQL Simple SQL Query Instructor Cici Graduated from Cornell University majored in Operations Research and Information Technology, with a minor in business. She is currently working as

More information

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 1Z1-117 Title : Oracle Database 11g Release 2: SQL Tuning Version : Demo 1 / 11 1.Examine the query and its execution plan: Which statement

More information

ebook10-5

ebook10-5 Oracle 7.x RDBMS 5 Oracle S Y S S Y S T E M O r a c l e 5.1 O r a c l e R D B M S O r a c l e O r a c l e 5.2 SYS SYSTEM S Y S S Y S T E M O r a c l e S Y S V $ D B A C O N N E C T R E S O U R C E S Y

More information

幻灯片 1

幻灯片 1 幻 灯 片 1 从 多 表 中 显 示 数 据 Copyright Oracle Corporation, 2001. All rights reserved. 进 度 表 : 时 间 主 题 55 分 钟 讲 演 55 分 钟 练 习 110 分 钟 总 共 幻 灯 片 2 目 标 完 成 本 课 后, 您 应 当 能 够 执 行 下 列 操 作 : 写 SELECT 语 句 使 用 等 值 和

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 The BitCoin Scripting Language 交易实例 交易结构 "result": { "txid": "921a dd24", "hash": "921a dd24", "version": 1, "size": 226, "locktime": 0, "vin": [ ], "vout": [ ], "blockhash": "0000000000000000002c510d

More information

幻灯片 1

幻灯片 1 内置约束 Copyright Oracle Corporation, 2001. All rights reserved. 进度表 : 时间 主题 45 分钟 讲演 25 分钟 练习 70 分钟 总共 中国科学院西安网络中心 2005 Oracle SQL 入门 10-1 目标 完成本课后, 您应当能够执行下列操作 : 描述约束 创建和维护约束 10-2 Copyright Oracle Corporation,

More information

第四章 102 图 4唱16 基于图像渲染的理论基础 三张拍摄图像以及它们投影到球面上生成的球面图像 拼图的圆心是相同的 而拼图是由球面图像上的弧线图像组成的 因此我 们称之为同心球拼图 如图 4唱18 所示 这些拼图中半径最大的是圆 Ck 最小的是圆 C0 设圆 Ck 的半径为 r 虚拟相机水平视域为 θ 有 r R sin θ 2 4畅11 由此可见 构造同心球拼图的过程实际上就是对投影图像中的弧线图像

More information

数 据 库 系 统 基 础 2/54 第 6 章 数 据 库 管 理 与 维 护

数 据 库 系 统 基 础 2/54 第 6 章 数 据 库 管 理 与 维 护 数 据 库 系 统 基 础 1/54 数 据 库 系 统 基 础 哈 尔 滨 工 业 大 学 2011.~2012. 数 据 库 系 统 基 础 2/54 第 6 章 数 据 库 管 理 与 维 护 数 据 库 系 统 基 础 3/54 第 6 章 数 据 库 管 理 与 维 护 6.1 数 据 库 管 理 员 的 基 本 职 责 6.2 数 据 库 存 储 与 性 能 管 理 6.3 数 据 库

More information

目錄... ivv...vii Chapter DETECT

目錄... ivv...vii Chapter DETECT ... ivv...vii Chapter 1 1.1... 5 1.2... 6 1.3 DETECT... 11 1.3.1... 12 1.3.1.1...12 1.3.1.2...13 1.3.1.3...14 1.3.1.4...15 1.3.1.5...15 1.3.1.6...16 1.3.2 DETECT... 17 1.3.3... 19 1.3.4... 20... 22 Chapter

More information

支付宝2011年 IT资产与费用预算

支付宝2011年 IT资产与费用预算 OceanBase 支 持 ACID 的 可 扩 展 关 系 数 据 库 qushan@alipay.com 2013 年 04 月 关 系 数 据 库 发 展 1970-72:E.F.Codd 数 据 库 关 系 模 式 20 世 纨 80 年 代 第 一 个 商 业 数 据 库 Oracle V2 SQL 成 为 数 据 库 行 业 标 准 可 扩 展 性 Mainframe: 小 型 机 =>

More information

untitled

untitled 1 Access 料 (1) 立 料 [] [] [ 料 ] 立 料 Access 料 (2) 料 [ 立 料 ] Access 料 (3) 料 料 料 料 料 料 欄 ADO.NET ADO.NET.NET Framework 類 來 料 料 料 料 料 Ex MSSQL Access Excel XML ADO.NET 連 .NET 料.NET 料 料來 類.NET Data Provider

More information

untitled

untitled 1Oracle 1.1Oracle 1.1.1Oracle 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6Oracle 1.1.7Oracle 1.1.8 1.1.9Oracle 1.2Oracle 1.3Oracle 2 2.1 2.2 2.3 2.4 3 3.1 3.2 3.3 3.4 4 4.1 4.2 4.3 5 5.1 5.2

More information

幻灯片 1

幻灯片 1 沈 阳 工 业 大 学 2014 年 6 月 第 7 章 数 据 库 技 术 基 础 主 要 内 容 : 7.1 数 据 库 概 述 数 据 库 基 本 概 念 数 据 模 型 逻 辑 数 据 模 型 数 据 库 系 统 的 产 生 和 发 展 常 用 的 数 据 库 管 理 系 统 7.2 Access 2010 数 据 库 创 建 及 维 护 创 建 Access 2010 数 据 库 创 建

More information

* 4 6 R P r p . 1 2 3 4 7 89bk 6 5 1 2 3 4 5 6 7 8 9 0 bk r bl bm bn^ bo bl br bq bpbo bn bm [ ] [ ] [ ] bp 8 2 4 6 bq p [ ] [SET] br clckbt bs bs bt ck cl. 1 2 1 2+- 3 3 . 1 2 3 4 5 6 7 8 9 bk bl bm

More information

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 1Z0-007 Title : Introduction to Oracle9i: SQL Version : DEMO 1 / 10 1. What does the FORCE option for creating a view do? A.creates a view

More information

5. 下列条件子句中, 能够筛选出价格不在 ( 不包括边界值 ) 的是 ( ) A. Where 价格 NOT BETWEEN 100 AND 200 B. Where 价格 BETWEEN NOT 100 AND 200 C. Where 价格 NOT BETWEEN 101 AND

5. 下列条件子句中, 能够筛选出价格不在 ( 不包括边界值 ) 的是 ( ) A. Where 价格 NOT BETWEEN 100 AND 200 B. Where 价格 BETWEEN NOT 100 AND 200 C. Where 价格 NOT BETWEEN 101 AND 试卷代号 :1256 座位号 rn 国家开放大学 ( 中央广播电视大学 )2014 年秋季学期 " 开放本科 " 期末考试 数据库应用技术试题 2015 年 1 月 国 四厅万 1 1 一 单项选择题 ( 每个题只有一个答案是正确的, 请将正确的答案填 写到括号内 本题共 15 个小题, 每小题 2 分, 共 30 分 ) 1. 下列属于数据模型三要素的是 ( ) A. 数据库 数据库管理系统和操作系统

More information

ChinaBI企业会员服务- BI企业

ChinaBI企业会员服务- BI企业 商业智能 (BI) 开源工具 Pentaho BisDemo 介绍及操作说明 联系人 : 杜号权苏州百咨信息技术有限公司电话 : 0512-62861389 手机 :18616571230 QQ:37971343 E-mail:du.haoquan@bizintelsolutions.com 权限控制管理 : 权限控制管理包括 : 浏览权限和数据权限 ( 权限部分两个角色 :ceo,usa; 两个用户

More information

Slide 1

Slide 1 Oracle 数据库系列课程 Oracle 数据库系列课程概述 基础课程架构设计应用开发运维优化综合类 数据库和 SQL 语言基础课程 数据库逻辑设计及建模 PL/SQL 语言高级课程 DBA 高级课程 Oracle 11g 新特性 PL/SQL 语言基础课程 数据库物理设计 SQL 应用优化高级课程 故障诊断高级课程 Oracle 12c 新特性 DBA

More information

项目 3 创建和管理表 任务实现 Office Visio PK 3 FK FK1 3.1 相关知识 SQL Server 一 制订表规划 1. 表要存储什么对象 2. 表中每一列的数据类型和长度 059

项目 3 创建和管理表 任务实现 Office Visio PK 3 FK FK1 3.1 相关知识 SQL Server 一 制订表规划 1. 表要存储什么对象 2. 表中每一列的数据类型和长度 059 项目 3 创建和管理表 表是数据库中最重要的基础对象 它包含数据库中的所有数据 其他数据库对象 例如索引和视图等 都是依赖于表而存在的 若要使用数据库来存储和组织数据 首先就需要创建表 在本项目中将通过 15 个任务来创建和管理表 主要内容包括表的设计 理解 SQL Server 2008 中的数据类型 以及创建和修改表等 任务 1 表的设计 任务描述 Office Visio 3.1 3.1 项目

More information

一步到位实现 MySQL 优化 ---- 从硬件 系统 配置 设计等多角度优化 MySQL 叶金荣 QQ 群 : 微信公众号 :MySQL 中文网

一步到位实现 MySQL 优化 ---- 从硬件 系统 配置 设计等多角度优化 MySQL 叶金荣 QQ 群 : 微信公众号 :MySQL 中文网 一步到位实现 MySQL 优化 ---- 从硬件 系统 配置 设计等多角度优化 MySQL 叶金荣 QQ 群 : 373900864 125572178 272675472 weibo:@yejinrong,http://imysql.com, 微信公众号 :MySQL 中文网 2014.10 About Me 叶金荣, 网络常用 ID:yejr Oracle ACE(MySQL) 2006 年创办国内首个

More information

企业海量数据查询优化

企业海量数据查询优化 Computer Science and Application 计算机科学与应用, 2013, 3, 159-164 http://dx.doi.org/10.12677/csa.2013.33028 Published Online June 2013 (http://www.hanspub.org/journal/csa.html) The Corporate Mass Data Query

More information

目录 1 IPv6 PIM Snooping 配置命令 IPv6 PIM Snooping 配置命令 display pim-snooping ipv6 neighbor display pim-snooping ipv6 routing-ta

目录 1 IPv6 PIM Snooping 配置命令 IPv6 PIM Snooping 配置命令 display pim-snooping ipv6 neighbor display pim-snooping ipv6 routing-ta 目录 1 IPv6 PIM Snooping 配置命令 1-1 1.1 IPv6 PIM Snooping 配置命令 1-1 1.1.1 display pim-snooping ipv6 neighbor 1-1 1.1.2 display pim-snooping ipv6 routing-table 1-2 1.1.3 display pim-snooping ipv6 statistics

More information

untitled

untitled http://idc.hust.edu.cn/~rxli/ 1.1 1.2 1.3 1.4 1.5 1.6 2 1.1 1.1.1 1.1.2 1.1.3 3 1.1.1 Data (0005794, 601,, 1, 1948.03.26, 01) (,,,,,) 4 1.1.1 Database DB 5 1.1.1 (DBMS) DDL ( Create, Drop, Alter) DML(

More information

10

10 10 08 10 Periodical Report 1 4 8 1 1 4 8 Batch Job Index DBA Index SQL WHERE Execution Plan SQL 4 8 SQL 10.3 10.4 SQL 318 08 5 SQL SQL Server Oracle 20--03 16:30:52 2003163052 Orders_Big SQL T-SQL 20-01-01

More information

目 录(目录名)

目  录(目录名) 目录 目录...1-1 1.1 域名解析配置命令... 1-1 1.1.1 display dns domain... 1-1 1.1.2 display dns dynamic-host... 1-1 1.1.3 display dns server... 1-2 1.1.4 display ip host... 1-3 1.1.5 dns domain... 1-4 1.1.6 dns resolve...

More information

运维2010年端午节日封网及值守

运维2010年端午节日封网及值守 PostgreSQL 和 Oracle 的管理艺术 Francs.tan 1 章节目录 2 一 体系结构二 维护经验三 备份四 监控 第一章 3 一 体系结构二 维护经验三 备份四 监控 1.1 Oracle 体系结构 4 1.2 PostgreSQL 体系结构 5 Client Interface Master Session Processes postgres postgres... postgres

More information

V8_BI.PPT [只读]

V8_BI.PPT [只读] IBM Software Group DB2 V8 IBM OLTP OLAP External Extract Integrate Transform Maintain Data Warehouse Reporting Legacy Data Mining DB2 UDB: DB2 DB2 DB2 DB2 DB2 DB2 DB2 UDB EEE on PSeries 500GB 1TB >

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 友乾营 报表的 SQL 植入风险 规避风险 : 让你的报表变的安全起来 SQL 植入的概念 恶意的 SQL 归根结底 : 执行了不该允许执行的 SQL 命令, 达到非法的目的 常见案例 骗过登录验证非法获取账号信息篡改 删除数据 为什么存在 SQL 植入 植入原理 如何攻击 特殊的输入参数 未处理特殊字符 -- # 数据库配置不合理 植入原理 : 案例 1, 特殊输入参数 union or 猜表名

More information

untitled

untitled 1 Access 料 (1) 立 料 [] [] [ 料 ] 立 料 Access 料 (2) 料 [ 立 料 ] Access 料 (3) 料 料 料 料 料 料 欄 ADO.NET ADO.NET.NET Framework 類 來 料 料 料 料 料 Ex MSSQL Access Excel XML ADO.NET 連 .NET 料.NET 料 料來 類.NET Data Provider

More information

幻灯片 1

幻灯片 1 用组函数合计数据 Copyright Oracle Corporation, 2001. All rights reserved. 进度表 : 时间 主题 35 分钟 讲演 40 分钟 练习 75 分钟 总共 中国科学院西安网络中心 2005 Oracle SQL 入门 5-1 目标 完成本课后, 您应当能够执行下列操作 : 识别可用的组函数 描述组函数的使用 用 GROUP BY 子句分组数据 用

More information

ExcelUtility 类库使用说明 ( 续 ) 开发 / 设计 : 左文俊 第一个新增功能, 列宽自适应, 当超过 30 个字符则将单元格内容设为换行 任意一个无模板的导出方法均支持该功能, 示例代码如下 : /// <summary> /// 测试方法

ExcelUtility 类库使用说明 ( 续 ) 开发 / 设计 : 左文俊 第一个新增功能, 列宽自适应, 当超过 30 个字符则将单元格内容设为换行 任意一个无模板的导出方法均支持该功能, 示例代码如下 : /// <summary> /// 测试方法 ExcelUtility 类库使用说明 ( 续 ) 开发 / 设计 : 左文俊 第一个新增功能, 列宽自适应, 当超过 0 个字符则将单元格内容设为换行 任意一个无模板的导出方法均支持该功能, 示例代码如下 : 0 /// 测试方法 : 测试将 DataTable 导出到 EXCEL, 无模板 public void TestExportToExcelByDataTable() string excelpath

More information

ebook 165-5

ebook 165-5 3 5 6 7 8 9 [ 3. 3 ] 3. 3 S Q L S Q 4. 21 S Q L S Q L 4 S Q 5 5.1 3 ( ) 78 5-1 3-8 - r e l a t i o n t u p l e c a r d i n a l i t y a t t r i b u t e d e g r e e d o m a i n primary key 5-1 3 5-1 S #

More information

01 SQL Server SQL Server 2008 SQL Server 6-1 SSIS SQL Server ( master ) ( msdb ) SQL Server ( master ) master 6-1 DTS sysadmin 6-1 sysa

01 SQL Server SQL Server 2008 SQL Server 6-1 SSIS SQL Server ( master ) ( msdb ) SQL Server ( master ) master 6-1 DTS sysadmin 6-1 sysa 6 01 SQL Server SQL Server 2008 SQL Server 6-1 SSIS 6-1 06 228 6-1 SQL Server ( master ) ( msdb ) SQL Server ( master ) master 6-1 DTS sysadmin 6-1 sysadmin 6-1 SQL Server 2008 SSIS SQL Server (dbo) master

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 从分区到 Sharding 数据库核心业务表的分区设计 杨廷琨 杨廷琨 (yangtingkun) Oracle ACE Director ITPUB 数据库管理区版主 ACOUG 核心会员 个人介绍 参与编写 Oracle 数据库性能优化 Oracle DBA 手记 和 Oracle DBA 手记 3 十六年的一线 DBA 经验 个人 BLOG 中积累了 2500 篇原创技术文章 云和恩墨 CTO

More information

Oracle高级复制配置手册_业务广告_.doc

Oracle高级复制配置手册_业务广告_.doc Oracle 高 级 复 制 配 置 手 册 作 者 : 铁 钉 Q Q: 5979404 MSN: nail.cn@msn.com Mail: nail.cn@msn.com Blog: http://nails.blog.51cto.com Materialized View Replication 复 制 模 式 实 现 了 单 主 机 对 多 个 复 制 站 点 的 数 据 同 步. 在 主

More information

第一步 : 定义数据库的目标 ( 需求分析 Requirement Analysis) 收集需求并定义数据库目标, 例如 将要输入的样本的格式在草稿中画出来, 询问和报告通常能帮助你 第二步 : 收集数据, 组织表格和设定主键 一旦你已经确定了数据库的目标, 收集了需要存储在数据库里的数据 将数据分

第一步 : 定义数据库的目标 ( 需求分析 Requirement Analysis) 收集需求并定义数据库目标, 例如 将要输入的样本的格式在草稿中画出来, 询问和报告通常能帮助你 第二步 : 收集数据, 组织表格和设定主键 一旦你已经确定了数据库的目标, 收集了需要存储在数据库里的数据 将数据分 关系数据库设计快速入门教程 Thanks for the source: https://www.ntu.edu.sg/home/ehchua/programming/sql/relational_database_design.html 简介 关系数据库是在 1969 左右由 Edgar Codd(IBM 研究 ) 提出的 ( 相比于其他数据库模型, 如分层, 网络和对象模型,) 它已成为在商业应用软件中占主导地位的数据库模型

More information

DAT239

DAT239 DAT239 SQL Server 2005 数据仓库方面的新功能 肖维 Technical Lead SQL Server Engine Access Method 微软有限公司 自我介绍 Access Method 负责的技术范围 数据的访问 (B TREE) 数据的检查 (DBCC CHECK) 数据的修理 (DBCC REPAIR) 图像和文件的存储 (TEXT/IMAGE/VARCHAR)

More information

PowerPoint Presentation

PowerPoint Presentation 云和恩墨成就所托 YUNHE ENMO (BEIJING) TECHNOLOGY CO.,LTD 从菜鸟到专家成长系列之一 大梦初醒 云和恩墨 ( 北京 ) 信息技术有限公司 ACE: 侯圣文 李轶楠 杨廷琨 张乐奕 邮箱 :training@enmotech.com 故事背景 : 使用同步软件, 把源端数据同步到目标端时, 产生了报错 Release 11.2.0.3.0 报错 : ERROR at

More information

System Global Area, Oracle Background process Oracle, Server Process user process, user process : SQL*PLUS SYSTEM SQL> select name from v$datafile; NA

System Global Area, Oracle Background process Oracle, Server Process user process, user process : SQL*PLUS SYSTEM SQL> select name from v$datafile; NA ORACLE By Chao_Ping and Parrotao 1 Oracle9i, SGA 2 Oracle9i 3, 4, Oracle? Oracle??? Oracle 1 Overview Oracle, Datafile, Background process, System Global Area, Server Process User Process System Global

More information

Untitled

Untitled mysql show show databases; show tables from db_name; show columns from table_name from db_name; show index from talbe_name [from db_name]; show status; show variables; show [full] processlist; show table

More information

Guava学习之Resources

Guava学习之Resources Resources 提供提供操作 classpath 路径下所有资源的方法 除非另有说明, 否则类中所有方法的参数都不能为 null 虽然有些方法的参数是 URL 类型的, 但是这些方法实现通常不是以 HTTP 完成的 ; 同时这些资源也非 classpath 路径下的 下面两个函数都是根据资源的名称得到其绝对路径, 从函数里面可以看出,Resources 类中的 getresource 函数都是基于

More information

Kubenetes 系列列公开课 2 每周四晚 8 点档 1. Kubernetes 初探 2. 上 手 Kubernetes 3. Kubernetes 的资源调度 4. Kubernetes 的运 行行时 5. Kubernetes 的 网络管理理 6. Kubernetes 的存储管理理 7.

Kubenetes 系列列公开课 2 每周四晚 8 点档 1. Kubernetes 初探 2. 上 手 Kubernetes 3. Kubernetes 的资源调度 4. Kubernetes 的运 行行时 5. Kubernetes 的 网络管理理 6. Kubernetes 的存储管理理 7. Kubernetes 包管理理 工具 Helm 蔺礼强 Kubenetes 系列列公开课 2 每周四晚 8 点档 1. Kubernetes 初探 2. 上 手 Kubernetes 3. Kubernetes 的资源调度 4. Kubernetes 的运 行行时 5. Kubernetes 的 网络管理理 6. Kubernetes 的存储管理理 7. Kubernetes

More information

数据完整性问题 数据完整性的四大保障措施 : 主键约束 ; 外键约束 ; 域约束 ; 业务规则约束 ;

数据完整性问题 数据完整性的四大保障措施 : 主键约束 ; 外键约束 ; 域约束 ; 业务规则约束 ; Database Systems 主题三 : 数据完整性实现技术 DDL 信息科学与工程学院 Jin-Min Yang 2018.09 数据完整性问题 数据完整性的四大保障措施 : 主键约束 ; 外键约束 ; 域约束 ; 业务规则约束 ; DDL layout Definition of Schema of Table Trigger( 触发器 ): 业务规则约束 ; SQL Identifiers

More information

作业参考答案

作业参考答案 本章的知识点了解 SQL 语言发展史掌握关系数据库体系结构 三层结构在关系数据库体现 ) 掌握基本表定义 包括修改 删除定义 ) 掌握视图的概念与定义 删除定义理解索引的概念与定义 删除定义总结 SQL 数据定义的特点总结用户数据查询的基本结构掌握 SELECT 子句重复元组的处理掌握 FROM 子句掌握 WHERE 子句理解更名 属性 列 ) 运算理解字符串操作理解元组显示顺序理解分组掌握聚集函数掌握空值处理理解嵌套子查询的概念

More information

Apache Spark 2.4 新增内置函数和高阶函数使用介绍

Apache Spark 2.4 新增内置函数和高阶函数使用介绍 Apache Spark 2.4 新增了 24 个内置函数和 5 个高阶函数, 本文将对这 29 个函数的使用进行介绍 关于 Apache Spark 2.4 的新特性, 可以参见 Apache Spark 2.4 正式发布, 重要功能详细介绍 如果想及时了解 Spark Hadoop 或者 Hbase 相关的文章, 欢迎关注微信公共帐号 :iteblog_hadoop 针对数组类型的函数 array_distinct

More information

123

123 資 訊 管 理 系 資 料 庫 教 學 帄 台 MTA 資 料 庫 國 際 證 照 題 庫 分 析 指 導 教 授 : 馮 曼 琳 教 授 組 員 名 單 : 陳 雅 紋 學 號 998C030 蔡 宥 為 學 號 998C114 陳 韋 婷 學 號 998C168 中 華 民 國 一 零 三 年 五 月 I 誌 謝 本 專 題 報 告 得 以 順 利 完 成, 首 先 要 感 謝 恩 師 馮 曼

More information

幻灯片 1

幻灯片 1 高级子查询 Copyright Oracle Corporation, 2001. All rights reserved. 进度表 : 时间 主题 60 分钟 讲演 50 分钟 练习 110 分钟 总共 中国科学院西安网络中心 2005 Oracle SQL 入门 18-1 目标 完成本课后, 您应当能够 : 写多列子查询 在返回空值时描述并解释子查询的行为 写一个在 FROM 子句中的子查询 SQL

More information

Microsoft PowerPoint - 05-SQL3-advanced.ppt

Microsoft PowerPoint - 05-SQL3-advanced.ppt SQL: Interactive Queries (2) Prof. Weining Zhang Cs.utsa.edu Aggregate Functions Functions that take a set of tuples and compute an aggregated value. Five standard functions: count, min, max, avg, sum

More information

SQL: Interactive Queries (2)

SQL: Interactive Queries (2) SQL: Interactive Queries (2) Prof. Weining Zhang Cs.utsa.edu Aggregate Functions Functions that take a set of tuples and compute an aggregated value. Five standard functions: count, min, max, avg, sum

More information

Microsoft Word - 第4章 单表查询—教学设计.doc

Microsoft Word - 第4章 单表查询—教学设计.doc 传智播客 MySQL 数据库入门 教学设计 课程名称 : MySQL 数据库入门 授课年级 : 2015 年级 授课学期 : 2015 学年第一学期 教师姓名 : 某某老师 2014 年 04 月 09 日 课题名称第 4 章单表查询 计划 学时 7 课时 内容分析教学目标及基本要求重点及措施 通过前面章节的学习, 我们知道如何对数据进行添加 修改 删除等操作 数据库还有一项重要的操作就是查询数据,

More information

幻灯片 1

幻灯片 1 编写基本的 SQL SELECT 语句 Copyright Oracle Corporation, 2001. All rights reserved. 进度表 : 时间 主题 40 分钟 讲演 25 分钟 练习 65 分钟 总共 中国科学院西安网络中心 2005 Oracle SQL 入门 1-1 目标 完成本课后, 您应当能够 : 列出 SQL SELECT 语句的功能 执行基本的 SELECT

More information

文章标题(黑体二号居中)

文章标题(黑体二号居中) 星型转换 Oracle 优化器 中国 Oracle 用户组作者 : 刘相兵 (Maclean Liu) http://www.acoug.org 版本 发布时间 1.0 2011/1/30 http://www.acoug.org 实力成就稳健技术创造价值 - 1 - 目录 1 星型转换...- 3-2 省略重复连接...- 11-3 临时表转换...- 12-4 如何启用星型查询...- 16-5

More information