> 文章列表 > HANA SDA-远程数据源访问

HANA SDA-远程数据源访问

HANA SDA-远程数据源访问

我们需要把其他系统的数据拿过来,到BW里和财务的数据集成。
HANA SDA就是不复制数据,建立虚拟表(virtual table)来映射到远程数据源。通过这个虚拟表访问其他系统的数据。
对虚拟表的操作现在也可以查询,更新,删除,插入了。
当然除了建虚拟表,建个本地表在HANA上也是可以的。

我们这个外部系统数据在Oracle 12c上,(在MSSQL Server上也没问题)。

实施步骤就是:

1. 创建远程数据库:

因为用的是ODBC协议,所以首先得在HANA server上安装ODBC驱动。HANA Server肯定是装在Linux系统上的。要先下载一个unixODBC的软件包unixODBC-x.x.x.tar.gz http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html ,这个是交给basis去做。
然后以根用户登录HANA Server, 解压软件包,执行命令:
./configure

make

make install

装好后,检查一下是不是成功了:isql –version
然后配置ODBC数据源,HANAadmin登录HANA Server,然后到Home 目录去,创建ODBC配置文件“.odbc.ini”
[ORCL_DSN]

Driver=/path/to/driver/ libsqora.so.xx.x

ServerName=ORCL
这些信息从配置文件tnsnames.ora来的。
ORCL=

(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <host_ip>)(PORT = 1521))
(CONNECT_DATA =
(SERVICE = DEDICATED)
(SERVICE_NAME =orcl)

)

)
最后配置环境变量。测试连接。然后就可以创建了。
HANA SDA-远程数据源访问

填好信息生成。当然得有系统授权:Create remote source和远程源的SQL对象授权:Create virtual table/ drop
HANA SDA-远程数据源访问

这些都是Basis来做,有些设置也要basis来搞。

2. 创建好数据源后,还要映射虚拟表

我试了下我是没有权限的,但是操作其实很简单。
就直接在表上右键加一个add as virtual table,然后选择schema。
如果看不到表,那可能需要Oracle的管理员帮忙重新grant一下 select的权限给连接的用户。

HANA SDA-远程数据源访问
加好了虚拟表,就可以用select来查看数据了。虽然说可以看数据了,但是这个虚拟表是个view来的。如果我想要把历史数据拿到BW里面,以后做报表用,那咋办呢?
HANA SDA-远程数据源访问

3. 在BW中创建Open ODS View

在BW里面就通过创建一个Open ODS View来连接这个远程表了。选择Database table or view.
HANA SDA-远程数据源访问
建好这个ODS View也就是我们从BW有了一个虚拟连接到Oracle上。
接下来就很简单了,建一个ADSO,然后把数据流从Open ODS View拉到ADSO里。可以加一个日期字段在ADSO里。加载激活之后就有数据了。