热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Oracle中分区、视图、以及其他SchemaObjects

欢迎进入Oracle社区论坛,与200万技术人员互动交流进入虽然表和索引是最重要、最常用的schemaObjects,但是数据库还是很多其他schemaobjects。其中最常用的都在本章介绍。本章包含下面几小节:?OverviewofPartitions(分区的概述)?OverviewofVie

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 虽然表和索引是最重要、最常用的schema Objects,但是数据库还是很多其他schema objects。其中最常用的都在本章介绍。 本章包含下面几小节: ?Overview of Partitions(分区的概述) ?Overview of Vie

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入

  虽然表和索引是最重要、最常用的schema Objects,但是数据库还是很多其他schema objects。其中最常用的都在本章介绍。

  本章包含下面几小节:

  ?Overview of Partitions(分区的概述)

  ?Overview of Views(视图的概述)

  ?Overview of Materialized Views(物化视图的概述)

  ?Overview of Sequences(sequences的介绍,一般翻作序列,感觉怪怪的,这里不翻)

  ?Overview of Dimensions(纬度表的概述,数据仓库里的东西)

  ?Overview of Synonyms(同义词的概述)

  Overview of Partitions(分区的概述)

  分区使你可以将超大表、索引拆分成 很多小的,可管理性更高的片段,这些片段就叫分区。

  每个分区都是一个独立的对象,有它自己的名字和存储属性

  举个生活案例来解释分区

  假设人力资源经理有一个超大的盒子,这个盒子里面放着雇员的文件夹,每个文件夹有的对应雇员的雇佣日期。

  现在经常有需求,要查询指定月份 雇佣了哪些人。有一个办法是创建一个索引在 雇员的雇佣日期上,将在盒子中分散存放的文件夹的位置 按顺序记录在上面。

  相比较而言,分区策略就是使用很多小盒子,每个盒子存放指定月份雇佣的人的记录。

  用小盒子有几个好处,当有人要问 六月份时雇佣人的文件夹时,人力资源经理可以直接在六月份 这个盒子里面找。更进一步来说,如果有任何的小盒子临时性的损坏了,其他小盒子这个时候依然可以正常使用。移动办公室的时候也容易了,由移动一个超重大盒子,变成移动 很多小盒子。

  从应用的角度来看,还是只有一个大表存在。表分区以后,相关语句不需要进行修改。

  分区适用于多种数据库应用类型,特别是那些管理者大量数据的.

  分区的优点包括:

  ?Increase availability(增加了可用性)

  一个分区的不可用,不会导致整个对象的不可用。查询优化器会自动在执行计划中移除相关分区,所以某些分区损坏了,对查询是不会有影响的.

  ?Easier administration of schema objects(简化了对象的管理)

  一个分区后的对象,既可以整体的来管理,也可以针对某个分区来管理。

  DDL语句可以只对某个分区进行操作,因此你可以将一些资源密集型的任务 拆开执行。比如重建索引或者重建表。

  举个例子:你可以直接对表分区进行move。如果出现了什么问题,那么也只有这个分区需要重新move 而不是整个表。同样的,删除一个分区可以避免执行大量的DELETE语句。

  ?Reduced contention for shared resources inOLTP systems(OLTP系统中减少共享资源的争用)

  在一些OLTP系统中,分区可以减少共享资源的争用

  举个例子:DML操作分散在了多个segment中,而不是在一个segment。

  ?Enhanced query performance in datawarehouses(增强数据仓库的查询性能)

  在数据仓库中,分区可以加速处理一些特殊查询

  比如:一个有N百万条的销售记录表 可以分成四个分区。

  Partition characteristics(分区有哪些特征)

  表和索引的每个分区,必须拥有一样的 逻辑属性(attributes),比如列名,数据类型,约束等。

  举个例子:一个表中的所有分区都公用同一种列、约束的定义,而索引的所有分区都公用相同的索引列。然而,每个分区都有自己独自的物理属性,比如 属于哪个表空间等。

  Partitioning Key(分区key)

  分区key 是一个或者多个列。用来决定分区表中的每一行应该去哪一个分区。

  每一行只能属于 一个分区。

  在sales表,你可以指定time_id列是range partition的key。数据库分配表中的行到哪个分区,这完全基于这行的time_id值是不是属于这个分区范围的。

  Oracle数据库自动根据条件中的分区key来 直接对合适的分区进行DML。

  Partitions Strategies(分区方案)

  Oracle 提供了一些分区方案,用来决定数据该怎样进行分区。

  基础的方案就是 range,list,hash分区.

  Single-level(单级)分区策略,只使用这些数据分布方法的其中之一.

  举例说明:要么只用range分区,要么只用list分区.

  在Composite partitioning(组合分区)中,每个分区根据一种方法进行分区,然后每个分区又进一步分出子分区.

  举例说明:你可以使用channel_id列进行list分区。然后再使用time_id进行range子分区

  Range Partitioning(范围分区)

  在范围分区中,数据库根据分区key 指定的范围 来决定行的归属。

  范围分区最常用到date类型上。

