HBase学习

作者: 小志码字 | 来源:发表于2017-07-12 21:32 被阅读68次

                                                           HBase学习(一)

前言:

     毕业这几年 一直从事java 工作,接触的数据存储 SQL产品类似于Oracle,Mysql,Oracle是付费级的产品 既而接触的就少了  大部分工作时间都是和MySql和打交道,存储数据和良好的设计表 优化慢sql 不能说很足的经验,基本的问题都是ok的吧,接触的NoSql产品 Redis,为了给数据库做保护,业务数据大部分都缓存在了redis中,但是随着公司sdk的业务越来越庞大,传统的关系型数据库已经满足不了sdk存储数据需求,此时就需要找替代的存储方案,由于公司sdk级别的数据,每天达到了几个G,此时CTO 开始着手搭建公司级别的大数据平台 。技术选型也就选择了开源社区比较成熟的大数据技术,Hadoop Hbase,Hive,从0到1是一个缓慢的过程。我们也就慢慢开始搭建自己公司级别的数据平台,这个过程虽然很辛苦,我负责的是研究Hbase,但是研究新技术这个过程是个开心的事情。前面说了点啰嗦,开始咱们的正题吧。

简单的先介绍一下HBase:

HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。类似于redis中的散列存储数据。

Hbase中有几个术语 大家理解了 基本操作就不是什么问题了。

行键Row Key:主键是用来检索记录的主键,访问hbasetable中的行。

列族Column Family:Table在水平方向有一个或者多个ColumnFamily组成,一个ColumnFamily中可以由任意多个Column组成,即ColumnFamily支持动态扩展,无需预先定义Column的数量以及类型,所有Column均以二进制格式存储,用户需要自行进行类型转换。

列column:由Hbase中的列族ColumnFamily +列的名称(cell)组成列。

单元格cell:HBase中通过row和columns确定的为一个存贮单元称为cell。

版本version:每个cell都保存着同一份数据的多个版本。版本通过时间戳来索引。

Hbase的表结构组成:

1)每行都有row key。

2)每条记录分隔成列族集合。

3)每个列族由若干列组成

Hbase在linux下安装请见网址:http://www.yiibai.com/hbase/hbase_installation.html

下面我通过shell 命令 来简单的演示一下HBase的基本操作吧

进入hbase的安装目录:

执行 ./bin/hbase shell 命令 进入操作界面  

list 命令:列出hbase下存储的表

创建数据库表:create ‘table_name’,'column family'  

添加数据:put‘table name’,’row’,'Column family:column name',’value’

获取某个行键的数据:

get ‘table_name’,'row_key'

获取表下所有的数据:

scan 'table_name'

删除表下某列的数据:

delete ‘table_name’, ‘row_key’, ‘column_name’;

删除表下的某行数据:

deleteall  ‘table_name’,‘row_key’

更新数据:

put‘table name’,’row’,'Column family:column name',’new_value’

      说到这 基本的操作命令已经讲完了  是不是很简单  其实HBase基本的操作还是很简单的,大家装一下体验一下 一下子就明白了,后续我还会给大家介绍用java-Client 操作Hbase  以及spirng-hadoop asynchbase 等开源的框架二次封装成独立的共有的jar包来操作基本的hbase。 这些都是很好的开源东西 大家有时间可以去学习一下。

    写的有点粗糙,望大家见谅,后面我还会继续出hbase个人学习记录,也是激励自己 同样也给大家分享 有什么不对的地方 希望大家提出来。 

  我是小志码字,一个简单码代码的小人物。

相关文章

  • hbase资料收集

    一、HBase 0.94.1 block-cache 理解 二、HBase深入学习(1) 三、HBase深入学习(...

  • Hbase 入门

    Hbase简介 参考:Hbase技术详细学习笔记 如何合理的设计HBase RowKey? Hbase是分布式、面...

  • Hbase+ES

    Hbase学习 一 :动手搭建环境到 Hbase的各种操作(关于建表的操作) 二:HBASE原理学习 一 :目录:...

  • 好程序员大数据学习路线hbase快速入门

    好程序员大数据学习路线hbase快速入门 一、Hbase简介 1.Hbase是什么 Apache HBase是Ha...

  • HBASE学习笔记

    本文是对Hbase组件的一个学习总结,共包括如下章节的内容: Hbase是什么 Hbase的数据模型 Hbase体...

  • (十三)大数据学习之Hbase

    大数据学习之HBase 一.Hbase: (1)google三篇论文: gfs ->hdfs mapreduce ...

  • 实战代码(十一):Springboot集成Hbase

    一、理论基础 Hbase基础见另一篇笔记《学习笔记 | HBase学习笔记[https://www.jianshu...

  • HBase学习-HBase原理

    1.系统架构 1.1 图解 从HBase的架构图上可以看出,HBase中的组件包括Client、Zookeeper...

  • study progress

    关系性数据库&nosql数据库 ok 并发编程 hbase api学习hbase 原理学习 爬虫spark ela...

  • 大数据零基础快速了解HBase

    大数据0基础怎么学习?科多大数据带你快速了解HBase。 1. HBase介绍 Hbase 是一个高可靠、高性能、...

网友评论

    本文标题:HBase学习

    本文链接:https://www.haomeiwen.com/subject/jdcihxtx.html