一、Hbase的架构架构角色RegionServerRegionServer为Region的管理者,其实现类为HRegionServer,主要作用如下:对于数据的操作:get,put,delete;对于Region的操作:splitRegion、compactRegion。MasterMaster是所有RegionServer的管理者,其实现类为HMaster,主要作用如下:对于表的操作:create,delete,alter对于RegionServer的操作:分配regions到每个RegionServer,监控每个RegionServer的状态,负载均衡和故障转移。ZookeeperHBa
Hbase架构图image.pngHbase写操作image.png执行put命令,put'namspace:table','rowkey','clonmu','value'1.客户端首先访问zookeeper,获取存储元数据meta表所在的ReginServer地址.2.客户端去访问该rs上的元数据,获取存储表的region分区所在的ReginServer地址.3.客户端到对应rs从节点,将数据存储到该节点,先存在memstore内image.png对于client来说,只需要将数据写入到memstore中就可以了,这也是Hbase快的原因4.habse会先将对数据的读写等操作记录到wal日
作者:禅与计算机程序设计艺术1.简介2019年初,ApacheHBase项目启动了9个年头。从最初仅仅是Hadoop生态圈中的一个组件,逐渐演变成越来越多的大数据存储解决方案的一部分。在快速发展的同时,也带来了许多技术上的挑战,如一致性、性能等方面的问题。而在这样的背景下,HBase团队发布了《ApacheHBaseEssentials:TheDefinitiveGuidetoApacheHadoop’sDistributedDatabase》一书,为用户提供了一个系统的、全面的学习指南。本文将围绕这个书中所介绍的相关知识点和技术实现,探讨一下对HBase集群进行持续备份和恢复的策略。在HBa
在安装前需要安装好JDK、Hadoop以及Zookeeper,JDK版本为1.8、Hadoop版本为2.7.4以及Zookeeper的版本为3.4.10。4.1.下载下载地址:Indexof/dist/hbase本次学习版本为:hbase-1.2.1-bin.tar.gz4.2.安装步骤上传安装包至hadoop01节点的/opt/software目录下解压hbase-1.2.1-bin.tar.gz至/opt/servers目录下,并将改名为hbase//解压hbase-1.2.1-bin.tar.gztar-xzvf/opt/software/hbase-1.2.1-bin.tar.gz-C
揭开Hbase的神秘面纱1.1欢迎使用ApacheHbase1.1.1什么是Hbase?1.1.2Hbase的前世今生1.1.3HBase的技术选型?1.1.3.1不适合使用HBase的场景1.1.3.2适合使用HBase的场景1.1.4HBase的特点1.1.4.1HBase的优点1.1.4.2HBase的缺点1.1.5HBase设计架构1.2附录1.2.1功能模块与职责详情1.2.2HBase中的基本概念1.2.3本文中涉及的思维导图原件下载1.1欢迎使用ApacheHbase1.1.1什么是Hbase?ApacheHBase是Hadoop数据库,一种分布式,可扩展的大数据存储。1.1.2
1、基本操作1.1、进入HBase客户端命令行前提是先启动hadoop集群和zookeeper集群。bin/hbaseshell1.2、查看帮助命令helphelp查看指定命令的语法规则查看list_namespace的用法(‘记得加单引号’)help'list_namespace'2、namespace我们首先查看现在有哪些命名空间,使用指令:list_namespace注意:我的hadoop版本3.3.0,HBase2.4.17,两者兼容性有问题,我们直接使用上面的命令会报错,需要做两点:1.确保hadoop退出安全模式hadoopdfsadmin-safemodeleave2.在hbas
3.atlas的使用Atlas的使用相对简单,其主要工作是同步各服务(主要是Hive)的元数据,并构建元数据实体之间的关联关系,然后对所存储的元数据建立索引,最终未用户提供数据血缘查看及元数据检索等功能。Atlas在安装之初,需手动执行一次元数据的全量导入,后续Atlas便会利用HiveHook增量同步Hive的元数据。手动导入hbase的元数据,与spark任务相关联获取数据血缘关系。3.1.Atlas集成hive3.1.1.修改atlas配置修改/opt/atlas/conf/atlas-application.properties配置文件中的以下参数#########HiveHookCo
目录一、前言安装包二、linux配置1、配置网络参数2、永久关闭防火墙3、添加IP地址配置映射表4、SSH免密登录设置5、配置时间同步三、准备工作四、jdk安装五、Zookeeper集群部署1、Zookeeper集群启动脚本编写 六、Hadoop高可用集群部署1、安装配置 2、修改配置文件(1)修改hadoop-env.sh文件(2)修改core-site.xml文件(3)修改hdfs-site.xml文件(4)修改mapred-site.xml文件(5)修改yarn-site.xml文件(6)修改slaves文件(7)分发节点3、启用Hadoop高可用集群七、Spark高可用集群部署1、安装
hbase优化一.读优化1.客户端: scan。cache设置是否合理:大scan场景下将scan缓存从100增大到500或者1000,用以减少RPC次数 使用批量get进行读取请求 离线批量读取请求设置禁用缓存,scan.setBlockCache(false) 以指定列族或者列进行精确查找的尽量指定查找2.服务器: 读请求是否均衡::RowKey必须进行散列化处理(比如MD5散列),同时建表必须进行预分区处理 BlockCache是否设置合理:VM内存配置量3.列簇:是否过多、是否使用布隆过滤器:任何业务都应该设置Bloomfilter,通常设置为row就可以,除非确认业务随机查询类型为r
在Python模块中happybase,我可以检索具有以给定字符串开头的行键的所有行(即,使用部分行键进行搜索)。假设我有一个格式为(ID|TYPE|DATE)的rowkey,我可以通过以下方式找到ID为1且TYPE为A的所有行:importhappybaseconnection=happybase.Connection('hmaster-host.com')table=connection.table('table_name')forkey,dataintable.scan(row_prefix="1|A|"):printkey,data这是我目前拥有的完全客户端Java程序,适用于