ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 物化视图

物化视图

原创 Linux操作系统 作者:wzq609 时间:2013-06-21 16:37:34 0 删除 编辑
1  BW同步数据到EIP

业务需要EIP上面展现BW的数据,因此就需要从BW上面进行数据的抽取;

前提条件:EIP的应用直接连接BW数据库,根据公司的业务需求使用dblink来连接使用;

针对该需求有三个方案:

a)       通过DataGuard复制一个一模一样的数据库,然后从standby数据库进行数据的抽取;

b)       配置goldengate同步需要的表到EIP数据库;

c)       在EIP数据库通过dblink连接到BW数据库,然后创建物化视图进行定期的同步;

 

1.1  DBlink的配置

在目标端数据库创建相应的DBLINK

脚本:

CREATE DATABASE LINK LINK_NAME(dblink名称)

CONNECT TO "username" identified by "password" (username和password为远程数据库的名称) 

USING '(DESCRIPTION =
    (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = sales.company.com)(PORT = 1521))
    )
    (CONNECT_DATA =
        (SERVICE_NAME = sales)
    )
)';


 

1.2 

 

 

 

 

 

 

同步的方案
   
 

a)       在BW里面按照类别创建相应的schema,然后根据要求在这些schema下面创建相应的视图;

b)       根据相应的业务需求和用户在EIP数据库创建相应的dblink;

c)       在EIP数据库通过dblink连接到BW数据库,并创建相应的MW(物化视图);

d)      设置物化视图的同步策略;

 

1.3  流程管理

需要在流程里面创建相应的用户和角色管理流程,用于开发提交流程进行权限的授权;

a)审批流程: 

b)流程表单: 

1.4  客户端通过dblink连接到源端

a)       连接的语法;

例:select * from ogg.a1@yuan;

用户登录到target数据库,然后通过dblink为yuan的链接,连接到数据库source;

b)  连接的用户要求;

目标端使用dblink的用户需要有使用dblink的权限,如果该dblink是Private的话,只有创建他的用户才能使用,如果是public的话,所有的用户都能使用;

c)  通过dblink连接时,可以对源数据进行删除,其他修改可以通过存储过程来解决;

d)  ALTER SESSION CLOSE database link yuan;关闭dblink连接

 

1.5  物化视图同步的策略

1、刷新的物化视图的策略:

a)  用FORCE方式:Oracle会自动判断是否满足快速刷新的条件,如果满足则进行快速刷新,否则进行完全刷新;

b)  Complete方式:全部刷新,相当于重新执行一次创建视图的查询语句。

c)  Fast方式:增量刷新,假设前一次刷新的时间为t1,那么使用fast模式刷新物化视图时,只向视图中添加t1到当前时间段内,主表变化过的数据.为了记录这种变化,建立增量刷新物化视图还需要一个物化视图日志表;

d)  Never方式:从不刷新,如果刷新后会报错;

2、刷新物化视图的时间策略:

a)  on demand:在用户需要刷新的时候刷新,这里就要求用户自己动手去刷新数据了(也可以使用job定时刷新)

b)  on commit:当主表中有数据提交的时候,立即刷新MV中的数据;

c)  start ……:从指定的时间开始,每隔一段时间(由next指定)就刷新一次;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12679300/viewspace-764541/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2013-06-16

  • 博文量
    173
  • 访问量
    3083836