Hbase
大数据nb
大数据流浪法师
个人兴趣领域:大数据、人工智能、游戏Fix技术
展开
-
HBase 用Spark导入MySQL数据到HBase
用Spark导入MySQL数据到HBase企业中大规模数据存储于HBase背景:项目中有需求,要频繁地、快速地向一个表中初始化数据。因此如何加载数据,如何提高速度是需要解决的问题。一般来说,作为数据存储系统会分为检索和存储两部分。检索是对外暴露数据查询接口。存储一是要实现数据按固定规则存储到存储介质中(如磁盘、内存等),另一方面还需要向外暴露批量装载的工具。如DB2的 db2load 工具,在关闭掉日志的前提下,写入速度能有显著提高。HBase数据库提供批量导入数据到表功能:1、Hbase原创 2020-06-01 16:04:48 · 767 阅读 · 0 评论 -
HBase 用MapReduce导入MySQL中的数据到HBase
用MapReduce导入MySQL中的数据到HBase将MySQL表的数据先导入到HDFS文件中(比如TSV格式),编写MapReduce将文本文件数据转换为HFile文件,加载到HBase表中。第一步、用Sqoop在Hive中创建表/export/servers/sqoop/bin/sqoop create-hive-table \--connect jdbc:mysql://bd001:3306/tags_dat2 \--table tbl_logs \--username root \原创 2020-06-01 15:41:49 · 564 阅读 · 0 评论 -
HBase ImportTSV
TSV文件与CSV文件的区别TSV是Tab-separatedvalues的缩写,即制表符分隔值。相对来说CSV,Comma-separatedvalues(逗号分隔值)更常见一些。ImportTSV功能描述:ImportTSV可以将tsv(也可以是csv,每行数据中各个字段使用分隔符分割)格式文本数据,加载到HBase表中。采用Put方式加载导入采用BulkLoad方式批量加载导入ImportTSV这个功能藏在HBase自带的工具类jar包里。使用如下命令,查看HBase官方自带工具类原创 2020-06-01 15:05:06 · 1843 阅读 · 0 评论 -
Apache HBase HBase与Hive的整合
Hive与HBase的整合hive与我们的HBase各有千秋,各自有着不同的功能,但是归根接地,hive与hbase的数据最终都是存储在hdfs上面的,一般的我们为了存储磁盘的空间,不会将一份数据存储到多个地方,导致磁盘空间的浪费,我们可以直接将数据存入hbase,然后通过hive整合hbase直接使用sql语句分析hbase里面的数据即可,非常方便需求一:将hive分析结果的数据,保存到HB...原创 2019-12-20 17:25:34 · 207 阅读 · 0 评论 -
Apache HBase HBase与hive的对比
Hive是数据仓库Hive的本质其实就相当于将HDFS中已经存储的文件在Mysql中做了一个双射关系,以方便使用HQL去管理查询。用于数据分析、清洗Hive适用于离线的数据分析和清洗,延迟较高基于HDFS、MapReduceHive存储的数据依旧在DataNode上,编写的HQL语句终将是转换为MapReduce代码执行。(不要钻不需要执行MapReduce代码的情况的牛角尖)HBas...原创 2019-12-19 17:18:54 · 319 阅读 · 0 评论 -
Apache HBase 通过bulkload方式批量加载数据到HBase中
使用HBase的javaAPI或者使用sqoop将数据写入或者导入到HBase中,这些方式不是慢就是在导入的过程的占用Region资料导致效率低下。而Bulkload方式通过MR的程序,将数据直接转换成HBase的最终存储格式HFile,然后直接load数据到HBase中即可。bulkload优点:1.导入过程不占用Region资源2.能快速导入海量的数据3.节省内存HFileHBa...原创 2019-12-19 17:12:18 · 491 阅读 · 0 评论 -
Apache HBase 读取HBase数据写出到HDFS上
查看myuser2中数据hbase(main):001:0> scan 'myuser2'ROW COLUMN+CELL 0001 column=f1:age, timestamp=1576629006005, value=\...原创 2019-12-19 16:13:36 · 294 阅读 · 0 评论 -
Apache HBase JavaAPI 读取HDFS文件,写入HBase表中
第一步:准备数据准备数据文件,并将数据文件上传到HDFS上面去hdfs dfs -mkdir -p /hbase/inputcd /export/servers/vim user.txt0007 zhangsan 180008 lisi 250009 wangwu 20第二步:开发MR程序public class Hdfs2Hbase ...原创 2019-12-19 16:08:59 · 863 阅读 · 0 评论 -
Apache HBase 集成MapReduce 读取一张表的数据写入另一张表
HBase当中的数据最终都是存储在HDFS上面的,HBase天生的支持MR的操作,我们可以通过MR直接处理HBase当中的数据,并且MR可以将处理后的结果直接存储到HBase当中去。需求:读取HBase当中一张表的数据,然后将数据写入到HBase当中的另外一张表当中去。注意:我们可以使用TableMapper与TableReducer来实现从HBase当中读取与写入数据。将myuser这张表...原创 2019-12-18 11:37:44 · 490 阅读 · 0 评论 -
Apache HBase JavaAPI 删除数据
根据rowkey删除数据package com.czxy.demo01;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.TableName;import org.apache.hadoo...原创 2019-12-17 17:41:58 · 540 阅读 · 0 评论 -
Apache HBase JavaAPI 过滤器查询
文章目录创建maven工程,pom文件:创建表myuser创建maven工程,pom文件:<repositories> <repository> <id>cloudera</id> <url>https://repository.cloudera.com/artifact...原创 2019-12-17 17:26:37 · 287 阅读 · 0 评论 -
Apache HBase JavaAPI 查询数据
初始化一批数据到HBase当中用于查询package com.czxy.demo01;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.TableName;import org.apach...原创 2019-12-17 16:16:04 · 365 阅读 · 0 评论 -
Apache HBase JavaAPI 向表中添加数据
package com.czxy.demo01;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.TableName;import org.apache.hadoop.hbase.clien...原创 2019-12-17 11:49:48 · 280 阅读 · 0 评论 -
Apache HBase JavaAPI 创建表myuser
package com.czxy.demo01;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.hadoop.hba...原创 2019-12-17 11:42:18 · 344 阅读 · 0 评论 -
Apache HBase JavaAPI POM文件
创建maven工程,pom文件:<repositories> <repository> <id>cloudera</id> <url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>...原创 2019-12-17 11:39:04 · 516 阅读 · 0 评论 -
Apache HBase 预分区
预分区的原因增加数据读写效率负载均衡,防止数据倾斜方便集群容灾调度region优化Map数量如何预分区?每一个region维护着startRow与endRowKey,如果加入的数据符合某个region维护的rowKey范围,则该数据交给这个region维护。如何设定预分区?1、手动指定预分区hbase(main):001:0> create 'staff','info'...原创 2019-12-17 08:57:19 · 176 阅读 · 0 评论 -
Apache HBase rowKey设计技巧
HBase是三维有序存储的,通过rowkey(行键),column key(column family和qualifier)和TimeStamp(时间戳)这个三个维度可以对HBase中的数据进行快速定位。HBase中rowkey可以唯一标识一行记录,在HBase查询的时候,有以下几种方式:通过get方式,指定rowkey获取唯一一条记录通过scan方式,设置startRow和stopRow...原创 2019-12-17 08:50:45 · 166 阅读 · 0 评论 -
Apache HBase 架构
HBase架构图的理解Client包含访问hbase的接口,client维护着一些cache来加快对hbase的访问,比如regione的位置信息。Zookeeper保证任何时候,集群中只有一个master存贮所有Region的寻址入口实时监控Region Server的状态,将Region server的上线和下线信息实时通知给Master存储Hbase的schema,包括...原创 2019-12-17 08:41:02 · 153 阅读 · 0 评论 -
Apache HBase 物理存储架构
物理存储架构整体结构Table中的所有行都按照row key的字典序排列。Table 在行的方向上分割为多个Hregion。region按大小分割的(默认10G),每个表一开始只有一个region,随着数据不断插入表,region不断增大,当增大到一个阈值的时候,Hregion就会等分会两个新的Hregion。当table中的行不断增多,就会有越来越多的Hregion。Hregio...原创 2019-12-17 08:39:23 · 122 阅读 · 0 评论 -
Apache HBase 表模型理解
HBase的表数据模型理解Row Key与nosql数据库们一样,row key是用来检索记录的主键。访问hbase table中的行,只有三种方式:1 通过单个row key访问2 通过row key的range3 全表扫描Row key行键 (Row key)可以是任意字符串(最大长度是 64KB,实际应用中长度一般为 10-100bytes),在hbase内部,row key保...原创 2019-12-17 08:29:09 · 244 阅读 · 0 评论 -
Apache HBase 三个重要机制 Flush Compact Split
Flush机制1.(hbase.regionserver.global.memstore.size)默认;堆大小的40%regionServer的全局memstore的大小,超过该大小会触发flush到磁盘的操作,默认是堆大小的40%,而且regionserver级别的flush会阻塞客户端读写2.(hbase.hregion.memstore.flush.size)默认:128M单个r...原创 2019-12-16 17:41:21 · 368 阅读 · 0 评论 -
Apache HBase Master的工作机制
master上线前提:hbase集群中可以设置多个master,真正对外提供服务的只有一个。master启动进行以下步骤:1 从zookeeper上获取唯一一个代表active master的锁,用来阻止其它master成为master。2 扫描zookeeper上的server父节点,获得当前可用的region server列表。3 和每个region server通信,获得当前已分配...原创 2019-12-16 10:30:30 · 200 阅读 · 0 评论 -
Apache HBase Region管理
region分配任何时刻,一个region只能分配给一个region server。master记录了当前有哪些可用的region server。以及当前哪些region分配给了哪些region server,哪些region还没有分配。当需要分配的新的region,并且有一个region server上有可用空间时,master就给这个region server发送一个装载请求,把reg...原创 2019-12-16 09:31:51 · 151 阅读 · 0 评论 -
Apache HBase 写数据过程
HBase写数据详细过程Client先访问zookeeper,找到Meta表,并获取Meta表元数据。根据Meta表元数据,确定当前将要写入的数据所对应的HRegion和HRegionServer服务器。Client向该HRegionServer服务器发起写入数据请求,然后HRegionServer收到请求并响应。Client先把数据写入到HLog,以防止数据丢失,然后将数据写入到Mems...原创 2019-12-16 09:12:01 · 197 阅读 · 0 评论 -
Apache HBase 读数据过程
meta表meta表述hbase系统自带的一个表。里面存储了hbase用户表的元信息。元信息meta表内记录一行数据是用户表一个region的start key 到endkey的范围。meta表位置meta表存储在regionserver里。zookeeper知道具体存储在哪个regionserver里。client询问zookeeper:meta表的位置在哪到meta所在...原创 2019-12-16 08:44:05 · 103 阅读 · 0 评论 -
Apache HBase 常用Shell操作
HBase常用shell操作hive,hbase命令行无法回格在secureCRT中,点击"选项"->“回话选项”->“终端”->“仿真”右边的终端选择linux,在hbase shell中如输入出错,Ctrl+回格键即可删除进入HBase客户端命令操作界面$ bin/hbase shell[root@hadoop01 bin]# hbase shell2019-...原创 2019-12-11 21:08:43 · 260 阅读 · 0 评论 -
Apache HBase 安装
注意事项:HBase强依赖zookeeper和hadoop,安装HBase之前一定要保证zookeeper和hadoop启动成功,且服务正常运行安装过程下载对应的HBase的安装包所有关于CDH版本的软件包下载地址如下http://archive.cloudera.com/cdh5/cdh/5/HBase对应的版本下载地址如下http://archive.cloudera.com/c...原创 2019-12-11 09:05:38 · 253 阅读 · 0 评论 -
Apache HBase 概念
HBase基本介绍简介hbase是bigtable的开源java版本。是建立在hdfs之上,提供高可靠性、高性能、列存储、可伸缩、实时读写nosql的数据库系统。它介于nosql和RDBMS之间,仅能通过主键(row key)和主键的range来检索数据,仅支持单行事务(可通过hive支持来实现多表join等复杂操作)。主要用来存储结构化和半结构化的松散数据。Hbase查询数据功能很简...原创 2019-12-11 08:16:14 · 206 阅读 · 0 评论