GitHub项目Storm-HBase介绍
Storm-HBase,该项目是Twitter Storm和Apache HBase的结合,它使用HBase cluster作为Storm的Spout数据源,目前只是初步实现,后续会进一步完善。
HBaseSpout根据时间戳范围[start_timestamp, stop_timestamp],持续不间断地从HBase cluster读取流数据:
以上有关[start_timestamp, stop_timestamp]的设计,是为了适应不同的运行模式:
最典型情况下,start_timestamp = 0 and stop_timestamp = 0,则从3分钟前开始读取发送数据,然后会同步扫描HBase cluster中的新数据,并发送给Storm cluster,适合用户实时计算的情景。出现问题的情况下,例如Storm cluster重启,计算任务状态被丢失,此时可能需要能够Spout进行数据的回传(data rewind),通过指定[start_timestamp, stop_timestamp]可以满足这一需求。Storm-HBase力求尽可能做到通用化,因此提取了Storm和HBase的配置信息。有关Storm-HBase的配置选项,可以在 GitHub工程的src/main/resources/storm.properties以及src/main/resources /hbase.properties文件中找到。如果你的HBase表的Schema结构与上述类似,那么只需要进行简单的配置即可使用Storm- HBase。
目前的HBaseSpout实现基于以下假设:
更多关于Storm-HBase的介绍及进展,请参加项目的GitHub链接:https://github.com/ypf412/storm-hbase