04年以前的一段时间, 我接触数据仓库系统比较多, 在空余的时间中, 用Java写了一个简单的, 功能很弱的ROLAP示例程序, 现在想想还是比较有意思的, 因为越来越写不动程序了, 所以只好回忆一下以前的程序了. 这个程序是用Oracle 9i中SH用户下的表来做演示的, 如果你的Oracle中装了这些演示用户, 你可以试试.
首先下载My OLAP Viewer, 并解压到安装目录就可以了.
其次请在sh用户下运行script目录下的两个SQL角本, OLAP.SQL用于创建这个程序用的一些表, 这些表用于记录OLAP中的立方体(Cube)的结构信息; CUBESALES.SQL通过在刚创建的表中插入一些记录, 来创建一个立方体.
第三请运行myolap.exe, 在弹出的连接框中输入以下信息, 然后点击确定:
Database Type: oracle
Database Info: <host>:1521:<oracle_sid>
User ID : sh
User Password: *****
第四步请在左边选中Cubes下面的"销售分析"这个结点, 然后在Operation菜单中点击"Open Cube"菜单, 就可以查看这个立方体了. 在我的本本上只装了XE, 所以没有办法贴图上来, 等假日后我找个库玩玩.
通过数据库中的表来进行立方体的查询, 这样的立方体叫做关系OLAP(ROLAP), 在Oracle中可以通过实体化视图(Materialized View)和维(Dimemsion)来优化较大数据量下查询的速度.
Oracle的Discovery也是一个ROLAP的查看工具, 当然它的功能强多了, 不过原理相同. 我的这个工具也支持其他的数据库.
留言 (10)
放假都闲不住!
Posted by boypoo | Oct 3, 2006 5:44 PM
你的程序按照你说的运行后,报错“unable to locate suitable Java RunTime Environment on this machine ”
这是怎么回事啊?
Posted by 黄莹 | Oct 9, 2006 11:31 AM
请装一个Java的运行环境, 下载JRE的页面
Posted by anysql | Oct 9, 2006 11:36 AM
感谢DBCA的奉献!
请问,在运行界面的下面出现:
Message:Connection cancelled!
这是什么原因呢?
Posted by cnpc_gaobo | Oct 9, 2006 11:51 AM
那表示没有连上数据库吧? 在Database Info这里你是如何填的?
Posted by anysql | Oct 9, 2006 12:04 PM
按文中说明填好后,连接确实出现Message:Connection cancelled!
而且,故意输错密码能返回正确的错误信息Ora-01017
Posted by NinGoo | Oct 20, 2006 5:48 PM
<host>:1521:<oracle_sid>
比如:
localhost:1521:prod
不会有人将尖括号也填进去了吧?
Posted by anysql | Oct 20, 2006 9:42 PM
当然不会。不然输入错误的秘密也不会返回正确的错误信息啊
Posted by NinGoo | Oct 22, 2006 12:03 AM
提示message:ora-28000:the account is loked,sh没有锁定呀,请版主帮忙!
Posted by mo | Jan 21, 2007 3:26 PM
楼上的错误号很明显啊!
Posted by anysql | Jan 21, 2007 5:24 PM