hbase连接测试时的常见错误

环境:CDH 5.8;HBase 1.2.0 ; Eclipse Mars

测试背景:在eclipse打jar包后,上传到集群服务器,以hadoop jar方式执行,报错如下:

1. NoSuchMethodError: org.apache.hadoop.hbase.HTableDescriptor.addFamily

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.hbase.HTableDescriptor.addFamily(Lorg/apache/hadoop/hbase/HColumnDescriptor;)Lorg/apache/hadoop/hbase/HTableDescriptor;
        at demo.myconnection.createTable(myconnection.java:61)
        at demo.myconnection.main(myconnection.java:44)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:136)


2. Caused by: java.io.IOException: com.google.protobuf.ServiceException: java.lang.NoClassDefFoundError: com/yammer/metrics/core/Gauge

Exception in thread "main" org.apache.hadoop.hbase.client.RetriesExhaustedException: Failed after attempts=36, exceptions:
Thu Jan 12 23:13:03 CST 2017, null, java.net.SocketTimeoutException: callTimeout=60000, callDuration=68266: row 'test1,,' on table 'hbase:meta' at region=hbase:meta,,1.1588230740, hostname=slave03,60020,1484120818621, seqNum=0
        at org.apache.hadoop.hbase.client.RpcRetryingCallerWithReadReplicas.throwEnrichedException(RpcRetryingCallerWithReadReplicas.java:276)
        at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas.call(ScannerCallableWithReplicas.java:207)
        at org.apache.hadoop.hbase.client.ScannerCallableWithReplica

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
HBaseApache Spark 结合在一起可以提供强大的大数据处理能力,特别是在存储和分析大规模、非结构化或半结构化数据HBase 是一个分布式列式数据库,设计用于运行在廉价硬件上,适合于海量数据存储;而 Spark 是一个快速的大数据处理引擎,支持批处理、流处理和机器学习。 以下是 HBase 连接 Spark 的一般步骤: 1. **安装配置**: - 安装 HBase 和 Spark 并确保它们能够正常通信。 - 配置 Spark 的 HadoopHBase 驱动程序(如 spark-hadoop或spark-yarn)。 2. **创建 SparkSession**: 在 Spark 中创建一个新的 `SparkSession`,这将用于后续的数据交互。 ```python from pyspark.sql import SparkSession spark = SparkSession.builder \ .appName("HBase-Spark") \ .config("spark.jars", "path_to_spark_hbase_jar") \ .getOrCreate() ``` 这里的 `spark.jars` 需要包含 HBase 驱动的 jar 文件。 3. **读取 HBase 数据**: 使用 `SparkHBaseContext` 类从 HBase 表中加载数据,类似于 SQL 查询。 ```python from pyspark.hbase import SparkHBaseContext hbase_ctx = SparkHBaseContext(sc) data = hbase_ctx.table('your_table_name') ``` 4. **数据分析操作**: 现在你可以对加载的数据执行各种 Spark SQL 查询、转换和聚合操作,例如 groupBy、join、filter 等。 5. **保存结果**: 处理完数据后,可以将结果写回 HBase 或其他目的地,或者导出为文件。 ```python data.write.format('org.apache.spark.hbase') \ .options(table='output_table', rowKey='row_key_column') \ .save() ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值