zk客户端向服务器数据写流程

客户端 向服务器数据写流程

1.当clinet向zookeeper的某个server1上写数据,发送一个写请求

2.如果接收到请求的不是Leader,那么server1会把请求转给Leader,因为zookeeper的集群中只有一个是Leader,这个Leader会把写请求广播给各个server,当各个server写成功后就会通知Leader.

3.当Leader收到大多数Server写成功了,那么说明数据是写成功了,如果此时集群的节点是3个的话,只要有两个集群写成功后,就认为是成功了,写成功后,Leader会告知向他提交申请的server1,

4.Server1会进一步将通知Client写成功, 这时就认为写是成功了
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在 HDFS 中,NameNode 的主要功能是什么? 1 我们把目录结构及文件分块位置信息叫做元数据。Namenode 负责 维护整个 hdfs 文件系统的目录树结构,以及每一个文件所对应的 block 块信息(block 的 id,及所在的 datanode 服务器) 。 2 Namenode 节点负责确定指定的文件块到具体的 Datanode 结点的 映射关系。在客户端数据节点之间共享数据 3 管理 Datanode 结点的状态报告, 包括 Datanode 结点的健康状态报 告和其所在结点上数据块状态报告,以便能够及时处理失效的数据结 点。 NameNode 与 SecondaryNameNode 的区别与联系? 1. NameNode 负责管理整个文件系统的元数据, 以及每一个路径 (文 件)所对应的数据块信息。2.SecondaryNameNode 主要用于定 期 合 并 命 名 空 间 镜 像 和 命 名 空 间 镜 像 的 编 辑 日 志 。 1.SecondaryNameNode 中保存了一份和 namenode 一致的镜 像文件(fsimage)和编辑日志(edits) 。2.在主 namenode 发生 故障时(假设没有及时备份数据) ,可以从 SecondaryNameNode HDFS 读数据流程? 1. 跟 namenode 通信查询元数据,找到文件块所在的 datanode 服务 器 2.挑选一台 datanode(就近原则,然后随机)服务器,请求建立 socket 流 3.datanode 开始发送数据(从磁盘里面读取数据放入流, 以 packet 为单位来做校验)4.客户端以 packet 为单位接收,先在 本地缓存,然后写入目标文 Hadoop 集群中 Hadoop 需要启动哪些进程, 它们的作用分别是什么? 1.NameNode 它是 hadoop 中的主服务器,管理文件系统名称空间和 对 集 群 中 存 储 的 文 件 的 访 问 , 保 存 有 metadate 。 2.SecondaryNameNode 它不是 namenode 的冗余守护进程,而是 提供周期检查点和清理任务。 帮助 NN 合并 editslog, 减少 NN 启动时 间。3.DataNode 它负责管理连接到节点的存储(一个集群中可以有 多个节点) 。每个存储数据的节点运行一个 datanode 守护进程。 4.ResourceManager(JobTracker) JobTracker 负责调度 DataNode 上的工作。每个 DataNode 有一个 TaskTracker,它们执行实际工作。5.NodeManager(TaskTracker) 执行任务 6.DFSZKFailoverController 高可用时它负责监控 NN 的状 态,并及时的把状态信息写入 ZK。它通过一个独立线程 周期性的调用 NN 上的一个特定接口来获取 NN 的健康状态。FC 也有 选择谁作为 ActiveNN 的权利,因为最多只有两个节点,目前选择策略 还比较简单(先到先得,轮换)7.JournalNode 高可用情况下存放 namenode 的 editlog 文件. 在 CentOS 环境下,按照伪分布方式安装和配置 Hadoop 平台的主要 过程。 1. hadoop 安装包下载 2、hadoop 安装包解压 3、hadoop 伪分布式 环境搭建环境搭建步骤如下:1、将 hadoop 安装目录添加到系统环 境变量(~/.bash_profile)2、配置 hadoop 环境的配置文件 hadoop-env.sh3、配置 hadoop 核心文件 core-site.xml4、配置 HDFS 文件 hafs-site.xml Mapreduce 中,Partitioner 操作的作用? MapReduce 提供 Partitioner 接口,它的作用就是根据 key 或 value 及 reduce 的数量 来决定当前的这对输出数据最终应该交由哪个 reduce task 处理。默认 对 key hash 后再以 reduce task 数量取模。默认的取模方式只是为了 平均 reduce 的处理能力, 如果用户自己对 Partitioner 有需求, 可以订 制并设置到 job 上。 HDFS 中的数据流程。 (1) Client 向 NameNode 发起文件写入的请求。 (2) NameNode 根 据文件大小和文件块配置情况,返回给 Client 它所管理部分 DataNode 的信息。 (3) Client 将文件划分为多个 Block,根据 DataNode 的地址信息,按顺序写入到每一个 DataNode

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值