Hbase
sparkexpert
大数据挖掘技术(人工智能)的爱好者
展开
-
Spark实现HIVE统计结果导入到HBase操作
由于HIVE更新的机制极其不适应SPARK环境,于是利用HBase来执行HIVE中某些统计结果的更新。首先要做的是实现Spark + Hive访问,得到RDD,再将这个RDD导入到HBase中操作。然而网上关于这一块目前资料还真很少。但是其原理总体上来说是非常简单的。步骤主要是两步:(1)开启hive连接器,实现spark + hive的访问,得到dataframe对象。原创 2015-12-31 11:34:54 · 4725 阅读 · 1 评论 -
HBase中正则过滤表达式与JAVA正则表达式不一致问题的分析和解决
HBase提供了丰富的查询过滤功能。比如说它提供了RegexStringComparator这样的函数,可以实现按照正则表达式进行过滤。它可以有效地弥补向前缀查询这样的机制,从而可以使hbase也支持了类似于like查询之类的功能。然而在实践过程中,很多人都会遇到一个问题,对于里面的正则表达式没有过于详细的介绍,一直以为是直接从JAVA等一些标准的正则表达式演化过来。直接拿原创 2016-09-28 22:29:48 · 3874 阅读 · 0 评论 -
HBase暴力删除HDFS数据后建表出现Table already exist问题的解决
在一些情况下,不得不对HBase数据进行暴力删除,这种情况如原始数据量特别大,而又不需要存储的时候。或者HBase无法启动等问题。删除比较简单,直接调用hadoop fs -rm -r /hbase这样的命令即可实现对HDFS上存储的HBASE原始文件进行删除。(当然细划的可以删除掉某个具体的数据表)。但是在删除完毕后,重启HBase后,创建数据表时候,发现出现table原创 2016-10-13 18:16:42 · 4827 阅读 · 1 评论 -
HBase启动过于缓慢的原因及其优化策略
当HBASE导入了几十亿的数据记录时,某一天重启一下HBASE,发现启动过于缓慢,一直在提示PleaseHoldException:Master is initializing, 打开日志实时查看了下,其提示的信息一直是region transition 状态的各种变化。然而最惨的是,运行到最近,直接由于zookeeper超时,导致无法启动。网上关于master is initaliz原创 2016-10-13 18:07:48 · 5326 阅读 · 1 评论 -
spark submit中没有找到hbase中的*/hbase/client/put类的解决办法
在Eclipse或者IDEA中进行spark与hbase联接操作时,都没有错误,然后发现当进行spark-submit提交的时候,却发现找不到hbase库的问题。如截图所示。这个问题的核心肯定是找不到hbase相应的库。打开输出给spark进行调用的JAR包,发现hbase也包含在里面,但是为什么会访问不到这个包呢。终于在网上找了相关的问题,发现这是由于hadoop原创 2016-09-23 23:54:33 · 1813 阅读 · 0 评论 -
spark 从HIVE读数据导入hbase中发生空指针(java.lang.NullPointerException)问题的解决
陆续好多人会问,在写入Hbase的时候总是会出现空指针的问题,而检查程序,看起来一点也没有错。如报的错误大致如下:Error: application failed with exceptionjava.lang.RuntimeException: java.lang.NullPointerException at org.apache.hadoop.hbase.cl原创 2016-09-14 14:34:45 · 8688 阅读 · 1 评论 -
HBase时间老化的测试
最近想着测试一下HBase存储上的时间老化问题。Hbase本身还是提供这种功能的,总体上还是非常不错的。首先建立一个测试表。create 'ttt','f'hbase(main):015:0> disable 'ttt'0 row(s) in 4.5000 seconds然后修改老化时间为30秒。hbase(main):016:0> al原创 2016-09-13 10:10:02 · 1349 阅读 · 0 评论 -
Hbase的后缀过滤查询
HBase原生自带了对RowKey的很多种查询策略。通过这个过滤器可以在HBase中的数据的多个维度(行,列,数据版本)上进行对数据的筛选操作,也就是说过滤器最终能够筛选的数据能够细化到具体的一个存储单元格上(由行键,列明,时间戳定位)。其API中提供的Filter大致如下:CompareFilter是高层的抽象类,下面我们将看到他的实现类和实现类代表的各种过滤条件原创 2016-07-18 15:31:04 · 9030 阅读 · 0 评论 -
Spark Hbase读取操作的一些总结与测试
Spark连接HBase实现查询的操作有好多种步骤,其中常用的是直接调用Hbase本身提供的写入和读出的接口。然而不少人在此基础上进行了各种封装,有的支持spark sql on Hbase,著名如华为开源的astro,但是这个也非常有局限性,其仅支持spark 1.4.0,其中的源码已经远远无法适应1.6.0以上的版本。另一种思路是实现Hbase作为Spark的一种数据源原创 2016-06-28 20:54:57 · 5349 阅读 · 1 评论 -
org/apache/hadoop/hbase/CompatibilityFactory(scan)没有找到类的解决办法
在做spark连接Hbase的时候,总会蹦出一些问题。总结起来就是各种类的找不到。如:org/apache/hadoop/hbase/CompatibilityFactory没有找到类, E xception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/原创 2016-06-28 20:49:53 · 3636 阅读 · 0 评论 -
Spark写入HBase长时间没有反应的问题解决(子节点没有HRegionServer)
在测试spark写入到HBase数据库的时候,碰到了卡壳的情况。查看状态,一直停留在connect阶段,跳不过去。。于是只能一步一步查,终于发现当在Master上启动start-hbase的时候,而子节点利用JPS进程,却没有发现HRegionServer的进程存在。于是就查原因,果然是各个服务器的系统时间不一样,导致的。节点机的时间和master的时间差距大于30000m原创 2016-06-24 08:45:02 · 2077 阅读 · 0 评论 -
HBase启动错误client.ConnectionManager$HConnectionImplementation的解决办法
有时候,HBase因为在写入过程中直接强行中断之后,再次重启过程中,会经常出现一些异常信息。其中标题这个错误也是经常碰到的一个。具体报的错误如下:2016-09-28 14:08:16,448 ERROR [main]client.ConnectionManager$HConnectionImplementation: The node /hbase is not inZo原创 2016-10-05 09:50:16 · 22942 阅读 · 6 评论