现在的位置: 首页 > 综合 > 正文

Oracle 10.2 概念 第一章 Oracle介绍

2013年08月24日 ⁄ 综合 ⁄ 共 8027字 ⁄ 字号 评论关闭

Oracle 概念(Oracle 10.2)

1、Oracle介绍

本章提供了针对Oracle数据库服务器的概述,包含以下主题

Oracle数据库体系结构

Oracle数据库特点

Oracle数据库应用开发

Oracle数据库体系结构

Oracle数据库是将数据作为基本处理单元的集合。数据库的目标是存储和取回关系型数据。数据库服务器是解决数据管理问题的核心。通常来说,一个服务器在一个多用户环境中可靠的管理大量的数据,所以许多用户可以同时访问同一数据。所有的这些以很高的性能完成。一个数据库服务器还能阻止未经授权访问和提供针对失败恢复的有效解决方案。

Oracle数据库是第一个针对企业网格运算设计的数据库,它提供了最灵活最低成本的管理信息和应用的方式。企业网格计算提供了基于工业标准的、模块化的存储和服务器的大池。在这种体系结构下,每个新系统可以从组件池中快速提供。因此没有必要关注负载峰值,因为计算能力可以根据需要很容易的添加或者在资源池中重新分配。

Oracle数据库包含物理架构和逻辑架构。因为物理架构和逻辑架构是分离的,所以可以在不影响逻辑存储架构访问的情况下管理数据的物理存储。

下面部分包含下列主题:

Oracle网格架构概述

应用程序架构概述

物理数据库结构概述

逻辑数据库机构概述

模式和通用模式对象

Oracle数据字典概述

Oracle实例概述

数据库访问概述

Oracle实用工具概述

Oracle网格架构概述

网格运算是一个新的IT架构,它创造出了更灵活、成本更低的企业信息系统。在网格架构下,独立的、模块化的硬件和软件组件的分组可以连接起来,并可以根据商业需求的改变来重新组织。

网格运算的目标是解决企业IT中的一些常见问题:应用竖井问题,会导致低利用率问题,零散的笨重系统问题,维护代价很高且很难改变,分散零碎的信息问题,它们无法企业内部作为一个整体来使用。

网格运算的优势:和其他运算模型相比,使用网格方式设计和实现的IT系统可以提供高质量的服务,更低的成本以及更大的灵活性。高质量的服务来源于去除了单点失败问题、健壮的安全基础和集中式协议驱动的管理。低成本来源于提高了资源使用效率和大大减少了管理和维护成本。在网格计算中,不存在针对特定任务分配一系列软件和硬件的现象,所有的资源都是池化的,可以按需分配,因而消除了设备使用低效和冗余设备的问题。网格运算还可以使用小型的单独的硬件组件,因而可以减少每个组件的成本,并可以根据需要更灵活的分配资源。

网格运算的定义

当你在池中处理特定特征的资源时,网格运算方式将类似IT资源的集合整体上作为一个单独的池。在标识单个系统和碎片信息问题上,网格运算在整体资源管理和独立资源控制的基础上获得了一个平衡。网格包含的资源如下:

¨ 基础:创建数据存储和程序执行环境的软件和硬件

¨ 应用程序:定义特定商业过程的程序逻辑和流程

¨ 信息:用来指导商业的所有类型数据的含义

网格运算的核心原则 网格运算和其他方式的运算比如大型机、客户端服务器系统,以及多层结构相比有两个独特的地方:虚拟化和可配置性

¨ 虚拟化:硬盘、应用组件、信息资源等这类单独的资源是按照资源类型被池化的,客户(人或者软件程序)可以抽象的调用它们。虚拟化意味着打破了客户和服务之间的资源的硬连接,可以在透明的给客户提供资源满足特定的需要。

¨ 可配置性:当客户通过虚拟层请求资源时,在后台一个特定的资源被标识为实现这个请求,然后这个资源被分配给这个客户。

信息、应用程序、基础设施这些资源虚拟化和配置方式针对资源的类型会有所不同,但是概念上是相同的。简单来说,每类资源在网格运算中获得的优势是不同的,但是所有的都具备高性能、低成本和升级灵活的特点。

