hbase的sql工具phoenix整合到pentaho中

原创文章,转载请注明出处:http://qq85609655.iteye.com/blog/2260728

       海量数据处理过程中,数据统计使用hive是完全OK的,但如果遇到数据需要及时的响应,hive长达数十秒到几分钟不等的速度一定会让使用者抓狂,如果这样的响应速度交付给客户,其结果大家都懂的。

那么如何解决大数据的响应问题。我以前的在项目中的做法是,将hive的结果同步到mysql中,这确实是一个好办法,但是,这只适用于一些互联网公司,其业务相对简单。如果大数据需要解决的是企业级业务,这个时候,再用同步到mysql就会遭遇很多问题,尤其数据同步,数据校验,数据依赖,两个数据库数据的一致性在业务复杂度上升的情况下,其实现会带来诸多挑战。

如何解决以上问题呢,hive可以处理海量数据,速度慢,HBase基于内存,可以快速响应,统计处理少量数据。

查询访问HBase的phoenix引擎,海量数据处理,使用hive统计。这样就可以扬长避短。

上面是遇到问题后,给出的解决方案。下面主要计入下phoenix与pentaho的整合。

如果有同学们用过pentaho,同时也需要phoenix,那么整合是必然的一个步骤,由于开源的特性,java依赖包和类非常判断,冲突在所难免,这里记录下整合过程中遇到的问题,已经解决的方法。

phoenix与kettle的整合,直接将phoenix的驱动放入到kettle的lib文件夹下,不过会存在google的包冲突,这个时候需要将冲突的包guava-17.0.jar移除

phoenix与pentaho bi server 的整合(整合过程中,必须替换原有的演示hsql数据库,建议替换为mysql,因为phoenix自带了较多的类库,与其有冲突),将phoenix的驱动放入到tomcat的lib文件夹下,但是这个phoenix的驱动带了servlet的类库,需要删除,否则会出现servlet的类冲突,org.apache.jasper的包类也移除。

猜你喜欢

转载自qq85609655.iteye.com/blog/2260728