[1] [2] [3] [4]


推荐阅读
  • 本文提供了一个详尽的前端开发资源列表,涵盖了从基础入门到高级应用的各个方面,包括HTML5、CSS3、JavaScript框架及库、移动开发、API接口、工具与插件等。 ... [详细]
  • JavaScript 中引号的多层嵌套使用技巧
    本文详细介绍了在 JavaScript 编程中如何处理引号的多级嵌套问题,包括双引号、单引号以及转义字符的正确使用方法。 ... [详细]
  • 本文详细介绍了五种常用的PHP排序算法——冒泡排序、选择排序、插入排序、希尔排序和堆排序。每种算法都附有代码示例,并通过打印和延时操作来直观展示排序过程。欢迎指出任何错误。 ... [详细]
  • Awk是一款功能强大的文本分析与处理工具,尤其在数据解析和报告生成方面表现突出。它通过读取由换行符分隔的记录,并按照指定的字段分隔符来划分和处理这些记录,从而实现复杂的数据操作。 ... [详细]
  • 本文详细解析了‘廮’字在《新华字典》中的读音、笔画、含义及其在历史地名中的使用情况。 ... [详细]
  • 本文将指导您如何在Windows 7操作系统中轻松调整屏幕亮度,以达到节能和护眼的效果。 ... [详细]
  • 本文介绍了如何在 Oracle 数据库中查询重复数据,并提供了多种方法来筛选和删除重复记录,包括基于单个字段和多个字段的重复数据处理。 ... [详细]
  • 本文综述了沙尘天气的气象条件,特别关注北京地区的沙尘污染特征,探讨了沙尘期间的气溶胶光学厚度变化、大颗粒物浓度上升以及冷锋作为重要起沙条件的作用。 ... [详细]
  • 深入解析Unity3D游戏开发中的音频播放技术
    在游戏开发中,音频播放是提升玩家沉浸感的关键因素之一。本文将探讨如何在Unity3D中高效地管理和播放不同类型的游戏音频,包括背景音乐和效果音效,并介绍实现这些功能的具体步骤。 ... [详细]
  • 本文详细探讨了能力模型(Competency Model)的概念及其在人力资源管理中的应用,涵盖职位体系设计、薪酬激励策略及绩效管理等方面。通过深入分析冰山模型的核心构成,以及不同类型人才的关键素质,旨在为企业提供科学的人才管理和发展的指导。 ... [详细]
  • 本文提供了处理WordPress网站中出现过多重定向问题的方法,包括检查DNS配置、安装SSL证书以及解决数据库连接错误等步骤。 ... [详细]
  • 解决ADODB连接Access时出现80004005错误的方法
    本文详细介绍了如何解决在使用ADODB连接Access数据库时遇到的80004005错误,包括错误原因分析和具体的解决步骤。 ... [详细]
  • 本文探讨了一种常见的C++面试题目——实现自己的String类。通过此过程,不仅能够检验开发者对C++基础知识的掌握程度,还能加深对其高级特性的理解。文章详细介绍了如何实现基本的功能,如构造函数、析构函数、拷贝构造函数及赋值运算符重载等。 ... [详细]
  • 随着Linux操作系统的广泛使用,确保用户账户及系统安全变得尤为重要。用户密码的复杂性直接关系到系统的整体安全性。本文将详细介绍如何在CentOS服务器上自定义密码规则,以增强系统的安全性。 ... [详细]
  • 本文对宋代著名诗人吕渭老的作品《情久长》进行了细致的翻译和赏析,深入探讨了诗中蕴含的情感与艺术特色。 ... [详细]
author-avatar
驴友团的新家处_273
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有