Oracle OLAP 组件 重建 说明

 

一. Oracle OLAP 组件 说明

有关Oracle 的所有组件的说明,参考:

Oracle8i/9i/10g/11g 组件(Components) 说明

http://www.cndba.cn/Dave/article/1445

联机分析处理OLAP(On-Line Analytical Processing), 也称DSS决策支持系统。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。

OLAP是Oracle数据库企业版的一个多维分析引擎,采用oracle数据库来存储OLAP数据和元数据。

在OLAP中,语句的执行量不是考核标准,因为一条语句的执行时间可能会非常长,读取的数据也非常多。所以,在这样的系统中,考核的标准往往是磁盘子系统的吞吐量(带宽),如能达到多少MB/s的流量。

 

更多内容参考:

OracleOLAP 与 OLTP 介绍

http://www.cndba.cn/Dave/article/1462

 

在添加OLAP 组件的情况下,如果我们做32到64位的DB迁移,都会需要重建OLAP 组件,否则就会导致大量的无效对象的存在。 而这个重建工作又需要近40分钟,所以是个很耗时间的过程。

 

Oracle OLAP是Oracle企业版的一个可选件,由于将OLAP引擎完全集成进了Oracle数据库,所以,所有数据和元数据都是从Oracle数据库内部进行存储和管理的,以提供高度可伸缩性、强健的管理环境及工业级可用性和安全性。

 

1.1 OLAP 组件

可以使用如下SQL 查看OLAP组件的状态和版本信息:

SQL> column comp_name format a35

SQL> col version for a15

SQL> set wrap off

--Oracle11g:

SQL> select comp_name, version, statusfrom dba_registry where comp_name like '%OLAP%';

 

COMP_NAME                           VERSION         STATUS

-------------------------------------------------- ----------------------

OLAP Analytic Workspace             11.2.0.3.0      INVALID

Oracle OLAP API                     11.2.0.3.0      VALID

OLAP Catalog                        11.2.0.3.0      VALID

 

--Oracle 10g:

SYS@ wangou > select comp_name, version,status from dba_registry where comp_name like '%OLAP%';

 

COMP_NAME                           VERSION         STATUS

-------------------------------------------------- ----------------------

OLAP Analytic Workspace             10.2.0.5.0      VALID

Oracle OLAP API                     10.2.0.5.0      VALID

OLAP Catalog                        10.2.0.5.0      VALID

 

 

Oracle OLAP主要包括以下组件:

(1)OLAP Analytic Engine

Oracle的OLAP分析引擎是一个基于多维模型的MOLAP引擎,运行在Oracle内核中,因此拥有良好的性能。

(2)Analytic Workspace

分析工作区中实际存储多维模型的数据。一个Analytic Workspace存储为一个关系表,分析工作区中的不同对象存储为表中的一行(LOB格式)。分析工作区甚至可以存储在分区表中,以提供更好的并发性能。

(3)OLAP DML

OLAP DML是Analytic Workspace的原始操作语言,包括关于Analytic Workspace的数据定义语言(DDL)和数据操作语言(DML)。对于Analytic Workspace的所有操作方式,比如GUI工具,java和SQL等方式,最终都要转化为Oracle DML语言。

(4)SQL Interface to OLAP

提供使用SQL操作AnalyticWorkspace的接口,该接口使用PL/SQL实现。

(5)Analytic Workspace Java API

提供使用Java操作AnalyticWorkspace的接口。在GUI工具Analytic Workspace Manager中使用的就是该接口。

(6)OLAP API

Oracle OLAP的一个Java编程接口,支持OracleBI Bean。

 

1.2 Oracle OLAP的两个客户端工具:

(1)Analytic Workspace Manager

这是Oracle提供的一个操作AnalyticWorkspace的一个图形工具。使用该工具可以快速的完成诸如定义数据的逻辑多维模型、创建多维数据到关系数据的映射、装载和聚合数据等任务。

(2)OLAP Worksheet

OLAP Worksheet提供了操作Analytic Workspace的一个交互式环境。有点类似于Oracle数据库的SQLPLUS工具。

 

1.3 Active Catalog View(活动目录视图)

Active CatalogView,活动目录视图,是Oracle为OLAP用户提供的一系列动态视图,用于提供分析工作区(Analytic Workspace)中的对象信息。Analytic workspace是用户session和Oracle OLAP引擎交互所必须的接口,也是dimension,cube的对象的容器。

 

