本文介绍Spark如何访问云HBase。

Spark SQL访问云HBase

访问命令示例如下。
spark-sql --jars alihbase-connector-2.1.0.jar,alihbase-client-2.1.0.jar,hbase-spark-1.0.1-SNAPSHOT.jar,/hbase_home/hbase-shaded-client-2.1.0.jar,/hbase_home/hbase-shaded-mapreduce-2.1.0.jar
说明
  • alihbase-connector-2.1.0.jar,alihbase-client-2.1.0.jar中包含了版本信息,您可以替换为其他版本。
  • hbase-spark-1.0.1-SNAPSHOT.jar中包含了org.apache.hadoop.hbase.spark的Spark DataSource,您可以参考HBase Connector编译适配自己集群的Spark DataSource版本。
  • /hbase_home/hbase-shaded-client-2.1.0.jar,/hbase_home/hbase-shaded-mapreduce-2.1.0.jar是原生HBase安装目录的文件。
建表和读取数据示例如下。
CREATE TABLE test_hbase
USING org.apache.hadoop.hbase.spark
OPTIONS (
  'catalog'=
        '{
            "table": {
                "namespace": "default",
                "name": "test1"
            },
            "rowkey": "rowkey",
            "columns": {
                "rowkey": {
                    "cf": "rowkey",
                    "col": "rowkey",
                    "type": "string"
                },
                "name": {
                    "cf": "f1",
                    "col": "name",
                    "type": "string"
                }
            }
        }'
,'hbase.spark.use.hbasecontext'='false');

select * from test_hbase;
                

Spark访问Lindorm与访问云HBase方法一致,请自行替换。

相关文档