Ich möchte HBase über Spark mit JAVA zugreifen. Ich habe dafür neben this keine Beispiele gefunden. In der Antwort geschrieben wird,Lesen von Daten aus HBase mit Spark mit JAVA
Sie auch diese in Java
ich von How to read from hbase using spark kopiert diesen Code schreiben:
import org.apache.hadoop.hbase.client.{HBaseAdmin, Result}
import org.apache.hadoop.hbase.{ HBaseConfiguration, HTableDescriptor }
import org.apache.hadoop.hbase.mapreduce.TableInputFormat
import org.apache.hadoop.hbase.io.ImmutableBytesWritable
import org.apache.spark._
object HBaseRead {
def main(args: Array[String]) {
val sparkConf = new SparkConf().setAppName("HBaseRead").setMaster("local[2]")
val sc = new SparkContext(sparkConf)
val conf = HBaseConfiguration.create()
val tableName = "table1"
System.setProperty("user.name", "hdfs")
System.setProperty("HADOOP_USER_NAME", "hdfs")
conf.set("hbase.master", "localhost:60000")
conf.setInt("timeout", 120000)
conf.set("hbase.zookeeper.quorum", "localhost")
conf.set("zookeeper.znode.parent", "/hbase-unsecure")
conf.set(TableInputFormat.INPUT_TABLE, tableName)
val admin = new HBaseAdmin(conf)
if (!admin.isTableAvailable(tableName)) {
val tableDesc = new HTableDescriptor(tableName)
admin.createTable(tableDesc)
}
val hBaseRDD = sc.newAPIHadoopRDD(conf, classOf[TableInputFormat], classOf[ImmutableBytesWritable], classOf[Result])
println("Number of Records found : " + hBaseRDD.count())
sc.stop()
}
}
Kann mir jemand ein paar Hinweise geben, wie man die richtige finden Abhängigkeiten, Objekte und Sachen?
Es scheint wie HBaseConfiguration
ist in hbase-client
, aber ich steckte tatsächlich auf TableInputFormat.INPUT_TABLE
. Sollte das nicht in der gleichen Abhängigkeit sein?
Gibt es eine bessere Möglichkeit, mit Funken auf HBase zuzugreifen?
Dank für den Beispielcode, ich bin dieses – monti