Studying!!!
Stay hungry, stay foolish!
展开
-
hbase学习十:客户端实现与Meta表解析
hbase社区的客户端一般是java客户端。HBase也支持Shell交互式客户端。Shell客户端实质是用JRuby(用Java编写的Ruby解释器,方便Ruby脚本跑在JVM虚拟机上)脚本调用官方HBase客户端来实现的。因此,各种客户端的核心实现都在社区Java版本客户端上。客户端访问HBase表数据的全过程如下:步骤1:获取集群的Conf iguration对象。原创 2024-02-28 18:46:53 · 317 阅读 · 0 评论 -
HDFS 之 Topology(Rack) Awareness - 机架感知
机架感知在大型分布式存储系统中非常实用,可以有效保证数据的高可用,同时提升集群稳定性。在HDFS中,也实现了类似Topology Awareness的机制,只不过是采用软件的方式模拟。原创 2024-02-23 18:09:24 · 95 阅读 · 0 评论 -
HBASE学习九:数据写入 -> BulkLoad
在实际生产环境中,有这样一种场景:用户数据位于HDFS中,业务需要定期将这部分海量数据导入HBase系统,以执行随机查询更新操作。鉴于存在上述问题,HBase提供了另一种将数据写入HBase集群的方法——BulkLoad。原创 2024-02-21 21:50:06 · 321 阅读 · 0 评论 -
HDFS 之 数据管理(namespace 和 slaves)
Namespace在HDFS中是一个非常重要的概念,也是有效管理数据的方法。Namespace有很多优点:可伸缩性。使HDFS集群存储能力可以轻松进行水平拓展;系统性能。单点性能受限,影响系统吞吐;隔离性。不同业务类型访问集群有时容易互相干扰,使用多Namespace可以有效管理访问分类。原创 2024-02-07 17:03:32 · 306 阅读 · 1 评论 -
HDFS架构 之 元数据架构解析
FsImage是一种持久化到磁盘上的文件,里面包含了集群大部分的meta数据,持久化的目的主要是为了防止meta数据丢失,也就是在HDFS不可用的情况下还能够保证绝大多数的数据是正常的。这个工作在Namenode服务中有专门的线程去做。FsImage包含了所有在持久化之前Namenode管理的meta信息,加载这些数据时会按照数据类型逐条、串行处理每一条数据,然后填充到Namenode内存中的主体结构FSDirectory中。。具体类型如下所示。原创 2024-02-07 15:32:17 · 861 阅读 · 1 评论 -
HDFS架构 之 服务视图
为实现以上特性,HDFS包含的各个服务模块都是经过精心设计的,HDFS的服务视图如图。HDFS的服务视图包含三大部分:核心服务、公共服务和拓展服务。原创 2024-02-07 15:31:52 · 544 阅读 · 1 评论 -
HDFS HA 之 HA 原理
ZKFC(ZK Failover Controller) 是HA热切换的主要实现者。当工作时,与Namenode(主要是Active和Standby节点)一对一搭配合作。ZKFC的默认实现者是DFSZKFailoverController,运行时需要独立开启一个JVM进程,并且需要和Namenode位于同一节点,这样做的好处是能够“近距离”了解Namenode的健康状态。ZKFC主要由以下几个部分组成。原创 2024-01-31 09:41:30 · 211 阅读 · 0 评论 -
HDFS HA 之 Quorum Journal Manager
通过Secondary namenode 作为备节点,然后冷备namenode数据,为Namenode分担部分压力,主要执行Checkpoint工作。在这种架构体系下,Namenode以单点的形式运行,一旦系统集群出现故障,可用性是致命的,目前基本不使用了。原创 2024-01-29 15:58:30 · 69 阅读 · 0 评论 -
HDFS 之 命令积累
当管理员在 hdfs-site.xml 配置文件中更新了节点的排除列表(exclude list)或包含列表(include list)后,可以运行此命令来应用这些变更,而无需重启整个 HDFS 服务。当编辑日志变得过大时,可以使用 -rollEdits 命令来滚动编辑日志,即关闭当前的编辑日志文件,并开始一个新的编辑日志文件。退役是一个逐渐将节点从集群中移除的过程,该过程中该节点上的数据将被安全地迁移到其他节点。这个输出告诉你当前配置下,失败的存储卷是否可以在不重启 DataNode 的情况下恢复。原创 2024-01-29 11:51:07 · 71 阅读 · 0 评论 -
HBase学习五:运维排障之备份与恢复
在线Snapshot备份与恢复最常用的4个工具是snapshot、restore_snapshot、clone_snapshot以及ExportSnapshot。snapshot,可以为表打一个快照,但并不涉及数据移动。hbase> snapshot 'sourceTable', 'snapshotName' #登录habse shell执行restore_snapshot,用于恢复指定快照,恢复过程会替代原有数据,将表还原到快照点,快照点之后的所有更新将会丢失。原创 2024-01-24 18:14:47 · 452 阅读 · 0 评论 -
HBase学习五:运维排障之复制
在HBase中,"peer"一词通常用于描述参与复制过程的另一个HBase集群。这个术语特别用于HBase的数据复制功能,其中数据从一个集群(称为主集群)复制到另一个集群(称为peer集群或者副本集群)。接收数据: Peer集群接收主集群复制过来的数据变更。数据备份: 作为数据备份,以便在主集群不可用时仍然能够访问数据。读写分离: 可以用于读写分离,将读请求分发到peer集群,减轻主集群的负载。灾难恢复: 在不同的数据中心部署peer集群,用于灾难恢复。原创 2024-01-23 10:12:11 · 344 阅读 · 0 评论 -
HBase学习五:运维排障之宕机恢复
HBase系统中主要有两类服务进程:Master进程以及RegionServer进程。Master主要负责集群管理调度,在实际生产线上并没有非常大的压力,因此发生软件层面故障的概率非常低。RegionServer主要负责用户的读写服务,进程中包含很多缓存组件以及与HDFS交互的组件,实际生产线上往往会有非常大的压力,进而造成的软件层面故障会比较多。原创 2024-01-23 10:06:40 · 319 阅读 · 0 评论 -
HBase学习八: 核心参数配置
参数配置是一个富有技巧性的工作,每个参数的背后都隐藏着对应模块的工作原理,如果不清楚这些工作原理,就没办法真正理解这些参数的核心意义。原创 2024-01-18 20:47:07 · 404 阅读 · 0 评论 -
HBase学习七:Compaction
Compaction是从一个Region的一个Store中选择部分HFile文件进行合并。其目的为了减少 HFile 的个数跟清理掉过期和删除的数据。合并原理是,先从这些待合并的数据文件中依次读出KeyValue,再由小到大排序后写入一个新的文件。之后,这个新生成的文件就会取代之前已合并的所有文件对外提供服务。HBase根据合并规模将Compaction分为两类:Minor Compaction和Major Compaction。原创 2024-01-17 22:25:42 · 504 阅读 · 0 评论 -
HBASE学习一:原理架构详解
HBase 是一款面向列存储,用于存储处理海量数据的 NoSQL 数据库。它的理论原型是Google 的 BigTable 论文。你可以认为 HBase 是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。HBase 的存储是基于HDFS的,HDFS 有着高容错性的特点,被设计用来部署在低廉的硬件上,基于 Hadoop 意味着 HBase 与生俱来的超强的扩展性和吞吐量。HBase 采用的时key/value的存储方式,这意味着,即使随着数据量的增大,也几乎不会导致查询性能的下降。原创 2024-01-17 15:04:34 · 474 阅读 · 0 评论 -
HBase学习六:LSM树算法
随着写入的增加,内存数据会不断地刷新到磁盘上。最终磁盘上的数据文件会越来越多。如果数据没有任何的读取操作,磁盘上产生很多的数据文件对写入并无影响,而且这时写入速度是最快的,因为所有IO都是顺序IO。但是,一旦用户有读取请求,则需要将大量的磁盘文件进行多路归并,之后才能读取到所需的数据。因为需要将那些Key相同的数据全局综合起来,最终选择出合适的版本返回给用户,所以磁盘文件数量越多,在读取的时候随机读取的次数也会越多,从而影响读取操作的性能。原创 2024-01-16 18:42:43 · 341 阅读 · 0 评论 -
HBase学习五:运维排障之负载均衡
在当前的HBase版本中,Region迁移虽然是一个轻量级操作,但实现逻辑依然比较复杂,≈复杂性主要表现在两个方面:其一,Region迁移过程涉及多种状态的改变;其二,迁移过程中涉及Master、ZooKeeper(ZK)以及RegionServer等多个组件的相互协调。在实际执行过程中,Region迁移操作分两个阶段:unassign阶段和assign阶段。原创 2024-01-16 17:59:25 · 209 阅读 · 0 评论 -
HBASE学习四:常用命令汇总梳理(包括数据库、zk、hdfs相关操作与配置)
disable 后才可以 drop 这张表。原创 2024-01-16 17:56:06 · 276 阅读 · 0 评论 -
HBase学习三:集群部署
集群启停顺序:启动Hadoop—>启动HBase—>关闭HBase—>关闭Hadoop。原创 2024-01-16 17:53:44 · 272 阅读 · 0 评论 -
HBase学习二:RegionServer详解
RegionServer是HBase系统中最核心的组件,主要负责用户数据写入、读取等基础操作。RegionServer组件实际上是一个综合体系,包含多个各司其职的核心模块:HLog、MemStore、HFile以及BlockCache。一个RegionServer由一个(或多个)HLog、一个BlockCache以及多个Region组成。其中,HLog用来保证数据写入的可靠性;BlockCache可以将数据块缓存在内存中以提升数据读取性能;原创 2024-01-16 17:50:23 · 427 阅读 · 0 评论 -
HDFS HA 之 集群搭建 - 基于Quorum Journal Manager(hadoop2.7.1)
在Hadoop分布式文件系统(HDFS)中,检查点(Checkpointing)是一个关键的过程,它涉及到将文件系统的命名空间状态持久化到磁盘。这个状态由两部分组成:EditLogs和FsImage。检查点的作用检查点的创建。原创 2024-01-15 16:43:38 · 487 阅读 · 0 评论 -
Hadoop功能与使用详解(HDFS+YARN)
Hadoop是一个开源的分布式计算和存储框架,由Apache基金会开发和维护。Hadoop 为庞大的计算机集群提供可靠的、可伸缩的应用层计算和存储支持,它允许使用简单的编程模型跨计算机群集分布式处理大型数据集,并且支持在单台计算机到几千台计算机之间进行扩展。Hadoop使用Java开发,所以可以在多种不同硬件平台的计算机上部署和使用。其核心部件包括分布式文件系统 (Hadoop DFS,HDFS) 和MapReduce。原创 2023-11-24 20:15:03 · 161 阅读 · 0 评论 -
kafka集群的部署及kafka监控工具
kafka1.kafka介绍2. kafka学习记录(术语)3. kafka集群部署(直接部署在了一台机器上)3.1 安装多节点zookeeper集群3.2 配置kafka集群3.3 启动集群4. 验证部署4.1 测试topic的创建和删除4.1.1 创建topic--->test4.1.2 查看该topic的具体情况4.1.3 删除topic4.2 测试消息的生产与发送4.2.1 创建生产者4.2.2 创建消费者4.2.3 生产者吞吐量测试4.2.4 消费者吞吐量测试5. kafka监控工具Kafk原创 2021-07-30 14:34:53 · 1333 阅读 · 3 评论 -
中间件-Elasticsearch
Elaticsearch简称为ES,ES是一个开源的分布式检索引擎,由java开发并使用。原创 2023-09-04 19:09:57 · 193 阅读 · 0 评论 -
中间件-kafka
kafka架构中包含四大组件:生产者、消费者、kafka集群、zookeeper集群。对照1.3架构理解。brokerkafka 集群包含一个或多个服务器,每个服务器节点称为一个broker。topic每条发布到kafka集群的消息都有一个类别,这个类别称为topic,其实就是将消息按照topic来分类,topic就是逻辑上的分类,同一个topic的数据既可以在同一个broker上也可以在不同的broker结点上。partition。原创 2023-08-30 23:56:19 · 126 阅读 · 0 评论 -
中间件-zookeeper
本文借鉴了无糖可乐没有灵魂的文章, 特此鸣谢!!!原创 2023-08-26 12:18:40 · 173 阅读 · 0 评论