HBase之旅

突然觉得应该把我在HBase上遇到的坑都写下来,等到最后,回首看看,我是怎么艰难的完成这个工作的。之前的就不记了,从今天开始吧。

2018.3.30  半夜 1:40

为了导数据进HBase,按照书上说的,把CSV文件,上传HDFS,然后写mapreduce程序。由于把字段列表写错了,一直导入不成功。关键是,程序正常运行,不报错。改这个问题卡了我好久,3月初我就卡住了,29号早上开始又解决这个问题,弄了一天没解决,心态炸裂。总结一下,第一,程序不报错,不知道问题在哪,第二不会输出信息,没办法调式。百度了好久,还是不知道怎么输出,后来自己瞎点,找到了,写下来记录一下。

1、从jobhistory页面(http://master:19888),进行自己的job详情页


2、在详情页有两个地方有log,进矩形框的那个,那个log文件里有自己在mapreduce代码里输出的信息。圆圈的那个log暂时还不知道里面是什么信息,我一直在这个文件里想找到自己输出的信息(傻得可以),结果是当然找不到。这个卡了我一天,整整一天啊。


3、进入Maps的详情页面后,就可以看到相应的log了


4、在log页面可以看到三种信息:stderr,stdout,log。使用log4j的输出都在log里,System.out.println()的都在stdout里。



2018.4.4  早晨 9:17

之前以为解决的问题,原来还是没有解决,一切都是错觉。

在Coprocessor的prescannernect中根据index已经查询到结果集了,以为用个e.bypass就可以中止操作,返回结果。真是太天真,虽然结果是返回了,但是scan操作还在执行,大大浪费了查询时间,导致查询效率有时候还不如全表扫描来得快。在这个问题上已经卡了两天了,昨天晚上在stackoverflow上提出了这个问题,希望能有人帮我解答一下吧。。。但是到现在都没有人回答我,高度怀疑是不是我写的英语别人看不懂- -|||

猜你喜欢

转载自blog.csdn.net/tft3640/article/details/79751532