第一步:
//new thread 消费datahub数据
SendData.toHbase();
第二步:
public class SendData{
public static void toHbase() {
String accessId = DatahubConfig.accessId;
String accessKey = DatahubConfig.accessKey;
String endpoint = DatahubConfig.endpoint;
String project = DatahubConfig.project;
String gpsTopic = DatahubConfig.gpstopic;// topic
String gpsToHbaseSubId = DatahubConfig.gpshbasesubid; // 获取Hbase的subid
String shardId = DatahubConfig.gpstopicsubShard; //topic 的shardId
AliyunAccount account = new AliyunAccount(accessId, accessKey);//新建阿里云用户
DatahubConfiguration conf = new DatahubConfiguration(account, endpoint); // datahub 的配置信息
DatahubClient client = new DatahubClient(conf);// datahub 客户端
String threadName = "xxxxx";//消费线程名
HbaseThread run = new HbaseThread(client,shardId,project,gpsTopic,gpsToHbaseSubId);// HbaseThread implements Runnable接口
HbaseListener listen = new HbaseListener(client,shardId,project,OriGpsTopic,gpsToHbaseSubId,threadName);
run.addObserver(listen); //添加监听
Thread thread = new Thread(run);
thread.setName(threadName);
thread.start();
}
}
第三步: HbaseThread线程
public class HbaseThread extends Observable implements Runnable {
private DatahubClient client;
private