基础设施网格:基础网格资源包括硬件资源和软件资源,硬件资源指存储、处理器、内存、网络设备等,软件资源是管理硬件的工具,比如数据库、存储管理、系统管理、应用服务器以及操作系统等。

虚拟化和可配置性意味着池化资源可以组织起来并按照协议分配给特定的客户。例如,一个协议可能对一个Web服务器分配足够的处理能力,因而它可以提供次级的处理时间。通过软件配置采取不同的方式来执行这个规则可以达到均衡所有客户请求的目的。

将基础资源看作一个单个的池并按照需求分配这些资源可以达到减少低效和冗余处理能力的目的从而节约成本。从整体上管理硬件和软件资源减少了工作成本和人为错误的机率。

跨多个不同的计算机的分布式计算和跨多个磁盘和磁盘组的分布式存储能能够避免单点失败问题。因此当一个单独组件失败,整个系统仍然保持可用。而且网格运算还能提供更多的选择,比如使用小型硬件组件如刀片服务器和低成本存储等,这些可以依次递减每个单独组件的成本,从而给企业提供更高的灵活性和更低的成本。

基础设施是网格运算的维度,它是最熟悉也最容易让人理解的,但是针对应用程序和信息来说也同样简单。

应用程序网格:网格中的应用程序资源是应用软件中的商务逻辑和流程控制的代码。他们可能是打包或定制程序,可能使用任何编程语言,反映任何级别的复杂程度。比如,软件从客户得到一个指令,发送一个确认,打印工资表校验、将特定客户的请求路由到特定的客户端的进程都是应用程序资源。

从历史上来看,应用程序逻辑曾经和用户接口代码、数据管理代码、进程或页面流程纠缠在一起,并且缺乏良好的接口定义,这些已经在大型应用程序上得到印证,很难修改并很难集成。

面向服务架构已经被看作是构建程序的超级模式,而且面向服务架构概念和网格运算的两个核心优势紧密相连。应用资源的虚拟化和可配置性包含将应用程序组件做为服务发布给多个客户使用,客户可能是人或者进程,接着将这些服务构建到更强大的商业流程中。

同样,网格运算对IT基础资源提供更好的重用性和更好的灵活性,网格运算将一系列应用逻辑看作一个资源,可以更好的重用应用程序功能,并在修改和构建新的组合应用时提供更好的灵活性。

不仅如此,将发布的服务集成起来的应用还能作为一个整体在商业上显示活动情况,因此进程是标准化的,可以跨地域、跨商务单位并且自动的提供端对端服务。这样通过不断提高的自动化和降低相异性可以构建更健壮的更低的成本商务过程。

信息网格:在基础设施和应用程序之后,网格运算的第三个维度是信息。今天,信息倾向于是跨组织的,所以很难将商业看作一个整体来回答顾客的基本问题。没有关于顾客是谁,想要购买什么的信息是没有意义的。

相反,网格计算将信息整体看作一个资源,和对待基础资源和应用程序资源一样,因而可以得到信息的潜在内容。信息网格包含企业中的所有数据,还包括数据定义的元数据。这些数据可能是结构化的、半结构化的和非结构化的,可以保存在任何位置,比如数据库、本地文件系统或者e-mail服务器,也可以被任何应用程序创建。

网格运算的核心优势针对信息和对基础设施和应用程序是一样的。基础网格检查网络的拥挤程度来控制多个服务器或者多个存储设备组合起来为单独的服务,而且也可以根据需要很容易的重新配置。一个面向服务的架构或者说应用程序网格使独立开发的服务或者应用程序资源能够合并为大型的商业过程,而且可以根据需要进行改变而不会终端组合应用的其他部分。同样,信息网格对信息资源和相关信息资源之间提供一种更好的利用信息之间固有联系的价值的方法,而且也可以根据条件改变来创建新的连接方式。

比如关系数据库是个早期的信息虚拟化技术。和它的前任网状数据库和层次数据模型不同,数据之间的所有的联系都是预先定义的,关系型数据库可以针对通用目的的信息资源的灵活访问途径。今天,XML对信息虚拟化走的更远,它通过标准的方式来使用元数据表达信息,这样就解除了创建和显示信息的应用程序和信息之间的硬关联。

