HBase入门(一)
基础知识
在hadoop中 ,NameNode管理元数据,DataNode存储实际数据。
在HBase中,master管理员数据,RegionServer存储实际数据。
元数据定义:描述数据的属性信息,如数据的位置等
HBase优点
- 跟hadoop MapReduce结合起来非常有利于数据分析
- 利用hadoop文件系统即便是在普通硬件上也支持水平扩展
- HBase与Hadoop的其他子项目结合起来能够在数据分析领域创造奇迹。
HBase的组件
- HFile
- Region
- 提供分布式,高可用,以及在HBase集群中对列和列族的存储
- Region组成了HBase的表。store存储了每个表中的列族
- AssighmentManager(分配管理)来进行region分配
横向扩展时先添加一个成员到集群中,然后再新添加的节点上启动DataNode和RegionServer进程
HBase的读写过程
- 写:client-------->Put/Delete------>RegionServer-------->WAL(Hlog)-------->RegionServer------->Memstore---------->RegionServer--------->client
- MemStore-----flush---->HFile
- 读:client-------->Get/scan------>任意一个模块直接返回结果
HBase的必备条件和容量规划
- 启动并运行hadoop集群
- 集群网路和机器必须支持正向和反向的DNS解析
-【正向解析】通过主机名找到该机器的ip地址
-【反向解析】通过IP地址找到一台机器的主机名 - 集群上的时间必须是同步的
- 修改操作系统的相关参数 Nproc:单个用户同一时刻的最大进程数量,Ulimit:单个用户同时打开的最大文件数。在/etc/security/limit.comf中
- NTP 、java 、ssh(实现简单服务器到主机的通信) 、linux、 etc/hosts