在Oracle OLAP中,Analytic workspace的概念有点类似与数据库中的schema,也是一组相关对象的集合。但是Analytic workspace会使用一个名为aw$name的table来实际的存储analyticworkspace中的对象(dimension,cube,level,attribute等)。有时候,我们可能需要将一个analytic workspace从一个系统迁移到另外一个系统,也可能需要将一个analytic workspace的内容迁移到另外一个analytic workspace中,利用Analytic Workspace Manager可以在图形界面下完成该任务,首先将一个aw导出为EIF文件,然后将EIF导入到另外一个aw即可。

 

OLAP多维模型中的一些主要对象,如dimension(维度),measure(度量),cube(数据立方体),hierarchy(层次),level(层),attribute(属性)等,都有对应的活动目录视图,根据视图的名字基本可以判断该视图中的内容,Oracle10g所有的活动目录视图都以ALL_OLAP2_AW开头:

(1)    ALL_OLAP2_AWS

(2)    ALL_OLAP2_AW_ATTRIBUTES

(3)    ALL_OLAP2_AW_CATALOGS

(4)    ALL_OLAP2_AW_CATALOG_MEASURES

(5)    ALL_OLAP2_AW_CUBES

(6)    ALL_OLAP2_AW_CUBE_AGG_LVL

(7)    ALL_OLAP2_AW_CUBE_AGG_MEAS

(8)    ALL_OLAP2_AW_AGG_OP

(9)    ALL_OLAP2_AW_CUBE_AGG_SPECS

(10) ALL_OLAP2_AW_CUBE_DIM_USES

(11) ALL_OLAP2_AW_CUBE_MEASURES

(12) ALL_OLAP2_AW_DIMENSIONS

(13) ALL_OLAP2_AW_DIM_HIER_LVL_ORD

(14) ALL_OLAP2_AW_DIM_LEVELS

(15) ALL_OLAP2_AW_PHYS_OBJ

(16) ALL_OLAP2_AW_PHYS_OBJ_PROP

 

 

除了活动目录视图,Oracle也提供了几个动态性能视图,用于展示OLAP对象的一些统计信息,这些DynamicPerformance View都以V$AW开头:

(1)    v$aw_aggregate_op

(2)    v$aw_allocate_op

(3)    v$aw_calc

(4)    v$aw_longops

(5)    v$aw_olap

(6)    v$aw_session_info

 

以上理论知识转自ningoo的blog:

http://www.ningoo.net/html/2007/introduction_of_oracle_olap_component.html

 

二. 添加删除OLAP 组件

MOS: How To Remove Or To Reinstall TheOLAPOption To 10g And 11g [ID 332351.1]

 

这里提供了2种解决方法:

 

2.1 在ORACLE_HOME 级别重建

2.1.1 删除OLAP

       备份DB和oraInventory,在关闭ORACLE_HOME上的所有Instance,使用Universal Installer (OUI) 移除ORACLE_HOME的OLAP 选项。在OUI 中选择升级已经存在的db,在selectoptions 选项可以控制是否启用OLAP。如下图:


 


在Unix 和Linux 平台上,也可以直接relink olap_off 的方式来删除,这样就避免使用OUI。

 cd $ORACLE_HOME/rdbms/lib

 make -f ins_rdbms.mk olap_off
 make -f ins_rdbms.mk ioracle

 

       非注册的OLAP将不在db 的banner 中限制,同时v$option  也会显示为FALSE.

 

2.1.2 重新安装OLAP

1)在OUI中添加OLAP 组件,参考上图。

2)添加完毕之后执行如下脚本,在db 级别进行添加。

sqlplus /nolog
SQL> conn /as sysdba
SQL> spool add_olap.log
SQL> @?/olap/admin/olap.sql SYSAUX TEMP;
SQL> @?/rdbms/admin/utlrp.sql
SQL> spool off

 

2.2 在Database 级别重建

2.2.1 删除OLAP

--在dbserver 上开一个session,设定相关的变量,并用sys 用户执行如下脚本:

ORACLE_HOME=your_oracle_home
ORACLE_SID=your_db_sid
PATH=$ORACLE_HOME/bin:$PATH
sqlplus /nolog
SQL> conn / as sysdba


----> Remove OLAP Catalog
SQL> @?/olap/admin/catnoamd.sql


----> Remove OLAP API
SQL> @?/olap/admin/olapidrp.plb
SQL> @?/olap/admin/catnoxoq.sql