信息配置技术包括数据队列、数据传播、复制、抽取-转换-加载(ETL),还有映射和清理工具来确保数据质量。一种数据中心的模式已经作为首选模式出现,它从多个活动数据源不停同步操作型数据来集中的保存,这既能保存分散控制的灵活性,也可以建立真实数据的单一来源。

网格运算单独工作很好,协同更佳:使用网格计算管理任何单个的IT资源,不论是基础设施、应用程序还是信息,即使其他资源不采用网格管理,企业都可以实现高质量、更灵活、更低成本。比如没有必要重写一个应用程序来针对基础设施网格来获益。也可能只发布一个应用程序网格或者一个面向服务架构,不需要修改信息管理的方式和硬件定义的方式。

上述现象是可能的,但是针对所有资源使用网格运算可以获得更大的收益。比如,在您可以根据单独服务的资源需求设置协议或者针对同一个组合程序中但是基础设施处理方式不同的服务(某些时候只能通过应用程序网格和基础设施网格集成才能实现)来设置协议的话,应用程序网格会变得更有价值。另外,通过集成更多的信息到真实的单一数据源来构建信息网格只有在基础设施设计为网格方式才能健壮,所以它可以跨越当一个计算机的界限。

Oracle 10g数据库的网格计算

在网格计算的远景大道上,企业需要真实的解决方案来支持他们迁移到更灵活更高效的IT架构。Oracle 10g数据库软件家族提供了大量网格核心技术的实现来帮助企业开始网格运算。Oracle在企业整体架构上发布网格计算功能,提供健壮的安装基础、集中式管理、容易理解的、功能强大的开发工具以及通用的访问方法。Oracle 10g数据库包括:

¨ Oracle 10g 数据库

¨ Oracle 10g应用服务器

¨ Oracle 10g企业管理器

¨ Oracle 10g协同套件

虽然Oracle 10g的网格特征包含在上述产品列表中,下面的讨论集中在Oracle 10g数据库的网格计算能力

基础设施网格

¨ 服务器虚拟化:Oracle真正应用集群(RAC)使一个数据库在网格中多个集群节点中运行,将多个标准机器中的处理资源池化成为可能。Oracle在跨机器平衡负载的配置方面具备独特的灵活性,因为它是唯一一种不需要根据工作分区或分布数据的数据库技术。Oracle 10g Release 2软件在基于协议的均衡跨RAC实例方面得到了增强。

¨ 存储虚拟化:Oracle 10g数据库的特征Oracle自动存储管理(ASM)在数据库和存储之间提供了一个虚拟层,所以多个磁盘可以当作一个磁盘组处理,并且磁盘可以在数据库运行时动态增加或者移除。现有的数据会根据性能和调优的要求自动在现存磁盘上重新分布。在Oracle 10g Release 2中,ASM支持不同的软件版本的数据库访问同一个存储池。

¨ 网格管理:因为网格计算将多个服务器和磁盘池化,并将他们分配给不同应用目的。所以单独资源的最大程度上的自我管理和其他的管理功能集中化就非常重要。

Oracle 10g企业管理器的网格管理特征提供了管理组成一个逻辑组的多个系统的单一界面。网格控制器在网格中通过适当的软件堆栈来配置节点,并且集中的维护系统组的配置和安全设定。

网格管理的另一方面是如何兼顾高安全性和易维护性的管理用户标识。Oracle 10g标识管理器包含一个兼容LDAP的目录来委托管理,现在在Release 2中是联合标识管理器,所以一个单独的单点登陆功能可以跨安全区域进行安全共享。Oracle 10g标识管理器非常符合网格原则,通过单点登陆服务器实现了针对认证用户的中心应用,在这种情况下,基于委派的分布和联合控制的标识符来优化系统的维护和全部操作。

应用程序网格:

支持标准的Web服务。除了在Oracle 10g应用服务器中支持健壮的Web服务之外,Oracle 10g数据库还可以发布和支持Web服务。DML和DDL操作可以作为Web服务公布,而且数据库中的函数可以使一个Web服务看上去类似一个SQL行资源,能够使用强大的SQL工具来检索基于关系型数据和非关系型数据的WEB服务。

