2019独角兽企业重金招聘Python工程师标准>>>

在使用Hbase shell 进行get 或scan操作时,时不时会看到一些数值被转成了16进制, 就像下面那样

value=W\x5C5\x80

那么这个值具体等于多少? 查阅资料后发现算法如下

W -> W的ASCII码16进制 为 0x57

\x5C -> 就是16进制不变 0x5C

5 -> 5的ASCII码16进制 为 0x35

\x80 -> 就是16进制不变 0x80

所以从左往右重新拼起来就是

0x575C3580 -> 转成十进制为  1465660800

所以照例,如下

value=W]PA

W -> W的ASCII码16进制 为 0x57

] -> ]的ASCII码16进制 为 0x5D

P -> P的ASCII码16进制 为 0x50

A -> A的ASCII码16进制 为 0x41

0x575D5041 -> 转成十进制为  1465733185

以上是查询结果出现十六进制的情况, 那么如果查询的Key本身也被转为16进制怎么办? 因为有时候key中可能有中文字符.

可以照如下操作:

先写个简单测试程序把中文UTF-8转成16进制

System.out.println(org.apache.commons.codec.binary.Hex.encodeHex("中文".getBytes("UTF-8")));
//输出结果:e4b8ade69687System.out.println(new String(org.apache.commons.codec.binary.Hex.decodeHex("e4b8ade69687".toCharArray()),"UTF-8"));
//输出结果:中文

也可以直接使用网站工具

https://sites.google.com/site/nathanlexwww/tools/utf8-convert

转好后把16进制每2位一组前面加上\x

就比如上面的

e4b8ade69687 -> \xe4\xb8\xad\xe6\x96\x87

举个例子:

我要查询的key是

CE20CCE09EEB4F8A6BB50E41953A55FCD|3|钢铁烈阳37|PA-1453442402-6111|PR-1453442402-3599

直接

get 'role_history_info' , 'CE20CCE09EEB4F8A6BB50E41953A55FCD|3|钢铁烈阳37|PA-1453442402-6111|PR-1453442402-3599'

没有结果

把其中的中文字符按照上面的方法转成如下

钢铁烈阳->e992a2e99381e78388e998b3 -> \xe9\x92\xa2\xe9\x93\x81\xe7\x83\x88\xe9\x98\xb3

查询时 包着key的单引号换成双引号

get 'role_history_info' , "CE20CCE09EEB4F8A6BB50E41953A55FCD|3|\xe9\x92\xa2\xe9\x93\x81\xe7\x83\x88\xe9\x98\xb337|PA-1453442402-6111|PR-1453442402-3599"

查出来啦...

转载于:https://my.oschina.net/sniperLi/blog/1616459

HBase shell 中的十六进制数值表示相关推荐

  1. Shell中字符串、数值的比较

    Shell中字符串.数值的比较 二元比较操作符,比较变量或者比较数字 整数比较 -eq 等于,如:if [ "$a" -eq "$b" ] -ne 不等于,如: ...

  2. Hadoop HBase概念学习系列之hbase shell中执行java方法(高手必备)(二十五)

    hbase shell中执行java方法(高手必备),务必掌握! 1. 2. 3. 4. 更多命令,见scan help.在实际工作中,多用这个!!! API参考: http://hbase.apac ...

  3. 在hbase shell中执行list抛出异常:ERROR: No valid credentials provided

    在hbase shell中执行list抛出异常:ERROR: No valid credentials provided 解决方法: 1.查看klist [hdfs@kjss1 ~]$ klist k ...

  4. hbase shell中命令无法删除?

    这种问题发散一下大脑,我们经常使用的键,无效,是不是有用ctrl+这个键的情况. 所以ctrl+删除键... 没错就是这么反人类的操作,不过听好像新版本中解决这个问题了. 你将来写软件,也可以反人类一 ...

  5. 在SecureCRT中,hbase shell不能回退的问题

    解决方法: 在hbase shell中如输入出错,按住Ctrl+删除键(backspace) 即可删除!

  6. HBase Shell实例

    HBase Shell 常用操作 1. 命名空间 2. DDL语句 3. put与get 4. 其他DML语句 5. scan和filter HBase Shell 常用操作 HBase Shell是 ...

  7. HBase Shell 常用操作

    HBase Shell 常用操作 2015年3月10日 by debugo · 19 Comments 本文转自http://debugo.com/hbase-shell-cmds/,感谢作者 HBa ...

  8. hbase shell命令2

    2019独角兽企业重金招聘Python工程师标准>>> 在HBase shell中,可以使用status, version和whoami分别获得当前服务的状态.版本.登录用户和验证方 ...

  9. cdh界面 hue 配置hbase_海量数据存储技术之HBase:使用HBase Shell操纵HBase

    Apache HBase Shell是JRuby的IRB,并在此基础上加入了HBase特有的命令. JRuby是用Java实现的Ruby解释器.通过JRuby,你可以在JVM上直接运行Ruby程序,调 ...

最新文章

  1. 使用java连接JanusGraph进行操作,hbase报错信息为:Caused by: org.apache.hbase.thirdparty.io.netty.channel.AbstractCh
  2. 原 记录一下iOS开发中琐碎的点点_6
  3. 你必须知道如何回答的五大计算机安全问题!
  4. linux裸设备文件系统,Linux当中的文件系统
  5. Yearning v1.4.2 发布,SQL审核平台
  6. npm 安装less插件_IDEA编译less插件LESS CSS Compiler的安装
  7. python中文字符串转list
  8. asp.net中打印指定控件内容
  9. flv 开源 修复_如何修复开源软件中的错误
  10. 如何高效地远程部署?Fabric 来支招!
  11. opencv 光流法
  12. HBuilder开发app,扫描枪中,使用input输入框,然后点击扫描,获取不到条码!
  13. 2018年中国 Micro-LED 行业市场前景研究报告(简版)
  14. 基于数据挖掘的智能停车场运营数据分析系统
  15. matlab受力曲线导入adams中,如何在adams中导入dxf曲线
  16. git克隆指定分支的代码
  17. iFixit拆Galaxy Fold发现异物易入侵机内
  18. Linux 读书笔记 二
  19. 如何下载天桥街道卫星地图高清版大图
  20. java正则表达式 字符串取开头数字 结尾数字 取反

热门文章

  1. ITK:向二进制图像添加噪声
  2. C++将带ui界面的qt工程封装为动态库dll
  3. VTK:Utilities之ArrayRange
  4. Qt创建Android服务
  5. C++fibonacci斐波那契数列,自下而上(附完整源码)
  6. C++STL- 函数对象
  7. C++STL的vector容器
  8. c++享元模式flyweight
  9. 经典C语言程序100例之七
  10. c语言 动态内存相关函数