Verbindung I den Code unten bin mit zu schreiben, um HbaseSaveAsHadoopDataset schließt nie Zookeeper
jsonDStream.foreachRDD(new Function<JavaRDD<String>, Void>() {
@Override
public Void call(JavaRDD<String> rdd) throws Exception {
DataFrame jsonFrame = sqlContext.jsonRDD(rdd);
DataFrame selecteFieldFrame = jsonFrame.select("id_str","created_at","text");
Configuration config = HBaseConfiguration.create();
config.set("hbase.zookeeper.quorum", "d-9543");
config.set("zookeeper.znode.parent","/hbase-unsecure");
config.set("hbase.zookeeper.property.clientPort", "2181");
final JobConf jobConfig=new JobConf(config,SveAsHadoopDataSetExample.class);
jobConfig.setOutputFormat(TableOutputFormat.class);
jobConfig.set(TableOutputFormat.OUTPUT_TABLE,"tableName");
selecteFieldFrame.javaRDD().mapToPair(new PairFunction<Row, ImmutableBytesWritable, Put>() {
@Override
public Tuple2<ImmutableBytesWritable, Put> call(Row row) throws Exception {
// TODO Auto-generated method stub
return convertToPut(row);
}
}).saveAsHadoopDataset(jobConfig);
return null;
}
});
Aber wenn ich zkDump in zookeeper sehen hält die Verbindungen auf die Erhöhung
jede Anregung/Zeiger wird von a tolle Hilfe!
Während dies kann theoretisch die Frage beantworten, [es wäre vorzuziehen] (// meta.stackoverflow.com/q/8259) hier, die die wesentlichen Teile der Antwort auf umfassen und Stellen Sie den Link als Referenz zur Verfügung. –
ja, danke für den Vorschlag – leocook
Danke Mann! Dennoch haben die meisten Handbücher die alte Art, die den Bug hat. Ich hatte erwartet, dass ich stg. job.schließen(). Mein Problem war genau dasselbe. – zorkaya