1.1、并发
管理数据并发的办法是让每个用户轮流操作数据。
应用程序开发人员应该在设计事务时充分发挥其中的并发、完整性等特性。
1.2、读完整性 [连贯性,前后一致]
——只读事务:在用户需要对多个表做多个查询时,建议使用。
1.3、各种锁机制——————a、自动锁(排他锁、共享锁);b、手动锁
1.3.1、非扩散行级锁(non-escalating row-level-locking)
1.3.2、共享锁和排它锁 都允许对被锁资源进行查询,但是禁止其他所有活动(更新之类的)
换句话说,共享锁、排它锁都允许且只允许对被共享锁进行查询。
1.4、静默数据库
1.5、Real ApplicationClusters
一个实时应用集群(RAC)系统中包含了运行在集群内不同计算机上的多个Oracle实例,这些实例通过互联的方式进行通信。
RAC系统中的各个节点通过集群管理软件访问位于共享磁盘上的共享的数据库。
RAC系统聚合了集群中互联的多个计算机的处理能力,提供了系统冗余能力、接近线形的可扩展性、以及高可用性。
RAC系统对OLTP(OnLine Transaction Process)或数据仓库(datawarehouse)系统都有显著的好处,各种系统和应用都能有效的利用RAC环境。
在RAC环境中,当数据处理需求增长时,用户可以轻易地使应用的处理能力扩大而无需改变程序代码。当用户向RAC环境中加入计算节点、存储等资源后,RAC可以将新资源融入整体系统,从而超越每个单独组件的限制,形成威力巨大的处理能力。
1.6、可移植性
Oracle具有在各种主流平台间移植的能力,而且保证更换平台后应用程序无需修改就能运行。
2、可管理性概述
2.1、自我管理的数据库
Oracle数据库实现了很高程度的自我管理能力。其特性 包含:
a、自动撤销空间管理(automatic undo management)
b、动态内存管理(dynamic memory management)
c、自动数据文件管理(Oracle-managed files)
d、快速恢复(mean time to recover)
e、可用存储空间管理(free space management)
f、多种数据块容量(multiple block sizes)和恢复管理(Recovery Manager,RMAN)
2.2、Oracle企业管理器
在企业管理器控制台的界面下,管理员可以执行如下操作:
* 全面管理Oracle系统的运行环境,包括数据库,应用服务器,应用程序及系统服务。
* 诊断、修正、调教数据库
* 以各种时间间隔,调度执行不同系统中的任务。
* 通过网络监控数据库的运行情况。
* 管理物理位置不同的节点和服务。
* 和其他数据库管理员共享数据库任务(task)。
* 按数据库的相关性对数据库分组,以便于管理。
* 运行于企业管理器集成的Oracle或第三方工具。
* 自定义企业管理器的用户界面。
2.3、SQL*Plus
执行SQL和PL/SQL。
2.4、自动存储管理
它使数据文件、控制文件、日志文件的管理更简单、自动化的程度更高。
2.5、调度器(DBMS_SCHEDULER包)
2.6、数据库资源管理器
3、数据库备份与恢复特性概述
故障恢复的目标是使故障前所有已提交的事务反映到恢复后的数据库中,并使数据库尽可能快地恢复正常操作,使用户不受到故障的影响。
3.1、故障种类
a、用户失误。(例如:一不小心drop了一张表)
b、语句错误。(auto)
c、进程错误。(auto)
d、实例错误。 实例故障发生时,SGA数据缓冲区中的数据将不能被写入数据文件中。
Oracle将在数据库重启后自动恢复重做日志中问写入数据文件的事务。
e、介质故障。
Oracle能在各种硬件故障后进行完全的介质恢复。用户可以选择进行完全恢复,也可以选择恢复到指定时间点。
3.2、用于数据库恢复的数据结构
I、 重做日志(redolog)————一系列文件,防止已提交但在内存中没写入问价的数据丢失
两部分组成:a、联机重做日志——简称“重做日志”——因为永远出于联机状态。
b、归档重做日志——联机重做日志 的备份。
归档模式模式和非归档模式的区别在于,如果数据库运行于非归档NOARCHIVELOG模式下,数据库只能完全恢复实例错误,而无法恢复磁盘故障。
II、 撤销记录(undo record)
在数据库恢复中,Oracle先将重做日志中的记录的有变化的数据提交到数据库,再利用撤销记录中的信息回滚为提交的数据。
III、控制文件(control file)
其中包括:a、数据库的文件结构。
b、当前由LGWR写入的日志序列号(log sequence number)。
在恢复过程中,控制文件中的信息用于维护恢复操作的进程。
IV、 数据库备份(database backup)
4.1、由于 磁盘故障 可能导致多个文件物理损坏,介质恢复要求在操作系统级恢复被损坏的数据库文件。
4.2、用户可以通过 恢复管理器(RecoveryManager)或操作系统工具完成备份数据库文件的工作。
4.3、RMAN是一个Oracle备份恢复工具,她可以:
4.3.1、管理备份恢复操作,
4.3.2、创建数据库文件的备份(数据文件、控制文件、归档日志文件),
4.3.3、还能从备份中恢复数据库。
4、高可用性概述
5、业务智能特性概述(我比较感兴趣)
5.1、数据仓库
包括:a、关系型数据库(主体部分)
b、数据抽取、传输、转换、加载方案(ETL)
c、联机分析引擎。(online analytical processing, OLAP)
d、客户端分析软件。
e、管理数据收集与信息发布的应用程序。
5.2、抽取,转化,加载(ETL)
5.3、物化视图
可以将数据查询结果保存在一种特殊的方案对象中。
常规的视图不包含数据,也不占用存储空间,物化视图与之不同,她存储了基于其他表、视图的查询结果。物化视图的存储位置可以与它的基表在同一数据库,也可以不同。
当物化视图与她的基表位于同一数据库时,用户就可以使用查询重写(queryrewrite)功能来提高查询性能。查询重写机制可以自动地在物化视图和原始表之间选择最优的方案重写用户提交的SQL语句,以便提高查询的响应时间,同时对用户透明。查询重写在数据仓库系统中格外有效。
5.4、数据仓库中的位图索引
* 缩短了复杂随机查询的响应时间。
* 相对其它索引而言减少了所需的存储空间。
* 即使CPU、内存等硬件资源相对不足也能通过位图索引获得巨大的性能提升。
* 能够提高并行地执行DML和数据加载时的执行效率。
另外,如果为一个大表全面地建立传统的B-tree索引有可能代价非常高昂,因为索引所需的存储空间可能数倍于原数据表。而位图索引所需的存储空间通常不会超过原表。
5.5、表压缩
5.6、并行执行
5.7、分析型SQL
5.8、联机分析处理(OnLineAnalytical Processing,OLAP)能力
应用程序开发者可以使用SQL中的 联机分析处理(OLAP)函数 实现标准查询或随机查询。
此外,Oracle中的 Oracle OLAP 组件还提供了多维计算、预测、建模、what-if分析等分析功能。
Oracle OLAP 是一个支持OLAP的关系型数据库。
5.9、数据挖掘
通过Oracle dataMining组件,数据挖掘所需的所有信息都可以保存在数据库中,例如原始数据、展现结果、分析模型、模型评估结果等等。
这样,Oracle可以作为应用开发者的一个基础平台,数据挖掘功能可以与其他数据库应用无缝地集成在一起。
呼叫中心、ATM、ERM、BPA 等应用系统都会使用到数据挖掘。
Oracle通过Java API提供建模、模型测试、模型评价等数据挖掘功能。
5.10、分区
分区技术可以将 大表、大索引分解为更小、更易管理的块,这些块被称为分区,通过分区技术可以有效地解决大表、大索引带来的问题。
用户对分区表执行的SQL查询、DML语句与对普通数据表一样,但是定义了分区后,
DDL语句可以访问、操作单独的分区,而不是整个表和索引,这样通过分区技术就能简化对大数据库对象的管理工作。分区对应用程序是透明的。
分区技术对不同种类的应用程序,尤其是需要访问大量数据的应用程序十分有效,分区可以增加OLTP系统的易管理性和可用性,还可以增加数据仓库系统的易管理性和系统性能。
6、内容管理特性概述
6.1、Oracle中的XML
Oracle XML DB组件将XML作为数据库内置的数据类型。
6.2、LOB
用户可以使用 BLOB, CLOB, NCLOB, BFILE这四种LOB数据类型以二进制或文本格式存储和操作大数据量的非结构化数据。(例如:文本、图形、视频、音频等)。
6.3、Oracle文档管理(OracleText)
OracleText组件可以为文档(文本内容)创建索引,使用户能够快速、准确地获取所需的文档信息。
Oracle Text组件可以将对文档的搜索与常规的数据库搜索融合到同一SQL语句中。
Oracle数据库具备按照文档的文本内容、元数据、或文档属性来查询文档的功能,这使Oracle能够集成各种类型数据的管理工作。
应用程序开发人员和DBA可以利用Oracle Text SQL API组件简单明了地创建和管理文档索引,并进行文档搜索。
6.4、Oracle Ultra Search
用户可以使用 Oracle Ultra Search组件搜索Web站点、数据库表、文件、邮件列表、Oracle应用服务器门户及用户自定义的数据源。开发者可以利用Oracle Ultra Search组件创建各种搜索应用。
6.5、Orache interMedia
6.6、OracleSpatial————Oracle内置地理空间信息管理功能。
7、安全特性概述————系统安全(system security)、数据安全(data security)
常见的安全机制有:
* 阻止对数据库未授权的访问。
* 阻止对方案对象未授权的访问。
* 监控用户操作。
每个数据库用户都有一个同名的方案(schema),默认情况下,每个数据库用户在其拥有的方案下
创建、访问数据库对象。
7.0.1、系统安全——在系统级控制。
7.0.2、数据安全——在方案对象级控制。
7.1、安全机制
Oracle采取授权式的访问控制,及基于权限来控制用户对数据的访问。
8、数据完整性和触发器概述
8.1、完整性约束
当为一个已有数据的表创建完整性约束,且表中数据与此完整性约束不符时,约束创建会失败
当一个约束定义后,执行任何违反该完整性约束的DML语句将会被回滚,并返回错误信息。
8.2、键:
8.2.1、主键: Primary key
8.2.2、唯一键:Unique key
8.2.3、外键: Foreign key
8.2.4、外键:Referenced key
8.2.5、检查:Check
8.3、触发器
9、信息集成特性概述
9.1、分布式SQL
同构分布式数据库系统(homogeneous distributed databasesystem)是由两个或多个Oracle数据库构成的网络,这个系统可以位于一台或多台计算机上。用户和应用程序可以使用分布式SQL同时地访问或修改多个数据库中的数据,就如同修改单一数据库一样便捷。分布式数据库系统对用户是透明的。
9.1.1、位置透明性———用户不知道数据的原始位置。
9.1.2、SQL和事物透明性
9.1.3、分布式查询优化
9.2、Oracle数据流
9.2.1、捕获
9.2.2、中转
中转区是一个 存储、管理被捕获事件的队列。对数据库表数据的修改被格式化为逻辑变化记录(logical changerecords,LCR)存在中转区,知道订阅者使用这些记录。数据库利用LCR中转区对其中的LCR数据进行安全性检查(security),使用情况监控(auditing),以及数据流动的跟踪(tracking)。
9.2.3、使用
9.2.4、消息队列
9.2.5、数据复制
9.3、Oracle透明网关和通用连接