HBase 复习 ---- chapter07
HBase 复习 ---- chapter07
-
部署 HBase(运维)
1:部署 HBase 实际是部署了三个技术(hadoop + zookeeper + hbase)
hadoop = hdfs + mapreduce + common
hdfs = namenode + datanode + secondaryNamenode
yarn = ResourceManager(JobTracker)+ NodeManager(TaskTracker)
zookeeper = zookeeper集合 + zookeeper客户端
zookeeper集合 = zookeeper Leader + zookeeper Flowers = QuorumPeerMain
HBase = HMaster + HRegionServer
namenode + datanode + secondaryNamenode
ResourceManager + NodeManager
QuorumPeerMain
HMaster+HRegionServer -
这个八个技术如何进行部署呢?
niit01-master: namenode+datanode+nodemanager
niit02-master: SecondaryNamenode+datanode+nodemanager
niit03-master: ResourceManager+datanode+nodemanager -
上面那些组件要求内存+CPU?
namenode secondaryNamenode QuorumPeerMain HMaster HRegionServer nodemanager -
上面那些组件要求磁盘?
datanode HRegionServer nodemanager -
SLA:服务级别协议是指提供服务的企业与客户之间就服务的品质、水准、性能等方面所达成的双方共同认可的协议或契约。
-
集群类型:从小到大(我们书上讲的集群类型是比较原始的,真实的和这个会有差距)
-
原型集群:(cpu拥有 4–6 核,24–32 GB RAM 和 4 T SATA 磁盘)
原型集群是没有严格的 SLA 的集群,可以将其关闭。
它通常少于 10 个节点。
可以在原型集群中的单个节点上并置多个服务。 -
小型生产集群(10-20 台服务器)(cpu拥有 6–8 核,32–64 GB RAM 和 8 T SATA 磁盘 双电源 RAID:提高磁盘利用率+容错能力 ) 少于 10 个从节点很难进行操作。
如果要部署生产集群,请考虑使用相对更好的主节点硬件。 双电源和 RAID 可能已成为日常工作。
流量/工作量不多的小型生产集群可以并置服务。
对于小型集群,单个 HBase Master 可以。
单个 ZooKeeper 可以用于小型集群,并且可以与 HBase Master 并置。如果运行 NameNode和 JobTracker 的主机 足够强大,则也可以在其上放置 ZooKeeper 和 HBase Master。 这样可以省去您购买额外机器的麻烦。
单个 HBase Master 和 ZooKeeper 限制了可维护性 -
中型生产集群(最多约 50 台服务器 20-50)(cpu拥有 8–10 核,32–64 GB RAM 和 8 T SATA 磁盘 双电源 RAID:提高磁盘利用率+容错能力 )
最多可能有 50 个节点属于此类别。
出于性能原因,我们建议您不要并置 HBase 和 MapReduce。如果并置,请在单独的硬件上部署NameNode 和 JobTracker。
应当部署三个 ZooKeeper 和三个 HBase 主节点,尤其是在生产系统中。
不要为 NameNode 和 Secondary NameNode 的硬件而便宜。 -
大型生产集群(>=50 台服务器)(cpu拥有 10–12 核,64–128 GB RAM 和 16 T SATA 磁盘 双电源 RAID:提高磁盘利用率+容错能力 )
中型集群的所有情况都适用,只是您可能需要五个可以与 HBase Master 搭配使用的ZooKeeper 实例。
确保 NameNode 和 Secondary NameNode +HregionServer有足够的内存,具体取决于群集的存储容量。 -
hbase 的配置
环境变量:JAVA_HOME HBASE_CLASSPATH
内存: HBASE_HEAPSIZE HBASE_OPTS
其他设置:HBASE_MANAGES_ZK=false -
设置 SSH 免密登录
A 主机免密登录 B 主机
A 主机操作:
ssh-keygen -t rsa:生成公钥和密钥
ssh-copy-id B主机:A 主机将公钥发送给 B 主机
A 主机连接 B 主机,第一次需要密码验证,验证通过,后期 A 主机连接 B 主机就不要密码验证了。 -
修改主机名
vi /etc/hosts
- 创建用户(root 用户)
useradd hadoop
passwd Hadoop
- 复制 Hadoop + HBase
- 修改
HBASE_HOME/conf/regionserves - 启动
- 删除节点:
方式一:
kill -9 regionserver process number(不推荐)
方式二:
hbase-daemon.sh stop regionserver(也不推荐,好一点)
方式三:
graceful_stop.sh (推荐)
步骤介绍:
1、首先停止负载均衡
2、将节点名称上的数据移动到其他节点
3、关闭服务
- 在不停止服务器在线业务的情况下,调整配置参数.
cd $HBASE_HOME/bin
./graceful_stop.sh --restart --reload debug Node name
参数介绍:
restart:删除数据后重新启动
reload:移动数据后停止服务
debug:输出有关执行过程的信息
Node Name:指定要停止的节点
- 故障排除:
Hbase fsck
HBase 提供了 HBCK 工具来检查数据一致性。
数据一致性是指:
1、将每个区域正确分配给一个区域服务器,并且该区域的位置信息和状态正确。
2、每个表都是完整的,每个可能的行键都可以对应一个唯一的区域。
3、与查询相关的命令收集的用法。
相关文章:
HBase 复习 ---- chapter07
HBase 复习 ---- chapter07部署 HBase(运维) 1:部署 HBase 实际是部署了三个技术(hadoop zookeeper hbase) hadoop hdfs mapreduce common hdfs namenode datanode secondaryNamenode yarn ResourceManager&a…...
跟我一起写Makefile--个人总结
此篇笔记是根据陈皓大佬《跟我一起写Makefile》学习所得 文章目录换行符clean变量make的自动推导另类风格的Makefile清空目标文件的规则cleanMakefile总述显示规则隐晦规则变量的定义注释引用其它的Makefile环境变量MAKEFILESmake的工作方式书写规则规则举例规则的语法在规则中…...
设计模式之为什么要学好设计模式
目录1 回顾软件设计原则2 设计模式总览3 经典框架都在用设计模式解决问题1 回顾软件设计原则 不用设计模式并非不可以,但是用好设计模式能帮助我们更好地解决实际问题,设计模式最重要的是解耦。设计模式天天都在用,但自己却无感知。我们把设…...
大数据时代的小数据神器 - asqlcell
自从Google发布了经典的MapReduce论文,以及Yahoo开源了Hadoop的实现,大数据这个词就成为了一个行业的热门。在不断提高的机器性能和各种层出不穷的工具框架加持下,数据分析开始从过去的采样抽查变成全量整体,原先被抽样丢弃的隐藏…...
【呕心沥血】整理全栈自动化测试技术(三):如何编写技术方案
前面两篇笔记我介绍了自动化测试前期调研注意事项和前置准备阶段切入点,有同学在后台提问: “做完前期的调研和准备工作,领导要求写一个落地方案并评审,自动化测试的落地方案该怎么写”? 首先这个要求我觉得挺正常&a…...
67. 二进制求和
文章目录题目描述竖式模拟转换为十进制计算题目描述 给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。 示例 1: 输入:a “11”, b “1” 输出:“100” 示例 2: 输入:a “1010”, b “1011” …...
1555数列极差(队列 优先队列 )
目录 题目描述 解题思路 代码部分 题目描述 在黑板上写了N个正整数作成的一个数列,进行如下操作:每一次擦去其中的两个数a和b,然后在数列中加入一个数a*b1,如此下去直至黑板上剩下一个数,在所有按这种操作方式最后得…...
代码随想录算法训练营第二十七天 | 93.复原IP地址,78.子集,90.子集II
一、参考资料复原IP地址题目链接/文章讲解:https://programmercarl.com/0093.%E5%A4%8D%E5%8E%9FIP%E5%9C%B0%E5%9D%80.html 视频讲解:https://www.bilibili.com/video/BV1XP4y1U73i/子集题目链接/文章讲解:https://programmercarl.com/0078.…...
jvm类加载器
概念 Bootstarp ClassLoader (引导类加载器) 加载String等核心的类Ext ClassLoader (拓展类加载器)System ClassLoader (系统类加载器) 加载用户自定义的类 关系 BootstrapClassLoader 包含 ExtClassLoaderExtClassLoader 包含 SystemClassLoader彼此是包含关系,不…...
Rust学习入门--【7】Rust 数据类型
类型系统 对于任何一门语言都是重中之重,因为它体现了语言所支持的不同类型的值。 类型系统 也是 IT 初学者最难啃的三座大山之一,而类型系统之所以难以理解,主要是没有合适的现成的参考体系。 我们说类型系统 存在的目的,就是 …...
阅读MySQL必知必会,查缺补漏
MySQL自带数据库 information_schema:是MySQL自带的数据库,主要保持MySQL数据库服务器的系统信息,比如数据库的名称,数据库表的名称,字段名称,存储权限等。 performance_schema:是MySQL系统自…...
MySQL数据库10——多表连接查询
数据如果在多个表里面,需要进行连接查询。 一般在pandas里面merge合并会用到一个索引,按这个索引的规则进行合并叫做有规则的等值连接。若不按规则连接,遍历两两组合的所有可能性,叫做笛卡尔积。 笛卡尔积连接 通常人们都会设置…...
华为OD机试 - 括号检查(Python)| 真题含思路
括号检查 题目 现有一字符串 仅由 (,),{,},[,] 六种括号组成,若字符串满足以下条件之一,则为无效字符串 任意类型的左右括号数量不相等 存在未按正确顺序(先左后右)闭合的括号, 输出括号的最大嵌套深度 若字符串无效则输出 0 0 <= 字符串长度 <= 100000 输入 一个只…...
安全渗透测试中的一款免费开源的超级关键词URL采集工具
安全渗透测试中的一款免费开源的超级关键词URL采集工具。 #################### 免责声明:工具本身并无好坏,希望大家以遵守《网络安全法》相关法律为前提来使用该工具,支持研究学习,切勿用于非法犯罪活动,对于恶意使…...
数据资产管理实践白皮书(6.0版)解读
目录 第一章数据资产管理概述 ( 一 ) 数据资产管理和数据要素的关系...
c/c++开发,无可避免的函数指针使用案例
一、函数指针简介 函数指针是指指向函数而非指向对象的指针。像其他指针一样,函数指针也指向某个特定的类型。函数类型由其返回类型以及形参表确定,而与函数名无关。例如: char* (*pf1)(char * p1,char *p2); 这是一个函数指针,其…...
QT(12)-QThreadPool
1 简介 QThreadPool是Qt框架中的一个类,提供了一组工作线程池。该线程池自动管理一组工作线程,在线程可用时分配任务。使用线程池的主要优点是,它可以减少创建和销毁线程的开销,因为可以重复使用线程。 线程池设计用于场景中&am…...
【Java|golang】1138. 字母板上的路径
我们从一块字母板上的位置 (0, 0) 出发,该坐标对应的字符为 board[0][0]。 在本题里,字母板为board [“abcde”, “fghij”, “klmno”, “pqrst”, “uvwxy”, “z”],如下所示。 我们可以按下面的指令规则行动: 如果方格存…...
Flink 1.14从简单到源码第三讲
文章目录 1.flink多流操作Api1.1split 分流操作1.2.侧输出流1.3.connect 连接操作1.4.union 操作1.5 coGroup 协同分组1.6 join1.7 broadcast 广播2.process3.并行度和Api3.1 任务提交简单流程3.2 task与算子链4. Flink 时间相关(窗口计算)4.1时间语义(窗口计算)4.2 新版api指定…...
淘宝API接口系列,获取购买到的商品订单列表,卖出的商品订单列表,订单详情,订单物流,买家信息,收货地址列表,买家token
custom自定义API操作buyer_order_list获取购买到的商品订单列表buyer_order_detail获取购买到的商品订单详情buyer_order_express获取购买到的商品订单物流buyer_address_list收货地址列表buyer_address_add添加收货地址buyer_info买家信息buyer_token买家tokenseller_order_li…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
Linux链表操作全解析
Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...
【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...
JAVA后端开发——多租户
数据隔离是多租户系统中的核心概念,确保一个租户(在这个系统中可能是一个公司或一个独立的客户)的数据对其他租户是不可见的。在 RuoYi 框架(您当前项目所使用的基础框架)中,这通常是通过在数据表中增加一个…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...
五子棋测试用例
一.项目背景 1.1 项目简介 传统棋类文化的推广 五子棋是一种古老的棋类游戏,有着深厚的文化底蕴。通过将五子棋制作成网页游戏,可以让更多的人了解和接触到这一传统棋类文化。无论是国内还是国外的玩家,都可以通过网页五子棋感受到东方棋类…...
aardio 自动识别验证码输入
技术尝试 上周在发学习日志时有网友提议“在网页上识别验证码”,于是尝试整合图像识别与网页自动化技术,完成了这套模拟登录流程。核心思路是:截图验证码→OCR识别→自动填充表单→提交并验证结果。 代码在这里 import soImage; import we…...
PH热榜 | 2025-06-08
1. Thiings 标语:一套超过1900个免费AI生成的3D图标集合 介绍:Thiings是一个不断扩展的免费AI生成3D图标库,目前已有超过1900个图标。你可以按照主题浏览,生成自己的图标,或者下载整个图标集。所有图标都可以在个人或…...
Linux-进程间的通信
1、IPC: Inter Process Communication(进程间通信): 由于每个进程在操作系统中有独立的地址空间,它们不能像线程那样直接访问彼此的内存,所以必须通过某种方式进行通信。 常见的 IPC 方式包括&#…...