----> Deinstall APS - OLAP AW component
SQL> @?/olap/admin/catnoaps.sql
SQL> @?/olap/admin/cwm2drop.sql


----> Recompile invalids
SQL> @?/rdbms/admin/utlrp.sql

 

catnoamd.sqlusedabove will drop the OLAPSYS schema (which is completely OLAP specific).

       --catnoamd.sql 脚本用来drop OLAPSYS 用户。

 

cwm2drop.sqlneedsto be run only in 11g. In 10g, catnoamd.sql already calls it.

       --cwm2drop.sql 只需要在11g中执行。在10g中,catnoamd.sql脚本中已经包含了该脚本,所以不用执行。

 

       If you connectto the database in SQLPLUS, the banner still shows the OLAPoption,this happensbecause the Oracle executable is still aware of OLAP, it islinked with OLAP, andalso the OLAP files are still present in the ORACLE_HOME.

 

Once runningthedeinstall scripts, the utlrp.sql could report invalid objects with SYSandPUBLIC owners. If so, the following SQL can be used to report more detailsonthat:

--删除之后,可能导致一些无效的对象,可以使用如下SQL 来查看具体信息:

 

SQL> select owner,object_name,object_type, status from dba_objects where status='INVALID';

 

       You could getsome invalid objects under SYS and PUBLIC owner, and they are the oldduplicate OLAPSYS objects copied under these schemas when Olap has beeninstalledpreviously.

       Generally,the Olap objects are named with context like %OLAP%, %AWM%, or other Olap wordkeys intheir "object_name" field, however, if it needs a help torecognizethem, then please contact Oracle  Support and create a ServiceRequest toget assistance for this question.

 

       Notethat catnoadm.sql could fail from 10.1.0.5 to 11.1.0.7 release. 

 

       Due to the fact that it refers to three scripts which don't get shipped until 11.2this scriptwill fail.

       Besides that it will error on 7 non-existing synonyms to drop.

 

Prior 11.2, execute thesethree drop synonym statements:

--在11.2 之前,需要执行如下脚本:

SQL> drop public synonym OlapFactView;
SQL> drop public synonym OlapDimView;
SQL> drop public synonym DBMS_ODM;

 

If therearefurther invalid OLAP specific objects after the above removal steps,pleaseconsult Note1060023.1Note565773.1 

       If you do notwant to install OLAP into a newly created database, then in theDatabaseConfiguration Assistant (dbca), select a custom database template anduncheckOracle OLAP in the Database Components wizard step.

 

2.2.2 添加OLAP

Assuming that youcreated your database manually or via DBCA, add the OLAP option to anexistingEnterprise Edition Database.

--假设我们在ORACLE_HOME级别添加了OLAP。

 

Then openaterminal session on the database server machine, set ORACLE_HOME,ORACLE_SIDenvironment variables, and execute some script as user SYS AS SYSDBA,detailsbelow:

--在dbserver 端用SYS 用户执行如下脚本,来创建olap。

 

ORACLE_HOME=your_oracle_home
ORACLE_SID=your_db_sid
PATH=$ORACLE_HOME/bin:$PATH
sqlplus /nolog
SQL> conn /as sysdba
SQL> @?/olap/admin/olap.sql SYSAUX TEMP;

--这个脚本需要30+分钟

 

三. 验证无效对象和组件状态

 

SQL> select count(*) from dba_invalid_objects;

 

 COUNT(*)

----------

       67

 

如果有无效对象,使用如下脚本编译:

SQL> @?/rdbms/admin/utlrp.sql

 

SQL> col comp_id for a15

SQL> col version for a15

SQL> col comp_name for a30

SQL> select comp_id,comp_name,version,status from dba_registry;

 

COMP_ID         COMP_NAME                      VERSION         STATUS

--------------------------------------------- --------------- -----------------

EM              Oracle Enterprise Manager      11.2.0.3.0      VALID

AMD             OLAP Catalog                   11.2.0.3.0      VALID

SDO             Spatial                        11.2.0.3.0      VALID

ORDIM           Oracle Multimedia              11.2.0.3.0      INVALID

XDB             Oracle XML Database            11.2.0.3.0      INVALID

CONTEXT         Oracle Text                    11.2.0.3.0      VALID

ODM            Oracle Data Mining             11.2.0.3.0      VALID

EXF             Oracle Expression Filter       11.2.0.3.0      VALID

