1)zookeeper中有那些类型的节点, 各个类型有什么特点
- 持久节点(Persistent Nodes):创建后一直存在,直到被显式删除。
- 临时节点(Ephemeral Nodes):与客户端会话相关联,客户端会话结束或失效时,节点自动删除。
- 顺序节点(Sequential Nodes):在节点路径的末尾追加一个单调递增的数字后缀,确保节点在创建时按顺序排列。
2)zookeeper中如何进行选举
ZooKeeper中的选举是通过ZAB协议(ZooKeeper Atomic Broadcast)实现的。选举过程如下:
- 所有服务器都向集群中的其他服务器发送投票请求。
- 收到投票请求的服务器会对请求进行投票,并将投票结果发送给其他服务器。
- 当某个服务器收到超过半数的投票后,它就成为了Leader。
3)zookeeper中watch机制
ZooKeeper中的Watch机制是一种事件通知机制,用于实现分布式系统中的数据变更通知。当一个客户端注册了一个Watch监听某个节点时,如果该节点发生了变化,ZooKeeper会通知该客户端。
4)hadoop的三大发行版本, 各有什么优缺点
Hadoop有三大发行版本,分别是Apache Hadoop、Cloudera CDH和Hortonworks HDP。
- Apache Hadoop是Hadoop的官方版本,具有广泛的社区支持和稳定性。
- Cloudera CDH是由Cloudera公司提供的Hadoop发行版本,提供了更多的企业级功能和支持。
- Hortonworks HDP是由Hortonworks公司提供的Hadoop发行版本,注重与开源社区的合作和创新。
5)hadoop的架构, 各个架构主要有那些节点构成, 以及每个节点有什么作用
HDFS(Hadoop Distributed File System)和YARN(Yet Another Resource Negotiator)和MapReduce。
HDFS主要包括NameNode(管理文件系统命名空间)、DataNode(存储实际数据)、Secondary NameNode(辅助管理NameNode的元数据)等节点;
- NameNode:负责管理文件系统的命名空间和存储元数据。
- DataNode:负责存储和管理实际的数据块。
- SecondaryNameNode:辅助NameNode进行元数据备份和合并。
YARN包括ResourceManager(资源管理器)、NodeManager(节点管理器)等节点。
- ResourceManager:负责资源的分配和调度。
- NodeManager:负责管理单个节点上的资源和任务。
6)hdfs的三个机制: 心跳机制 负载均衡机制 副本机制
- 心跳机制:DataNode定期向NameNode发送心跳信号,用于检测DataNode的健康状态。
- 负载均衡机制:NameNode会根据DataNode上的存储情况,将数据块进行迁移,以实现集群的负载均衡。
- 副本机制:HDFS会将数据块复制多个副本,并将这些副本存储在不同的DataNode上,以提高数据的可靠性和容错性。
7)hdfs的读写数据的流程
- 写数据: