读书人

Hadoop hive 与OLAP工具调整

发布时间: 2013-10-08 16:38:33 作者: rapoo

Hadoop hive 与OLAP工具整合

这里说的OLAP工具指:sqlserver Analysis,oracle Essbase,IBM cognos等做实时多维分析的工具。

场景一:传统行业,以RDB建数据仓库,ETL,并作为OLAP工具数据源,生成CUBE。

场景二:大数据量行业,在hadoop平台建数据仓库,ETL,分析数据导入RDB,并作为OLAP工具数据源,生成CUBE。

场景三:OLAP工具能否直接读取hadoop平台数据??

本文以Sqlserver analysis为例,阐述场景三的实现。

Sqlserver analysis 通过ODBC 连接hive,生成多维数据集:

1、 下载,安装驱动DataStaxHiveODBC_x64(86)

地址:http://www.datastax.com/2012/12/using-the-datastax-odbc-driver-for-hive

类似的odbc驱动还有mapRodbc,simbaodbc

2、hive客户端机器开启thrift服务:hive servicehiveserver & ,端口默认10000

3、在管理工具-数据源(odbc)中建立hive的odbc连接:

Hadoop hive 与OLAP工具调整

1、 在sqlserverdatabase engine中建立链接服务器:

EXEC master.dbo.sp_addlinkedserver

@server=N'myhive',@srvproduct=N'HIVE',

@provider=N'MSDASQL',@datasrc=N'Hive2',

@provstr=N'Provider=MSDASQL.1;PersistSecurity Info=True;User ID=;

Password=;'

并测试一下:SELECT*FROM OpenQuery(myhive,'select * from mytable limit 10')

原理图:

Hadoop hive 与OLAP工具调整

2、 将openquery 建成视图,可作为BIDS的数据源使用:

Create view myview as SELECT * FROM OpenQuery(myhive,'select * from mytable')

当然,这种方式没有直接读RDB表性能好,但不失为一种尝试。既然SSAS跟hive已经打通了,那么可以认为SSAS也可以直接读HBase表了,因为hive提供了访问hbase表的机制。

Hive是离线表,hbase具备实时性,所以从理论上说,SSAS可以通过ROLAP的方式连接hbase做实时OLAP分析,有兴趣的可以试一下。

稍微扩展一下:

突然想起来EXCEL可以读取ODBC数据源的数据:

Hadoop hive 与OLAP工具调整

这就比较方便了,建个odbc数据源,丢给分析师使用,基本可以摆脱HUE了。。。

读书人网 >其他相关

热点推荐