我有一個Spark工作(用Scala編寫)從另一臺服務器上的HBase表中檢索數據。爲了做到這一點,我首先創建這樣的HBaseContext
: val hBaseContext:HBaseContext = new HBaseContext(sparkContext, HBaseConfiguration.create())
指定hbase-site.xml來spark-submit
當我運行spark工作時,我使用spark-submit並指定了所需的參數。事情是這樣的:
spark-submit --master=local[*] --executor-memory 4g --executor-cores 2 --num-executors 2 --jars $(for x in `ls -1 ~/spark_libs/*.jar`; do readlink -f $x; done | paste -s | sed -e 's/\t/,/g') --class com.sparksJob.MyMainClass myJarFile.jar "[email protected]"
的事情是,這個連接到動物園管理員在本地主機上,但是我想它連接到另一臺服務器上的動物園管理員(就是HBase的是)。
硬編碼信息的工作原理:
val configuration: Configuration = new Configuration()
configuration.set("hbase.zookeeper.quorum", "10.190.144.8")
configuration.set("hbase.zookeeper.property.clientPort", "2181")
val hBaseContext:HBaseContext = new HBaseContext(sparkContext, HBaseConfiguration.create(configuration))
不過,但我想它配置。
如何指定spark-將路徑提交到要使用的hbase-site.xml文件?
你可以通過scala應用參數傳遞zookeeper仲裁和端口嗎? – maxteneff
從哪個JAR文件中獲得了HBaseContext,除了Ted Malaska git repo ..我找不到這個類..你能分享你的SBT或POM文件嗎?https:// github .com/tmalaska/SparkOnHBase – Manjesh