HBase-初看HBase
0.95版本
hbase 单机模式下所有的服务都运行在一个JVM上,包括HBase和zookeeper。使用的是本地文件系统
日志默认放在目录下logs文件夹中
基本命令:
create 'table','cf' //创建一个table名字的表,cloumn family为cf
put 'table','row1','cf:a','value1' //插入table表中一条数据,row1为key值,a为列名,value1为值
list ‘table’ //列出所有的表。table不是表名
scan ‘table’ //查看表中所有数据
get ‘table’,‘row1’ //取数据
disable ‘table’ //?
drop ‘table’;//删除表
hbase 分默认配置文件和用户自定义配置文件
hbase要求本地换回地址必须是127.0.0.1,不能是127.0.1.1等。Ubuntu默认是127.0.1.1
常用的Linux最大文件句柄不能满足hbase的要求,默认1024,设置到10K
sync 持久化同步
hbase的hadoop.jar必须和hadoop的hadoop.jar保持一致
hadoop hdfs有一个同时处理文件数的上限,这个上限至少要为4096,dfs.datanode.max.xcievers
hbase 分单机、伪分布式、完全分布式。和hadoop相同
hbase的数据目录hbase.rootdir要让它自己创建,不要自己创建
使用完全分布式模式,要把hbase.cluster.distributed 设置为true
hbase的conf/regionservers相当于hadoop的conf/slaves或者etc/slaves
一个分布式的hbase依赖一个zookeeper集群
hbase默认master端口 60000
hbase判断宕机默认为失联3分钟
hbase的表是按key排序的
使用HBase的时候要让HBase的版本和hadoop的对应才行,不然会出很多问题。方法有两种,一种是用hadoop的jar包替换HBase里面的hadoop jar包,强迫它们对应起来;另一种就是找到原配,根据hadoop的版本去选择HBase的版本;
我更倾向于第二种。查看方法是看HBase 的lib中hadoop相关的jar包的版本。

在稳定版本中它们大概的对应关系为:




可以看到,在一些过渡版本比如0.96.2、0.98.7有hadoop1.x和2.x的不同版本。
至于HBase与hadoop其他组件之间的关系,我读到一个帖子,感觉非常受用(虽然它的题目是HBase简介,但是我觉得它的题目更适合叫HBase与其他hadoop子项目之间的关系)
引用自:http://www.aboutyun.com/thread-6138-1-1.html

