HBase设计规范(转载)】的更多相关文章

  概述 笔者本人接触研究HBase也有半年之久了,虽说不上深入和系统,但至少算是比较沉迷.作为部门里大数据技术的探路者,笔者还要承担起技术传播的职责,所以在摸索研究的过程中总是不断地进行总结和测试,一路走来,慢慢地积累了一些东西,整理了一下,做成一个技术系列文档,暂时就叫做"HBase应用开发回顾与总结".虽然称不上什么高深莫测的技术,但本着开源和分享的精神,笔者本人还是很乐意将它逐篇贴出来.另外,笔者认为<HBase权威指南>算是比较好的HBase方面的技术书籍了,推荐…
在这里讲什么设计规范实在是有些不知天高地厚,毕竟笔者本人也只是一个大数据技术的初学者,断然不敢制订什么设计规范的,所以请原谅我的狂妄,这个设计规范,只是本人对自己制订的,与别人无关. 之前,HBase官方和大批的高人已经总结了一部分HBase设计方面的规范,笔者进行了搜集整理,再加上自己的理解和丰富,就整理出了一份自己感觉适合自己开发所应遵循的规范. Hbase中与表结构相关的逻辑模型涉及到以下几个词汇:命名空间.表.列族.列.行键.版本等,这些是构建hbase表的所有元素.笔者就依据这几个关键…
早些时候学习hadoop的技术,我一直对里面两项技术倍感困惑,一个是zookeeper,一个就是Hbase了.现在有机会专职做大数据相关的项目,终于看到了HBase实战的项目,也因此有机会搞懂Hbase原理. 首先来点实在的东西,假如我们已经在服务器上部署好了Hbase应用,作为客户端或者说的具体点,本地开发环境如何编写程序和服务端的Hbase进行交互了? 下面我将展示这些,首先看工程的结构图,如下图所示: 接下来我们将hbase应用下lib文件夹里所有jar包都导入到工程lib目录下,还要把c…
更多参考: 2017最新设计尺寸及规范 UI : 2018年IOS/Android UI设计规范 转载:https://www.jianshu.com/p/03e5cdd4ffd6…
MongoDB MongoDB是当今最火爆的NoSQL数据库.MongoDB最早在09年发布,算得上是早期大数据时代的数据库代表作了.随着MongoDB的火爆,研发MongoDB的团队还专门成立了MongoDB公司来对MongoDB进行维护和推广,现在这个公司已经在纳斯达克上市,市值达到十几亿美元,算得上是技术变现的典范了. MongoDB最大的特点是表结构灵活可变,字段类型可以随时修改.MongoDB中的每一行数据只是简单的被转化成Json格式后存储,因此MongoDB中压根没有MySQL中表…
前言:本文主要讲述了如何使用Docker快速上手HBase,省去繁杂的安装部署环境,直接上手,小白必备.适合HBase入门学习及简单代码测试. 1. Docker 安装 参考地址: https://yeasy.gitbook.io/docker_practice/install 支持常用的操作系统:Centos / ubuntu / Windows / macos 等. 2. 拉取镜像 镜像地址: https://hub.docker.com/r/harisekhon/hbase/tags 这里…
2. RowKey行键设计规范 2.1. RowKey四大特性 2.1.1 字符串类型 虽然行键在HBase中是以byte[]字节数组的形式存储的,但是建议在系统开发过程中将其数据类型设置为String类型,保证通用性:如果在开发过程中将RowKey规定为其他类型,譬如Long型,那么数据的长度将可能受限于编译环境等所规定的数据长度. 常用的行键字符串有以下几种: 纯数字字符串,譬如9559820140512: 数字+特殊分隔符,譬如95598-20140512; 数字+英文字母,譬如city2…
转载自http://blog.csdn.net/wangmuming/article/details/23954527和http://www.cnblogs.com/justinzhang/p/4273470.html 共同点:1.HBase与Hive都是架构在Hadoop之上的.都是用Hadoop作为底层存储 区别: 2.Hive是建立在Hadoop之上为了减少MapReduce jobs编写工作的批处理系统,HBase是为了支持弥补Hadoop对实时操作的缺陷的项目 .3.想象你在操作RMD…
转载自http://www.csdn.net/article/2010-11-28/282614 数据模型 HBase数据库使用了和Bigtable非常相似的数据模型.用户在表格里存储许多数据行.每个数据行都包括一个可排序的关键字,和任意数目的列.表格是稀疏的,所以同一个表格里的行可能有非常不同的列,只要用户喜欢这样做. 列名是“<族名>:<标签>”形式,其中<族名>和<标签>可以是任意字符串.一个表格的<族名>集合(又叫“列族”集合)是固定的,…
转载自http://www.csdn.net/article/2010-11-29/282698 我的团队近来正在忙于一个全新的产品——即将发布的网络游戏www.FightMyMonster.com.这让我们得以奢侈地去构建一个全新的NOSQL数据库,也就是说,我们可以把恐怖的MySQL sharding和昂贵的可伸缩性抛在脑后了.最近有很多人一直在问,为什么我们要把注意力从HBase上转移到Cassandra上去.我确认,确实有这样的变化,实际上我们基本上已经把代码移植到了Cassandra上…
转载地址:https://dxer.github.io/2016/03/18/hbase/ HBase一些基本概念 1.Row key 行主键,在对HBase进行查询时候只能依靠Row key,HBase不支持条件查询等类似于一些主流数据库的查询方式,读取记录只能依赖行主键以及进行全局扫面,可以将行主键想象成主流数据库查询过程中用到的主键(例如,id). 2.Column Family 列族,可以将列族想象成日常主流数据库中的表结构的所有列的一个大管家,列族中存储了所有列的名称,整个表包括多少列…
转载地址:http://blog.csdn.net/napoay/article/details/54136398 目录(?)[+]   一.机器环境 系统:MAC OS Hadoop:2.7.3 Hbase:1.2.4 JDK: 1.8.0_112 二.配置SSH免密码登录 第一步:打开terminal,进入根目录,运行命令: cd 第二步: 显示隐藏文件,这时还没有.ssh文件夹 ls –a 第三步:生成密钥 ssh-keygen -t rsa -P ""  第四步,进入.ssh文…
一.服务端调优 1.参数配置 1).hbase.regionserver.handler.count:该设置决定了处理RPC的线程数量,默认值是10,通常可以调大,比如:150,当请求内容很大(上MB,比如大的put.使用缓存的scans)的时候,如果该值设置过大则会占用过多的内存,导致频繁的GC,或者出现OutOfMemory,因此该值不是越大越好. 2).hbase.hregion.max.filesize :配置region大小,0.94.12版本默认是10G,region的大小与集群支持…
前置条件 各软件版本:hadoop-2.7.7.hbase-2.1.5 .jdk1.8.0_211.zookeeper-3.4.10.apache-phoenix-5.0.0-HBase-2.0-bin.tar.gz 至少 3 台 Centos 服务器,主机名分别为:hadoop0001.hadoop0002.hadoop0003 这里所有的软件将安装在 hadoop 用户的 /home/hadoop/app 目录下 在每台服务器设置 hosts [hadoop@hadoop0001 ~]$ v…
原文链接:https://www.cnblogs.com/ballwql/p/hbase_data_transfer.html 一.前言 HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分为以下几类: 图1.HBase数据迁移方案 从上面图中可看出,目前的方案主要有四类,Hadoop层有一类,HBase层有三类.下面分别介绍一下. 二.Hadoop层数据迁移 2.1 方案介绍 Hadoop层的数据迁移主要用到DistCp(Distributed Copy), 官方描述是:DistCp…
转载自: http://blog.csdn.net/u010967382/article/details/37878701 概述 对于建表,和RDBMS类似,HBase也有namespace的概念,可以指定表空间创建表,也可以直接创建表,进入default表空间. 对于数据操作,HBase支持四类主要的数据操作,分别是: Put:增加一行,修改一行: Delete:删除一行,删除指定列族,删除指定column的多个版本,删除指定column的制定版本等: Get:获取指定行的所有信息,获取指定行…
HBase 默认配置  ,原文:http://eclecl1314-163-com.iteye.com/blog/1474286 该文档是用hbase默认配置文件生成的,文件源是 hbase-default.xml (因翻译需要,被译者修改成中文注释). hbase.rootdir 这个目录是region server的共享目录,用来持久化Hbase.URL需要是'完全正确'的,还要包含文件系统的scheme.例如,要表示hdfs中的 '/hbase'目录,namenode 运行在namenod…
Hbase采用Java实现,原生客户端也是Java实现,其他语言需要通过thritf接口服务间接访问Hbase的数据. Hbase作为大数据存储数据库,其写能力非常强,加上Hbase本身就脱胎于Hadoop故和Hadoop的兼容性极好,非常适合于存储半规则数据(灵活.可扩展性强.大数据存储).基于Hadoop的mapreduce + Hbase存储,非常适合处理大数据. Hbase基本使用示例: import java.io.IOException; import java.util.Array…
1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实现,它利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为协同服务. 2. HBase的表结构 HBase以表的形式存储数据.表有行和列组成.列划分为若干个列族/列簇(column family). Row Key colu…
转自:http://www.ibm.com/developerworks/cn/java/j-lo-HBase/index.html 高性能 HBase 数据库 本文首先介绍了 HBase 数据库基本原理及专用术语,然后介绍了 HBase 数据库发布的操作 API 及部分示例,重点介绍了 Scan 方法的操作方式,接着介绍了检索 HBase 数据库时的优化方案,最后通过一个示例总结了实际项目中遇到的检索速度慢的解决方案. HBase 数据表介绍 HBase 数据库是一个基于分布式的.面向列的.主…
HBase Coprocessor 剖析与编程实践 1.起因(Why HBase  Coprocessor) HBase作为列族数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执行求和.计数.排序等操作.比如,在旧版本的 (<0.92)Hbase中,统计数据表的总行数,需要使用Counter方法,执行一次MapReduce Job才能得到.虽然HBase在数据存储层中集成了MapReduce,能够有效用于数据表的分布式计算.然而在很多情况下,做一些简单的相加或者聚合 计算的时候,如…
HBase简介 HBase – Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群. HBase是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为其文件存储系统,HBase利用Hadoop HDFS作为其文件存储系统:Google运行MapReduce来处理Bigtable中的海量数据,HBase同样利用Hadoop MapReduce来处理HB…
一.服务端调优 1.参数配置 1).hbase.regionserver.handler.count:该设置决定了处理RPC的线程数量,默认值是10,通常可以调大,比如:150,当请求内容很大(上MB,比如大的put.使用缓存的scans)的时候,如果该值设置过大则会占用过多的内存,导致频繁的GC,或者出现OutOfMemory,因此该值不是越大越好. 2).hbase.hregion.max.filesize :配置region大小,0.94.12版本默认是10G,region的大小与集群支持…
1.hbase client配置参数 超时时间.重试次数.重试时间间隔的配置也比较重要,因为默认的配置的值都较大,如果出现hbase集群或者RegionServer以及ZK关掉,则对应用程序是灾难性的,超时和重新等会迅速占满web容器的链接,导致web容器停止服务,关于socket的超时时间,有两种:1:建立连接的超时时间:2:读数据的超时时间. 可以配置如下几个参数: 1. hbase.rpc.timeout:rpc的超时时间,默认60s,不建议修改,避免影响正常的业务,在线上环境刚开始配置的…
原文地址:https://www.cnblogs.com/ballwql/p/hbase_data_transfer.html 一.前言 HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分为以下几类: 图1.HBase数据迁移方案 从上面图中可看出,目前的方案主要有四类,Hadoop层有一类,HBase层有三类.下面分别介绍一下. 二.Hadoop层数据迁移 2.1 方案介绍 Hadoop层的数据迁移主要用到DistCp(Distributed Copy), 官方描述是:DistCp…
学习参考这篇文章: http://www.shareditor.com/blogshow/?blogId=96 机器学习.数据挖掘等各种大数据处理都离不开各种开源分布式系统, hadoop用于分布式存储和map-reduce计算, spark用于分布式机器学习, hive是分布式数据库, hbase是分布式kv系统, 看似互不相关的他们却都是基于相同的hdfs存储和yarn资源管理, 本文通过全套部署方法来让大家深入系统内部以充分理解分布式系统架构和他们之间的关系. 下载了 Hadoop had…
原文地址: http://mp.weixin.qq.com/s?__biz=MjM5ODYxMDA5OQ==&mid=2651959906&idx=1&sn=2cbdc66cfb5b53cf4327a1e0d18d9b4a&chksm=bd2d07be8a5a8ea86dc3c04eced3f411ee5ec207f73d317245e1fefea1628feb037ad71531bc&mpshare=1&scene=23&srcid=021695B…
1.Hive和HBase的区别 1)hive是sql语言,通过数据库的方式来操作hdfs文件系统,为了简化编程,底层计算方式为mapreduce. 2)hive是面向行存储的数据库. 3)Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑. 4)HBase为查询而生的,它通过组织起节点內所有机器的內存,提供一個超大的內存Hash表 . 5)hbase不是关系型数据库,而是一个在hdfs上开发的面向列的分布式数据库,不支持sql. 6)hbase是物理表,…
HBase为筛选数据提供了一组过滤器,通过这个过滤器可以在HBase中的数据的多个维度(行,列,数据版本)上进行对数据的筛选操作,也就是说过滤器最终能够筛选的数据能够细化到具体的一个存储单元格上(由行键,列明,时间戳定位).通常来说,通过行键,值来筛选数据的应用场景较多. 1. RowFilter:筛选出匹配的所有的行,对于这个过滤器的应用场景,是非常直观的:使用BinaryComparator可以筛选出具有某个行键的行,或者通过改变比较运算符(下面的例子中是CompareFilter.Comp…
转自:http://www.chinastor.com/a/hbase/0G3Z532014.html Hive是什么? Apache Hive是一个构建于Hadoop(分布式系统基础架构)顶层的数据仓库,注意这里不是数据库.Hive可以看作是用户编程接口,它本身不存储和计算数据:它依赖于HDFS(Hadoop分布式文件系统)和MapReduce(一种编程模型,映射与化简:用于大数据并行运算).其对HDFS的操作类似于SQL—名为HQL,它提供了丰富的SQL查询方式来分析存储在HDFS中的数据:…