
Hbase
文章平均质量分 80
qq_26091271
这个作者很懒,什么都没留下…
展开
-
Hbase 笔记
hbase 压缩 Hbase有两种压缩策略:minor和major。Minor compactions通常选择几个临近的小的storefiles把他们重写成一个。Minors 不会丢掉已删除或者过期的cells,只有major compactions才会做这些。有时一次Minor compactions将会选择一个s……hbase code转载 2015-12-28 21:46:55 · 255 阅读 · 0 评论 -
Hbase恢复误删数据
1.hdfs的回收站机制 客户有时会误删一些数据,在生产环境下,误删数据会造成非常严重的后果。 在hdfs上有一个回收站的设置,可以将删除的数据存在目录”/user/$/.Trash/”中,设置回收站的参数如下:fs.trash.interval=0 以分钟为单位的垃圾回收时间,垃圾站中数据超过此时间,会被删除。如果是0,垃圾回收机转载 2017-04-06 21:29:33 · 5689 阅读 · 0 评论 -
Hbase数据恢复方案
1 HBase数据路由1、 从ZooKeeper中获取-ROOT- Region所在的RegionServer2、 向-ROOT- Region所在的RegionServer发送Scan –ROOT-的RPC请求,来获取.META. Region 所在的位置。下图为-ROOT- Region里的具体内容3、 向.META. R转载 2017-04-06 21:28:35 · 2423 阅读 · 0 评论 -
Hbase优化
服务端1.hbase.regionserver.handler.count:rpc请求的线程数量,默认值是10,生产环境建议使用100,也不是越大越好,特别是当请求内容很大的时候,比如scan/put几M的数据,会占用过多的内存,有可能导致频繁的GC,甚至出现内存溢出。2.hbase.master.distributed.log.splitting:默认值为true,建转载 2017-04-08 10:05:52 · 387 阅读 · 0 评论 -
Hbase solr 二级索引
背景:某电信项目中采用HBase来存储用户终端明细数据,供前台页面即时查询。HBase无可置疑拥有其优势,但其本身只对rowkey支持毫秒级的快速检索,对于多字段的组合查询却无能为力。针对HBase的多条件查询也有多种方案,但是这些方案要么太复杂,要么效率太低,本文只对基于Solr的HBase多条件查询方案进行测试和验证。原理:基于Solr的HBase多条件查询原理很简单,转载 2016-10-14 11:16:39 · 929 阅读 · 0 评论 -
HDFS 上的数据导入到Hbase
需求:将HDFS上的文件中的数据导入到hbase中实现上面的需求也有两种办法,一种是自定义mr,一种是使用hbase提供好的import工具一、hdfs中的数据是这样的每一行的数据是这样的id name age gender birthday(my_python_env)[root@hadoop26 ~]# hadoop fs -cat /t1/*1 zhangsan转载 2016-09-19 16:29:11 · 8421 阅读 · 0 评论 -
HBase 写优化之 BulkLoad 实现数据快速入库
1、为何要 BulkLoad 导入?传统的 HTableOutputFormat 写 HBase 有什么问题?我们先看下 HBase 的写流程:通常 MapReduce 在写HBase时使用的是 TableOutputFormat 方式,在reduce中直接生成put对象写入HBase,该方式在大数据量写入时效率低下(HBase会block写入,频繁进行flush,split,转载 2016-07-13 15:02:06 · 1220 阅读 · 0 评论 -
hbase海量数据导入
最近有个需求要对mysql的全量数据迁移到hbase,虽然hbase的设计非常利于高效的读取,但是它的compaction实现对海量数据写入造成非常大的影响,数据到一定量之后,就开始抽风。 分析hbase的实现,不管其运行的机制,其最终存储结构为分布式文件系统中的hfile格式。 刚好hbase的源代码中提供一个HFileOutputFormat类,分析其源代码可以看到: Ja转载 2016-06-29 17:56:58 · 792 阅读 · 0 评论 -
列式存储和行式存储的区别
1 为什么要按列存储列式存储(Columnar or column-based)是相对于传统关系型数据库的行式存储(Row-basedstorage)来说的。简单来说两者的区别就是如何组织表(翻译不好,直接抄原文了):Ø Row-based storage stores atable in a sequence of rows.Ø Column-based storag转载 2016-06-28 20:50:28 · 32573 阅读 · 0 评论 -
Hbase API 操作
import java.io.IOException;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.转载 2016-06-28 11:30:32 · 269 阅读 · 0 评论 -
Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
1、搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar、hbase-0.90.4-tests.jar以及Hbase资源包中lib目录下的所有jar包 2、主要程序 Java代码 package com.wujintao.hbas转载 2016-06-01 18:27:13 · 347 阅读 · 0 评论 -
Hbase Java 基本操作
HBase提供了Java API对其进行管理,包括对表的管理、数据的操作等。1. HBaseAdmin —— 对表的创建、删除、显示以及修改等; 2. HTable —— 通过HTable的实例来访问表并进行数据的操作,获取表实例如下两种方法: 方法一:直接获取 HTable table = new HTable(config, tableName); 方法二转载 2016-04-21 22:08:51 · 361 阅读 · 0 评论 -
MapReduce操作HBase
运行HBase时常会遇到个错误,我就有这样的经历。 ERROR: org.apache.hadoop.hbase.MasterNotRunningException: Retried 7 times检查日志:org.apache.hadoop.ipc.RPC$VersionMismatch: Protocol org.apache.hadoop.hdfs.protocol.ClientPr转载 2016-05-28 18:11:28 · 247 阅读 · 0 评论 -
Hbase API 基本操作
mport java.io.IOException;import java.util.ArrayList;import java.util.List; import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;转载 2016-05-28 17:06:39 · 399 阅读 · 0 评论 -
Hbase作为Web的数据库
在此之前我们使用Mysql作为数据源,但发现这数据增长速度太快,并且由于种种原因,因此必须使用HBase,所以我们要把Mysql表里面的数据迁移到HBase中,在这里我就不讲解、不争论为什么要使用HBase,HBase是什么了,喜欢的就认真看下去,总有些地方是有用的我们要做的3大步骤:新建HBase表格。 把MYSQL数据迁移到HBase中。 在Ja转载 2016-04-25 17:08:18 · 959 阅读 · 0 评论 -
HBase数据迁移(3)-自己编写MapReduce Job导入数据 .
尽管在将文本文件加载入HBase时importtsv工具十分高效,但在许多情况下为了完全控制整个加载过程,你可能更想自己编写MapReduce Job向HBase导入数据。例如在你希望加载其他格式文件时不能使用importtsv工具。HBase提供TableOutputFormat 用于在MapReduce Job中向HBase的表中写入数据。你也可以使用HFileOutputFormat转载 2016-04-25 17:04:22 · 397 阅读 · 0 评论 -
HBase数据迁移(2)- 使用bulk load 工具从TSV文件中导入数据 .
HBase提供importtsv工具支持从TSV文件中将数据导入HBase。使用该工具将文本数据加载至HBase十分高效,因为它是通过MapReduce Job来实施导入的。哪怕是要从现有的关系型数据库中加载数据,也可以先将数据导入文本文件中,然后使用importtsv 工具导入HBase。在导入海量数据时,这个方式运行的很好,因为导出数据比在关系型数据库中执行SQL快很多。importtsv转载 2016-04-25 17:02:23 · 544 阅读 · 0 评论 -
HBase数据迁移(1)-使用HBase的API中的Put方法 .
使用HBase的API中的Put是最直接的方法,用法也很容易学习。但针对大部分情况,它并非都是最高效的方式。当需要将海量数据在规定时间内载入HBase中时,效率问题体现得尤为明显。待处理的数据量一般都是巨大的,这也许是为何我们选择了HBase而不是其他数据库的原因。在项目开始之前,你就该思考如何将所有能够很好的将数据转移进HBase,否则之后可能面临严重的性能问题。HBase有一个名为 b转载 2016-04-25 16:59:22 · 769 阅读 · 0 评论 -
Hbase 备份方案
1、Hbase中的备份策略有哪些,各有什么特点? hbase中的数据备份策略有两种:关闭集群进行全备份;在线对集群进行备份。1、进行关机备份时,必须全部关闭Hbase集群,或者disable所有表,然后通过distcp命令将Hbase目录下的内容复制到另外或者同一个集群的不同目录就可以了。2、在线备份,可以通过CopyTable 命令将被内容复制到另一张表中;或者导出转载 2017-04-06 21:32:44 · 628 阅读 · 0 评论