最近在用Spark同步数据的时候想到,是否可以直接从已有的OBIEE读取数据,OBIEE上面有完整的语义层,读取数据就比较方便了.
想到以前Rittmanmead有篇blog提到,如何使用jdbc驱动清除缓存的功能( https://www.rittmanmead.com/blog/2015/09/managing-the-obiee-bi-server-cache-from-odi-12c/ ),里面提到参考这个 https://blogs.oracle.com/dataintegration/entry/connecting_to_oracle_bi_server
我先测试了 10.1.3.4.1的版本,
jdbc位置在$obieefolder/OracleBI/jdbc/bijdbc.jar
可以使用以下命令测试
java -classpath $obieefolder/OracleBI/jdbc/bijdbc.jar oracle.bi.jdbctestclient.JDBCCmd -u "jdbc:oraclebi://hostip:9703/catalog=edw_kpi;USER=administrator;PASSWORD=password;" -s $HOME/test/obieejdbcsrc/ -o $HOME/test/obieejdbcout
注意-s $HOME/test/obieejdbcsrc/是目录,目录下是需要执行的 sql 脚本,可以多个,对应输出到-o 的目录里面
这个要吐槽一下11g的jdbc,里面README文件都没有了,开始url我始终写不对,看了10的版本中的README才搞定。
然后在spark也测试了一下,类似如下写法就可以了(我在Zepplin运行)
%spark.pyspark execsql = 'SELECT "table1"."column1" saw_0, "table2"."column1" saw_1 FROM KPI \ WHERE "table1"."column1" >= \'2017\' ORDER BY saw_0' jdbcDF_onvctrl = spark.read \ .format("jdbc") \ .option("driver", "oracle.bi.jdbc.AnaJdbcDriver")\ .option("url", "jdbc:oraclebi://hostip:9703/catalog=kpi;USER=administrator;PASSWORD=password;") \ .option("dbtable","(" + execsql + ") AS TEMP") \ .load() jdbcDF_onvctrl.write.saveAsTable("testdb.seng_day")
也可以在Zepplin中配置jdbc连接用于观察数据,增加obiee10g for jdbc配置如下属性
default.driver oracle.bi.jdbc.AnaJdbcDriver default.password *** default.url jdbc:oraclebi://ip:9703/catalog=kpi; default.user administrator Dependencies
注意artifact exclude下配置jar包
/pythontest/jars/bijdbc.jar
如果在已有的note要使用, 需要Interpreter binding下。
本文由seng 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Nature of Code
Daniel Shiffman / The Nature of Code / 2012-12-13 / GBP 19.95
How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital w......一起来看看 《The Nature of Code》 这本书的介绍吧!