RUL             Oracle Rules Manager           11.2.0.3.0      VALID

OWM             Oracle Workspace Manager       11.2.0.3.0      VALID

CATALOG         Oracle Database Catalog Views  11.2.0.3.0      VALID

 

COMP_ID         COMP_NAME                      VERSION         STATUS

--------------------------------------------- --------------- -----------------

CATPROC         Oracle Database Packages and T11.2.0.3.0      INVALID

JAVAVM          JServer JAVA Virtual Machine   11.2.0.3.0      VALID

XML             Oracle XDK                     11.2.0.3.0      VALID

CATJAVA         Oracle Database Java Packages  11.2.0.3.0      VALID

APS             OLAP Analytic Workspace        11.2.0.3.0      INVALID

XOQ             Oracle OLAP API                11.2.0.3.0      VALID

 

17 rows selected.

 

 

相关文档:

DBA_REGISTRY Shows Oracle OLAP Componentsin Status REMOVED [ID 1064322.1]

 

 

 

-------------------------------------------------------------------------------------------------------

版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!

QQ:492913789

Email:ahdba@qq.com

Blog:  http://www.cndba.cn/dave

Weibo: http://weibo.com/tianlesoftware

Twitter: http://twitter.com/tianlesoftware

Facebook: http://www.facebook.com/tianlesoftware

Linkedin: http://cn.linkedin.com/in/tianlesoftware

 

 

-------加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请----

DBA1 群:62697716(满);   DBA2 群:62697977(满)  DBA3 群:62697850(满)  

DBA 超级群:63306533(满);  DBA4 群:83829929   DBA5群: 142216823

DBA6 群:158654907    DBA7 群:172855474   DBA总群:104207940

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
一.数据仓库发展的商业驱动力 3 1.1 企业生存环境的变化 3 1.2 企业如何迎接市场变化带来的挑战 4 1.2.1 开拓市场:理解市场 4 1.2.2 提高企业运作绩效:理解业务 5 1.2.3 平衡市场发展目标和企业运作 5 1.3 基于数据仓库的有效的商务解决方案的要求 6 1.4 ORACLE数据仓库:被证明是有实力的商务解决方案 6 二、ORACLE数据仓库的体系结构 7 2.1 数据仓库的平台:数据库和决策分析工具 11 2.1.1 Oracle8i的数据仓库新特性 11 2.1.2 Oracle OLAP产品的新发展 13 2.1.3 Oracle 集成的决策支持产品工具集 16 2.2 市场发展分析应用 17 2.3 企业运作分析应用 18 2.4 平衡市场和企业运作目标的应用 18 2.5 ORACLE商业智能系统 19 2.6 ORACLE数据仓库实施咨询服务 19 2.7 ORACLE数据仓库合作伙伴计划 20 三、ORACLE数据仓库的平台--ORACLE8I 21 3.1 丰富查询处理技术(RICH QUERY PROCESSING TECHNIQUES) 22 3.2 高级SQL优化器(SOPHISTICATED SQL OPTIMIZER) 23 3.3 高端数据仓库技术和OLTP 24 3.4 资源管理 24 3.5 分区表(PARTIONED TABLES)与索引 24 3.6 摘要管理 25 3.7 透明的表空间 25 3.8 直接的路径装载API 26 3.9 数据仓库的增强功能 26 3.10 先进的查询技术与业务事件 26 3.11 ORACLE8I并行服务器改进 27 3.12 扩展的备份与恢复子系统 28 3.13 ORACLE开放式网关提供异种数据源访问技术 28 3.14 增强的多媒体信息处理能力ORACLE 8I INTERMEDIA 30 3.15 数据库管理工具ORACLE ENTERPRISE MANAGER 31 四、ORACLE数据仓库设计和建立工具--WAREHOUSE BUILDER 34 五、ORACLE集成的决策分析工具集 36 5.1 ORACLE的联机分析处理(OLAP)工具--ORACLE EXPRESS 36 5.1.1 Oracle Express服务器 36 5.1.2 Oracle OLAP的强大的开发工具 42 5.2 ORACLE即席查询分析工具--ORACLE DISCOVERER 48 5.3 ORACLE 企业级的报表工具--ORACLE REPORTS 57 5.4 ORACLE的数据挖掘工具--DATA MINING SUITE 60 5.5 ORACLE应用服务器—INTERNET APPLICATION SERVER 61 六、数据仓库的发展趋势:与电子商务的融合 64

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值