Storm-Hbase接口怎么用

  介绍

这篇文章主要介绍Storm-Hbase接口怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

 package  storm.contrib.hbase.bolts;
  
  import  static  backtype.storm.utils.Utils.tuple;
  
  import  java.util.Map;
  
  import  org.apache.hadoop.hbase.HBaseConfiguration;
  
  import  backtype.storm.task.OutputCollector;
  import  backtype.storm.task.TopologyContext;
  import  backtype.storm.topology.BasicOutputCollector;
  import  backtype.storm.topology.IBasicBolt;
  import  backtype.storm.topology.OutputFieldsDeclarer;
  import  backtype.storm.tuple.Fields;
  import  backtype.storm.tuple.Tuple;
  
  import  storm.contrib.hbase.utils.HBaseCommunicator;
  import  storm.contrib.hbase.utils.HBaseConnector;/*
  
  ,,一个读取Hbase的螺栓,不断的从Hbase中读取表中的行键,和列,通过元组来发送
  ,* Reads 从而specified  column  of  HBase  table 以及emits 从而row  key 以及,column  values 拷贝,form  of 元组
  ,*/public  class  HBaseColumnValueLookUpBolt  implements  IBasicBolt  {
  
  private  static  final  long  serialVersionUID =, 1 l;
  
  private  String  tableName =, null,, colFamilyName =, null,, colName =, null,, rowKeyField =, null,, columnValue =,空;
  
  private  static  transient  HBaseConnector  connector =,空;
  private  static  transient  HBaseConfiguration  conf =,空;
  private  static  transient  HBaseCommunicator  communicator =,空;
  OutputCollector  _collector;/*
  ,* Constructor  initializes 从而variables  storing 从而hbase  table 方式、以及connects 用hbase
  ,*/public  HBaseColumnValueLookUpBolt (final  String  hbaseXmlLocation, final  String  rowKeyField,, final  String ,, final  String  colFamilyName,, final  String  colName), {
  
  this.tableName =,表名;
  时间=this.colFamilyName  colFamilyName;
  时间=this.colName  colName;
  时间=this.rowKeyField  rowKeyField;
  
  时间=connector  new  HBaseConnector ();
  时间=conf  connector.getHBaseConf (hbaseXmlLocation);
  时间=communicator  new  HBaseCommunicator(设计);
  }/*
  ,* emits 从而value  of 从而column  with  name  @colName 以及rowkey  @rowKey
  ,* @see  backtype.storm.topology.IBasicBolt #执行(backtype.storm.tuple.Tuple, backtype.storm.topology.BasicOutputCollector)
  ,*/public  void 执行(Tuple 输入,,BasicOutputCollector 收集器),{
  
  String  rowKey =, input.getStringByField (this.rowKeyField);
  时间=columnValue  communicator.getColEntry (this.tableName, rowKey,, this.colFamilyName,, this.colName);
  collector.emit(元组(rowKey, columnValue));
  }
  
  public  void 准备(Map  confMap, TopologyContext 上下文,
  OutputCollector 收集器),{
  _collector =,收集器;
  }
  
  public  void 清理(),{
  }
  
  public  void  declareOutputFields (OutputFieldsDeclarer 庄家),{
  declarer.declare (new 字段(“rowKey",,“columnValue"));
  }
  
  public  Map<字符串,Object>, getComponentConfiguration (), {
  字符串,Map, map =,空;
  return 地图;
  }
  
  public  void 准备(Map  stormConf, TopologyContext 上下文),{
  }
  } <>以前package  storm.contrib.hbase.bolts;
  
  import  static  backtype.storm.utils.Utils.tuple;
  
  import  java.util.Map;
  
  import  org.apache.hadoop.hbase.HBaseConfiguration;
  
  import  backtype.storm.task.OutputCollector;
  import  backtype.storm.task.TopologyContext;
  import  backtype.storm.topology.BasicOutputCollector;
  import  backtype.storm.topology.IBasicBolt;
  import  backtype.storm.topology.OutputFieldsDeclarer;
  import  backtype.storm.tuple.Fields;
  import  backtype.storm.tuple.Tuple;
  
  import  storm.contrib.hbase.utils.HBaseCommunicator;
  import  storm.contrib.hbase.utils.HBaseConnector;/*
  ,* Reads 从而specified  column  of  HBase  table 以及emits 从而row  key 以及,column  values 拷贝,form  of 元组
  ,*/public  class  HBaseColumnValueLookUpBolt  implements  IBasicBolt  {
  
  private  static  final  long  serialVersionUID =, 1 l;
  
  private  String  tableName =, null,, colFamilyName =, null,, colName =, null,, rowKeyField =, null,, columnValue =,空;
  
  private  static  transient  HBaseConnector  connector =,空;
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null

Storm-Hbase接口怎么用

Copyright © 2020-2023 feiqueyun.cn. All Rights Reserved. 肥雀云_南京肥雀信息技术有限公司版权所有 南京肥雀信息技术有限公司 苏ICP备16063723号-5