Oracle 10g 企业管理器提高了对面向服务架构的支持,包括监控和管理Web服务和其他管理员定义的服务、跟踪端对端性能和在问题发生时执行底层分析。

信息网格:

¨ 数据提供:信息的基础是数据,当客户无论在哪里需要它都需要提供。比如,用户可能是按地域分布的,这种情况下对数据的快速访问的重要性要高于访问同一资源。所以,数据必须在系统之间共享,可以接近实时也可以批量更新。Oracle的批量数据迁移工具是表空间传和数据泵。

对更细维度的数据共享,Oracle 10g数据库的流技术能够捕捉数据库事务的改变并传递它们,因而可以在更新发生之后保持两个或者更多数据库拷贝的同步。它也可以和传统的数据共享技术统一成为一个单独的技术,例如消息队列、复制、事件、数据仓库装载、通知和发布者/订阅者模式等。

¨ 数据管理集中化:Oracle 10g数据库提供通过SQL和XML查询的通用访问途径,管理所有类型的结构化、半结构化和非结构化的信息和按照它最优的方式展现、维护和查询数据。Oracle依赖传统的关系数据库架构本地实现了OLAP立方体、标准XML结构、地理空间数据和无限大小的文件管理,因而虚拟化了数据展现。综合这些数据类型使得创建在不同信息类型之间的连接和创建传统的关系数据库连接是一样的。

¨ 元数据管理:Oracle数据仓库构建器不仅仅是个传统的创建数据仓库的批量ETL工具。它执行规则来提高数据质量、使用模糊识别来客户数据不一致现象、使用统计分析来推断数据档案。在Oracle 10g Release 2中,使用Oracle的流特征将元数据管理能力从数据拉调度提升到数据事务界别推送的级别。

Oracle系列的企业数据中心产品(如Oracle客户数据中心)可以提供实时的操作信息源之间的同步,所以企业在保留分离的系统和应用程序的时候拥有真实的唯一数据来源,分离的系统或应用可能是打包程序、历史遗留程序或定制程序的集合。除数据清理和调度机制之外,Oracle还可以针对特定类型的信息如客户、财务和产品信息提供格式良好的模式,这些经验可以从以往多年构建企业应用程序的经验中获得。

¨ 元数据接口:Oracle 10g软件家族新增加了Oracle企业搜索产品。Oracle 10g企业搜索在企业内部搜索所有的数据源,不论公开还是秘密信息,比如数据库服务器、文档管理服务器、文件系统、Web站点、数据库和应用程序,然后从所有的相关资源中返回给定的搜索条件的搜索结果。爬虫和索引程序针对每个数据源采用了启发式特征来推断所有企业信息的元数据,这些可以针对任何查询返回最相关的结果。

应用程序架构概述

   使用数据库有两种通用方式:客户/服务器结构和多层结构。随着互联网计算在计算环境中越来越流行,许多数据库管理系统都移植到多层环境。

客户/服务器架构:

多处理器:使用多个处理器为一系列相关工作服务。分布式处理通过允许不同的处理器执行相关工作的不同部分来减少单个处理器的负载,进而在整体上提高系统的性能和处理能力。

一个Oracle数据库系统可以很容易在客户/服务器架构下分布式处理受益。在此架构下,数据库系统被分为两部分:前端或客户,和后端/服务器。

客户端

数据库应用程序的客户端负责将一个操作的请求提交给数据库服务器来执行。它负责请求、处理和展现服务器管理的数据。客户端工作站可以针对它的工作优化。比如,它不需要大的硬盘容量,或者它可以从图形处理能力上获益。

通常,客户端和数据库服务器在不同的计算机上运行,不过在PC上,通常很多客户端和服务器同时运行。

服务器端

服务器端运行Oracle软件,处理并发、共享的数据访问的功能请求。服务器接受和处理从客户端传送的SQL或者PL/SQL语句。管理这个服务器的计算机也可以根据它的任务进行优化,它需要大容量的磁盘和快速的处理器。

多层架构:应用服务器

一个多层架构包含下列组件:

一个客户端或者启动程序来开始一个操作

