HBase

使用docker搭建参考https://blog.csdn.net/baifanwudi/article/details/78498325

搭建好以后,网页端可以看到:

terminal 界面

HBase是一种构建在HDFS之上的分布式、面向列的存储系统。在需要实时读写,随机访问超大规模数据集时,可以使用HBase。

HBase的特点

1、大,一个表可以有上一行,上百万行。

2、面向列:面向列表(簇)的存储和权限控制,列(簇)独立检索。

3、稀疏:对于为空(NULL)的列,并不占用存储空间,因此,表可以设计得非常稀疏。

4、无模式:每一行都有一个可以排序的主键和任意多的列,列可以根据需要动态增加,同一张表中不同的行可以有截然不同的列。

5、数据多版本,每个单元中的数据可以有多个版本,默认情况下,版本号自动分配,版本号就是单元格插入时的时间戳。

6、数据类型单一:HBase中的数据都是字符串,没有类型。

基本操作

whoam i     查看当前用户身份

list      查看有哪些表

create 't1' ,{NAME => 'f1',VERSIONS => '2'}   创建表,family name是f1

disbale 't1' 然后 drop 't1'   删除表

describe 't1'     查看表't1'结构

put 't1','rowkey001','f1:col1','value01' 在ti表中添加一行记录,其中rowkey是rowkey001,family name是f1,columu name是col1,value是value01。

get 't1' ,'rowkey001'获取表't1'的'rowkey001'的所有信息

scan 't1' 获取表t1的所有信息。

python 2 连接 HBase

首先安装 包

pip install thrift

pip install hbase-thrift

然后可以连接过去

from thrift.transport import TSocket,TTransport
from thrift.protocol import TBinaryProtocol
from hbase import Hbase # thrift默认端口是9090
socket = TSocket.TSocket('localhost',9090)
socket.setTimeout(5000) transport = TTransport.TBufferedTransport(socket)
protocol = TBinaryProtocol.TBinaryProtocol(transport) client = Hbase.Client(protocol)
socket.open() print(client.getTableNames())
print(client.get('t1','rowkey001','f1:col1'))

结果

HBase学习记录的更多相关文章

  1. Hbase学习记录(1)|伪分布式安装

    概述 Hbase –Haddop Database 是一个高性能,高可靠性.面向列.可伸缩的分布式存储系统. Hbase利用HDFS作为文件存储系统,利用MapReduce来处理Hbase的海量数据, ...

  2. Hbase 学习记录

    说明: 公司最近要使用HBase 用于(冷)历史数据 存储,和简单离线计算.在一次讨论会上,我发表意见,为什么把近期数据流程热点数据库中,并且继续异步流入到 历史数据库HBase 里面.提供高效查询等 ...

  3. Hbase学习记录(2)| Shell操作

    查看表结构 describe '表名' 查看版本 get '表名','zhangsan'{COLUMN=>'info:age',VERSIONS=>3} 删除整行 deleteall '表 ...

  4. HBase学习记录-API

    delete.addColumns()和delete.addColumn()的区别 /** * delete.addColumns(); * delete.addColumn(); * 区别: * a ...

  5. HBase学习笔记-高级(一)

    HBase1. hbase.id记录了集群的唯一标识:hbase.version记录了文件格式的版本号2. split和.corrupt目录在日志分裂过程中使用,以便保存一些中间结果和损坏的日志在表目 ...

  6. HBase学习系列

    转自:http://www.aboutyun.com/thread-8391-1-1.html 问题导读: 1.hbase是什么? 2.hbase原理是什么? 3.hbase使用中会遇到什么问题? 4 ...

  7. HBase学习与实践

    Photo by bealach verse on Unsplash 参考书籍:<HBase 权威指南> -- Lars George著. 文章为个人从零开始学习记录,如有错误,还请不吝赐 ...

  8. HBase学习笔记之HBase的安装和配置

    HBase学习笔记之HBase的安装和配置 我是为了调研和验证hbase的bulkload功能,才安装hbase,学习hbase的.为了快速的验证bulkload功能,我安装了一个节点的hadoop集 ...

  9. HBASE学习笔记(四)

    这两天把要前几天的知识点回顾一下,接下来我会用自己对知识点的理解来写一些东西 一.知识点回顾 1.hbase集群启动:$>start-hbase.sh ===>hbase-daemon.s ...

随机推荐

  1. 在Intellij上开发项目发布到tomcat时,同一个局域网内的其他机子访问不到自己电脑上tomcat中的项目,只能本机访问

    在Intellij上开发项目发布到tomcat时,同一个局域网内的其他机子访问不到自己电脑上tomcat中的项目,只能本机访问 问题描述:在Intellij上开发项目发布到tomcat时,同一个局域网 ...

  2. @Profile使用及SpringBoot获取profile值

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/Fmuma/article/details ...

  3. Django学习笔记-修改Django的默认的数据库

    1.修改设置settings中的配置 DATABASES = { 'default': { # 'ENGINE': 'django.db.backends.sqlite3', # 'NAME': os ...

  4. Vue:对象更改检测注意事项

    还是由于 JavaScript 的限制,Vue 不能检测对象属性的添加或删除: var vm = new Vue({ data: { a: 1 } }) // `vm.a` 现在是响应式的 vm.b ...

  5. Mac下通过npm安装webpack 、vuejs,以及引入jquery、bootstrap等(初稿)

    前言: 初次接触前端开发技术,一些方向都是在同事的指引和自己的探索后,跑了个简易web,迈入全栈系列.由于是事后来的文章,故而暂只是杂记,写的粗略且不清晰,后续将补之. 主要参考文档: http:// ...

  6. [转]Win10企业版无法访问共享文件夹

    Win10系统电脑在更新后,当我们访问共享文件夹时可能会出现如下图所示窗口,导致我们无法访问.那么这个问题如何解决呢?具体如下:1. 首先我们按“Windows+R键”打开运行窗口.2. 在该窗口文本 ...

  7. 【FTP】FTP(文件传输协议)工作原理(SFTP)

    目前在网络上,如果你想把文件和其他人共享.最方便的办法莫过于将文件放FTP服务器上,然后其他人通过FTP客户端程序来下载所需要的文件. 1.FTP架构 如同其他的很多通讯协议,FTP通讯协议也采用客户 ...

  8. Angular JS - 1 - 环境准备

    1.webstorm 下载安装 webstorm 同 intellij IDEA  一样智能好用~ 智能的同时,比较费内存 2. chrome插件安装 按照下图,打开扩展程序,选择开发者模式: 下载n ...

  9. 2017 ACM-ICPC乌鲁木齐网络赛 B. Out-out-control cars(计算几何 直线相交)

    题目描述 Two out-of-control cars crashed within about a half-hour Wednesday afternoon on Deer Park Avenu ...

  10. HDU 6058 Kanade's sum —— 2017 Multi-University Training 3

    Kanade's sum Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tota ...