Ich versuche, Daten von HBase zu bekommen, Für alle Tuto finde ich, dass die Daten von Hbase ich durch Kafka gehen muss, ist es möglich, eine Integration zwischen Spark-Streaming und HBase direkt ohne Einbeziehung Kafka in der Kette Danke.Spark Streaming mit Hbase
4
A
Antwort
3
ist es möglich, eine Integration zwischen Funken Streaming und hbase direkt ohne Kafka einschließlich
Ja .. its möglich, da wir die gleiche kafka ohne getan haben. siehe Beispiel unten JavaHBaseStreamingBulkPutExample
package org.apache.hadoop.hbase.spark.example.hbasecontext;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.spark.JavaHBaseContext;
import org.apache.hadoop.hbase.util.Bytes;
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.api.java.function.Function;
import org.apache.spark.streaming.Duration;
import org.apache.spark.streaming.api.java.JavaReceiverInputDStream;
import org.apache.spark.streaming.api.java.JavaStreamingContext;
/**
* This is a simple example of BulkPut with Spark Streaming
*/
final public class JavaHBaseStreamingBulkPutExample {
private JavaHBaseStreamingBulkPutExample() {}
public static void main(String[] args) {
if (args.length < 4) {
System.out.println("JavaHBaseBulkPutExample " +
"{host} {port} {tableName}");
return;
}
String host = args[0];
String port = args[1];
String tableName = args[2];
SparkConf sparkConf =
new SparkConf().setAppName("JavaHBaseStreamingBulkPutExample " +
tableName + ":" + port + ":" + tableName);
JavaSparkContext jsc = new JavaSparkContext(sparkConf);
try {
JavaStreamingContext jssc =
new JavaStreamingContext(jsc, new Duration(1000));
JavaReceiverInputDStream<String> javaDstream =
jssc.socketTextStream(host, Integer.parseInt(port));
Configuration conf = HBaseConfiguration.create();
JavaHBaseContext hbaseContext = new JavaHBaseContext(jsc, conf);
hbaseContext.streamBulkPut(javaDstream,
TableName.valueOf(tableName),
new PutFunction());
} finally {
jsc.stop();
}
}
public static class PutFunction implements Function<String, Put> {
private static final long serialVersionUID = 1L;
public Put call(String v) throws Exception {
String[] part = v.split(",");
Put put = new Put(Bytes.toBytes(part[0]));
put.addColumn(Bytes.toBytes(part[1]),
Bytes.toBytes(part[2]),
Bytes.toBytes(part[3]));
return put;
}
}
}
+0
Danke Ram es funktioniert für mich das ist alles was ich brauche :) :) –
Verwandte Themen
- 1. Verknüpfung von Spark-Streaming zu HBase
- 2. Hbase Upsert mit Spark
- 3. Zählen mit Spark Streaming
- 4. Spark Streaming - Filter dynamisch
- 5. Funken Streaming-Hbase-Fehler
- 6. Spark-Streaming mit einer dynamischen Lookup-Tabelle
- 7. Spark Hbase Verbindung Problem
- 8. Spark- und HBase-Snapshots
- 9. SPARK zu HBase
- 10. Spark-Streaming-Streaming aktiv Zählung
- 11. Hadoop mapreduce streaming von HBase
- 12. Spark strukturierte Streaming mit Python
- 13. Spark-Streaming-Kontext mit RDD
- 14. Java Spark Streaming mit Cassandra
- 15. Spark-Streaming mit MongoDB Backend
- 16. FIFO-Verarbeitung mit Spark Streaming?
- 17. Deadlock beim Verbinden mit Hbase in Spark
- 18. Hbase 0.96 mit Spark v 1.0+
- 19. Spark Streaming benutzerdefinierte Metriken
- 20. Kafka Spark-Streaming-Integration
- 21. Lesen von Daten aus HBase durch Funken Streaming
- 22. Persisting Spark-Streaming Ausgabe
- 23. Spark-Streaming UpdateStateByKey
- 24. Spark Streaming Model Overwrite
- 25. Wohin fließt Spark Streaming?
- 26. Spark Streaming XML-Dateien
- 27. Pause Spark Streaming Job
- 28. Batchgröße in Spark Streaming
- 29. Spark-Streaming-Schema
- 30. Streaming Kmeans Spark JAVA
ja seine möglich, da wir das gleiche getan haben, ohne kafka zu verwenden. siehe unten Beispiel –