一个或多个应用服务器来执操作的一部分。一个应用服务器对客户端提供数据访问和执行部分查询处理,因而可以减轻一些数据库服务器的负载。它可以看作在客户端和多重服务器之间的接口,还能提供额外的安全性。

一个末端或者说数据库服务器来保存大部分操作使用的数据

这个架构需要应用服务器完成下列功能:

确认客户端如浏览器的认证

连接一个Oracle数据库服务器

为客户端执行请求的操作

如果启用了代理认证,那么客户端的标识会在整个连接的各个层保持

物理数据库结构概述

下面的部分阐述了Oracle数据库的物理数据库结构,包括数据文件、重做日志文件和控制文件。

数据文件:

每个Oracle数据库都包含一个或多个物理数据文件。数据文件包含所有的数据库数据。逻辑数据库结构中的数据如表、索引都物理存储在分配给这个数据库的数据文件上。

数据文件包含以下特征:

一个数据文件只能和一个数据库相关联

数据文件都有确定的特性集使他们在数据库空间耗尽的时候可以自动增长

一个或多个数据文件组成了一个数据库存储的逻辑单位叫表空间

    当在Oracle的缓存中进行通常的操作和存储时,数据文件上的数据根据需要会被读取,然后数据在内存中共享,当数据库后台数据库写进程(DBWn)被唤醒时会一次将所有的数据写入恰当的数据文件。

控制文件

每个Oracle数据库都有一个控制文件。一个控制文件包含描述数据库物理结构的条目。比如,它包含下列信息:

数据库名称

数据文件和重做日志文件的名字和位置

数据库的创建时间戳

Oracle可以多路复用控制文件,就是说可以同时维护多个控制文件的拷贝,避免控制文件中出现错误的现象。

每次一个Oracle实例启动的时候,它的控制文件会标识出数据库和重做日志文件,重做日志文件必须是打开的,这样Oracle才能继续启动。如果数据库的物理组成被修改(例如一个新的数据文件或重做日志文件被创建),然后Oracle会自动更新控制文件来反映这个变化。控制文件也用于数据库恢复。

重做日志文件:

每个Oracle数据库都有一套两个或多个重做日志文件。这些重做日志文件共同作为数据库的重做日志。一个重做日志由重做条目组成(也叫重做记录)。

重做日志的主要功能是记录所有的数据改变。如果一个错误造成修改数据没有写入数据文件中,那么这个改变可以从重做日志中获得,所以工作永远不会丢失。

为避免重做日志本身出现错误,Oracle允许多路复用日志,所以两个或多个重做日志的拷贝可以保存在不同的磁盘上。

在系统或媒体出问题造成数据库数据没有写入数据文件的时候,重做日志的信息可以用恢复数据库。例如,如果一个意外断电中断了数据库操作,这时内存中数据没有写入数据文件中,数据就丢失了,当重新加电数据库打开丢失的数据可以恢复。通过应用Oracle数据库数据文件的最近的重做日志信息,Oracle可以修复数据库到断电的时刻。

恢复操作中应用重做日志的操作叫做向前滚动。

归档日志文件

你可以启用自动归档重做日志的功能。Oracle在归档模式下会自动归档日志文件。

参数文件

Oracle建议创建一个服务器参数文件(SPFILE)作为维护初始化参数的动态定义手段。一个服务器参数文件允许你在服务器端磁盘文件数上保存和管理你的初始化参数。

警告和跟踪日志文件

每个服务器和后台进程都会能够写入相关联的跟踪文件。当一个进程检测到一个内部错误,它会将错误信息转储到跟踪文件。某些写入跟踪文件的信息是针对数据库管理员,而其他的信息是针对Oracle支持服务。跟踪文件信息还可以用来调整应用程序和实例。

警告文件和警告日志是特殊的跟踪文件。数据库的警告日志按时间记录消息和错误记录。

备份文件

恢复一个文件就是使用一个备份文件代替它。比较有代表性的是在媒体失败或用户错误损坏或删除了原始文件时需要重新恢复文件。

用户管理的备份和恢复需要您在实际恢复备份文件之前实际测试一下

抱歉!评论已关闭.