学习 HDFS(四):高可用

架构 HDFS 采用了主从(Master/Slave)架构,就不可避免的要面对单点失效(SPOF,Single Point of Failure)的问题。Hadoop 2.X 之后,提供了对高可用(HA)的支持,架构如下所示: 主备切换 在高可用 HDFS 集群中,存在多个 »

学习 HDFS(三):写文件

写流程 HDFS 客户端写流程: 客户端连接 NameNode 请求打开写入文件,NameNode 创建文件元数据。此时,并没有与文件元数据相对应的数据块。 客户端向 NameNode 请求复制管道(Replication Pipeline),并向管道中的第一个 DataNode 写入数据。 复制管道中的第一个 DataNode 又将数据复制到管道下一个 DataNode。 关闭文件。 Java API public »

学习 HDFS(二):读文件

读流程 HDFS 客户端读流程: 客户端连接 NameNode 并指定读取文件所在路径。首先,NameNode 对客户端进行身份认证,通过用户名(弱)或者 Kerberos(强)。然后,NameNode 对客户端进行权限认证。如果文件存在且用户可以访问,NameNode 向客户端返回文件所有数据块的数据块 ID 和数据块所在的 DataNode 主机地址。 通过数据块 ID »

学习 HDFS(一):概览

HDFS 是 Hadoop Distributed File System (Hadoop 分布式文件系统)的缩写,是 Hadoop 核心项目之一(另外两个分别是 YARN 和 MapReduce)。HDFS 提供了高容错、高吞吐、易扩展、高可用的文件系统。 架构 HDFS 是一个主从(Master/Slave) »

学习 Flink(四):水印

要理解水印(Wartermark),首先需要理解三个时间概念: 事件时间(Event Time) 摄入时间(Ingestion Time) 处理时间(Process Time) 时间 事件时间是每一个独立的事件在产生它的设备中发生的时间。以用户行为分析为例,事件时间就是用户访问页面点击按钮时的时间。 摄入时间是事件进入 Flink 的时间。以用户行为分析为例,摄入时间就是 Flink Kafka Connector 从 Kafaka »