其中HBase位于结构化存储层,Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和failover机制。
此外,Pig和Hive还为HBase提供了高层语言支持,使得在HBase上进行数据统计处理变的非常简单。 Sqoop则为HBase提供了方便的RDBMS数据导入功能,使得传统数据库数据向HBase中迁移变的非常方便。
(才知道RDBMS是这么个东西)
HBase通过row和column确定一份数据,这份数据的值可能有多个版本,为什么会存在多个版本?
查询的时候会显示那个版本?
保证数据不被修改,查询时总是显示最新版本
存储类型
TableName 是字符串
RowKey 和 ColumnName 是二进制值(Java 类型 byte[])
Timestamp 是一个 64 位整数(Java 类型 long)
value 是一个字节数组(Java类型 byte[])。
可以简单的将HTable的存储结构理解为
Hbase的优点
1 列的可以动态增加,并且列为空就不存储数据,节省存储空间.
2 Hbase自动切分数据,使得数据存储自动具有水平scalability.
3 Hbase可以提供高并发读写操作的支持
Hbase的缺点:
1 不能支持条件查询,只支持按照Row key来查询.
2 暂时不能支持Master server的故障切换,当Master宕机后,整个存储系统就会挂掉.
HBase和传统型数据库的区别(http://www.aboutyun.com/thread-7804-1-1.html)
HBase-初看HBase的更多相关文章
- Hbase初体验
搭建local模式搭建, 官网:http://hbase.apache.org API:http://hbase.apache.org/apidocs/index.html download:http ...
- 【转帖】HBase之五:hbase的region分区
HBase之五:hbase的region分区 https://www.cnblogs.com/duanxz/p/3154487.html 一.Region 概念 Region是表获取和分布的基本元素, ...
- HBase学习笔记-HBase性能研究(1)
使用Java API与HBase集群交互时,需要构建HTable对象,使用该对象提供的方法来进行插入/删除/查询等操作.要创建HTable对象,首先要创建一个带有HBase集群信息的配置对象Confi ...
- HBase案例:HBase 在人工智能场景的使用
近几年来,人工智能逐渐火热起来,特别是和大数据一起结合使用.人工智能的主要场景又包括图像能力.语音能力.自然语言处理能力和用户画像能力等等.这些场景我们都需要处理海量的数据,处理完的数据一般都需要存储 ...
- HBase 实战(1)--HBase的数据导入方式
前言: 作为Hadoop生态系统中重要的一员, HBase作为分布式列式存储, 在线实时处理的特性, 备受瞩目, 将来能在很多应用场景, 取代传统关系型数据库的江湖地位. 本篇博文重点讲解HBase的 ...
- 4 hbase表结构 + hbase集群架构及表存储机制
本博文的主要内容有 .hbase读取数据过程 .HBase表结构 .附带PPT http://hbase.apache.org/ 读写的时候,就需要用hbase了,换句话说,就是读写的时候. ...
- HBase 2、HBase安装与初试牛刀
官方帮助文档:http://hbase.apache.org/book.html PDF:http://hbase.apache.org/apache_hbase_reference_guide.p ...
- [翻译] 初看 ASP.NET Core 3.0 即将到来的变化
[翻译] 初看 ASP.NET Core 3.0 即将到来的变化 原文: A first look at changes coming in ASP.NET Core 3.0 在我们努力完成下一个 m ...
- Hbase框架原理及相关的知识点理解、Hbase访问MapReduce、Hbase访问Java API、Hbase shell及Hbase性能优化总结
转自:http://blog.csdn.net/zhongwen7710/article/details/39577431 本blog的内容包含: 第一部分:Hbase框架原理理解 第二部分:Hbas ...
随机推荐
- JS数组(Array)操作汇总
1.去掉重复的数组元素.2.获取一个数组中的重复项.3.求一个字符串的字节长度,一个英文字符占用一个字节,一个中文字符占用两个字节.4.判断一个字符串中出现次数最多的字符,统计这个次数.5.数组排序. ...
- web前端开发分享-css,js入门篇(转)
转自:http://www.cnblogs.com/jikey/p/3600308.html 关注前端这么多年,没有大的成就,就入门期间积累了不少技巧与心得,跟大家分享一下,不一定都适合每个人,毕竟人 ...
- 二分+最短路 uvalive 3270 Simplified GSM Network(推荐)
// 二分+最短路 uvalive 3270 Simplified GSM Network(推荐) // 题意:已知B(1≤B≤50)个信号站和C(1≤C≤50)座城市的坐标,坐标的绝对值不大于100 ...
- .net组件技术
.NET是什么? •.NET是一个平台,而不是一种语言. •.NET是Microsoft的用以创建XML Web服务(下一代软件)平台,该平台将信息.设备和人以一种统一的.个性化的方式联系起来. ...
- javap 可以打印出用于jni调用的java函数的签名信息
javap可以打印出java的字节码: -c Prints out disassembled code, i.e., the instructions that comprise the Ja ...
- 执行原始的 SQL 查询
The Entity Framework Code First API includes methods that enable you to pass SQL commands directly t ...
- Android实例-屏幕操持常亮(XE8+小米2)
相关资料: http://www.bubuko.com/infodetail-163304.html 结果: 1.打开权限Wake lock为True. 第三方单元: unit Android.JNI ...
- Spring + JdbcTemplate + JdbcDaoSupport examples
In Spring JDBC development, you can use JdbcTemplate and JdbcDaoSupport classes to simplify the over ...
- Spring EL Lists, Maps example
In this article, we show you how to use Spring EL to get value from Map and List. Actually, the way ...
- 创建类模式(一):工厂方法(Factory Method)
定义 此模式的核心精神是封装类中不变的部分,提取其中个性化善变的部分为独立类,通过依赖注入以达到解耦.复用和方便后期维护拓展的目的. 定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中.核心 ...