- 博客(84)
- 资源 (1)
- 收藏
- 关注
原创 HDFS 系列七:HDFS HA 高可用
文章目录7. HDFS HA 高可用7.1 HA 概述7.2 HDFS-HA 工作机制7.3 HDFS-HA 手动故障转移7.3.1 HDFS-HA 工作要点7.3.2 环境准备7.3.3 集群规划7.3.4 配置 HDFS-HA 集群(以三台为例)7.3.5 启动 HDFS-HA 集群7.3.6 HDFS-HA 集群手动故障转移7.4 HDFS-HA 自动故障转移7.4.1 工作要点7.4.2 ...
2020-03-08 14:42:38
828
1
原创 HDFS 系列六:DataNode 工作机制
文章目录6. HDFS 其他功能6.1 集群间数据拷贝6.2 Hadoop 存档6.2.1 理论概述6.2.2 案例实操6.3 快照管理6.3.1 基本语法6.3.2 案例实操6.4 回收站6.4.1 默认回收站6.4.2 启用回收站6.4.3 查看回收站6.4.4 修改访问垃圾回收站用户名称6.4.5 进入回收站6.4.6 恢复回收站数据6.4.7清空回收站6. HDFS 其他功能6.1 集...
2020-03-08 14:41:17
483
原创 HDFS 系列五:DataNode 工作机制
文章目录5. DataNode 工作机制5.1 DataNode工作机制5.2 数据完整性5.3 掉线时限参数设置5.4 DataNode 的目录结构5.4.1 查看 DataNode 的版本号5.4.2 DataNode 版本号具体解释5.4.3 DataNode 数据块版本号5.4.4 DataNode 数据块版本号的具体解释5.5 服役新数据节点5.5.1 需求5.5.2 环境准备5.5.3...
2020-03-08 14:40:36
513
原创 HDFS 系列四:NameNode 工作机制
文章目录4. NameNode 工作机制4.1 NameNode、Fsimage 、Edits 和 SecondaryNameNode 概述4.2 NameNode & Secondary NameNode 工作机制4.2.1 第一阶段:Namenode 启动4.2.2 第二阶段:Secondary NameNode 工作4.2.3 web 端访问 SecondaryNameNode4.2...
2020-03-08 14:39:41
377
原创 HDFS 系列三:HDFS 数据流
文章目录3. HDFS 数据流3.1 HDFS 写数据流程3.1.1 剖析文件写入3.1.2 网络拓扑概念3.1.3 机架感知(副本节点选择)3.1.3.1 低版 本Hadoop 副本节点选择3.1.3.2 Hadoop 2.9.2 副本节点选择3.2 HDFS 读数据流程3. HDFS 数据流3.1 HDFS 写数据流程3.1.1 剖析文件写入Client 向 NameNode 通信...
2020-03-08 14:38:44
196
原创 HDFS 系列二:HFDS 命令行操作
文章目录2. HFDS 命令行操作2.1 基本语法2.2 参数大全2.3 常用命令实操2.3.1 -help:输出这个命令参数2.3.2 -ls: 显示目录信息2.3.3 -mkdir: 在hdfs上创建目录2.3.4 -moveFromLocal: 从本地剪切粘贴到hdfs2.3.5 -moveToLocal: 从hdfs剪切粘贴到本地2.3.6 --appendToFile: 追加一个文件到已...
2020-03-08 14:37:40
1370
原创 HDFS 系列整理(全)
文章目录1. HDFS 概念1.1 概念1.2 组成1.3 HDFS 文件块大小2. HFDS命令行操作2.1 基本语法2.2 参数大全2.3 常用命令实操2.3.1 -help:输出这个命令参数2.3.2 -ls: 显示目录信息2.3.3 -mkdir: 在hdfs上创建目录2.3.4 -moveFromLocal: 从本地剪切粘贴到hdfs2.3.5 -moveToLocal: 从hdfs剪切...
2020-03-08 14:36:02
1851
原创 HDFS 系列一:HDFS 概念
1. HDFS 概念1.1 概念HDFS,它是一个文件系统,用于存储文件,通过目录树来定位文件其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色HDFS的设计适合一次写入,多次读出的场景,且不支持文件的修改,适合用来做数据分析,并不适合用来做网盘应用1.2 组成HDFS 集群包括,NameNode 和 DataNode 以及 Secondary Nameno...
2020-03-08 14:34:55
153
原创 Windows Hdfs 客户端配置
Windows 端 Hdfs 客户端实现文件上传、下载等操作文章目录1. 先在 Centos 上开启 Hdfs2. 在 Windows 上配置 Hadoop2.1 下载 Hadoop 包2.2 解压配置2.3 可能的错误3. 配置 winutil 和 hadoop.ddl3.1 下载 winutil 和 hadoop.ddl3.2 拷问至 .\hadoop-2.9.2\etc\hadoop\bi...
2020-02-29 15:31:35
1767
原创 Hadoop环境搭建-3. Hadoop集群版
在 Hadoop 单机版基础上,搭建一个简单的集群版文章目录0. 规划1. 克隆虚拟机2. 启动虚拟机,改动静态ip3. 在hosts文件修改ip映射4. 修改 hostname5. 修改hadoop配置文件5.1 core-site.xml 修改5.2 yarn-site.xml 修改5.3 更改 slaves 文件6. 集群版ssh免密钥登录7. 重新格式化 namenode8. 启动 Ha...
2020-02-26 11:02:26
467
原创 Hadoop环境搭建-2. Hadoop单机版
文章目录1. 安装hadoop并修改配置文件1.1 配置proflie文件1.2 第一个:hadoop-env.sh1.3 第二个 core-site.xml1.4 第三个 hdfs-site.xml1.5 第四个 mapred-site.xml1.6 第五个 yarn-site.xml2. 格式化 namenode3. 启动 hadoop4. 验证是否启动成功1. 安装hadoop并修改配置文...
2020-02-25 16:43:09
471
原创 Hadoop环境搭建-1. 安装VMware及Centos7
文章目录1. 软件准备2. 虚拟机准备2.1 打开VMwear选择新建虚拟机2.2 典型安装与自定义安装2.3 虚拟机兼容性选择2.4 选择稍后安装操作系统2.5 操作系统的选择2.6 虚拟机位置与命名2.7 处理器与内存的分配2.8 选择网络连接类型2.9 其余两项按虚拟机默认选项即可2.10 磁盘容量2.11 磁盘名称2.12 取消不需要的硬件2.13 点击完成,已经创建好虚拟机3. 安装Ce...
2020-02-24 16:38:46
1184
原创 Flink1.4 Fault Tolerance源码解析-4
一种特殊的Checkpoint (检查点)—Savepoint(保存点)Savepoint 是一种特殊的 CheckPoint,所以有关 Savepoint 的实现与 CheckPoint 的实现密切相关因为 Savepoint 涉及到 Client 和 JobManager 之间的 Actor 信息交互,因此单独一文来进行介绍文章目录CheckPoint VS SavepointChec...
2020-02-22 16:55:09
378
原创 Apache Flink fault tolerance源码剖析-3
Zookeeper 在 Flink Fault Tolerance 的使用文章目录两种恢复模式两种类型的检查点已完成的CheckPoint存储ZooKeeperCompletedCheckpointStorerecover方法addCheckpoint方法getLatestCheckpoint方法shutdown方法CheckPoint编号计数器ZooKeeperCheckpointIDCoun...
2020-02-22 16:51:13
351
原创 Flink1.4 Fault Tolerance源码解析-2
CheckpointCoordinatororg.apache.flink.runtime.checkpoint.CheckpointCoordinatorFlink Fault Tolerance 非常核心的类,调用关系:JobManager[submitJob] ==> ExecutionGraphBuilder[buildGraph] ==> new Execut...
2020-02-22 16:24:48
486
原创 kafka consumer 分区 reblance 算法
Rebalance 本质上是一种协议,规定了一个 Consumer Group 下的所有 consumer 如何达成一致,来分配订阅 Topic 的每个分区。例如:某 Group 下有 20 个 consumer 实例,它订阅了一个具有 100 个 partition 的 Topic 。正常情况下,kafka 会为每个 Consumer 平均的分配 5 个分区。这个分配的过程就是 Rebalan...
2019-10-25 11:06:53
422
原创 Flink相关文章
《一文搞懂 Flink 网络流控与反压机制》《追源索骥:透过源码看懂Flink核心框架的执行流程》《Task之间的数据交换机制》《Flink 网络传输优化技术》《Flink - StreamTask With Mailbox》《Flink 将重构其核心线程模型》《Flink 原理与实现:内存管理》...
2019-10-22 14:43:08
465
原创 Spark Streaming 性能优化(一):spark.streaming.concurrentJobs 提高 Job 执行的并行度
背景知识:Spark总结整理(一):Spark内核架构(Spark从启动到执行的流程)Spark Streaming 总结整理(一):Spark Streaming运行原理与核心概念1. 明确 Spark中Job 与 Streaming中 Job 的区别1.1 Spark Core一个 RDD DAG Graph 可以生成一个或多个 Job(Action操作)一个Job可以认为就是...
2019-09-30 16:06:57
2466
原创 Spark Streaming 总结整理(二):Spark Streaming 性能调优
参考:https://www.cnblogs.com/gaopeng527/p/4961701.htmlhttps://www.cnblogs.com/wq920/p/7099129.html
2019-09-18 16:47:24
294
原创 Spark Streaming 总结整理(一):Spark Streaming运行原理与核心概念
1. Spark Streaming运行原理与核心概念Spark Streaming 是Spark核心API的一个扩展,可以实现高吞吐量的、具备容错机制的实时流数据的处理支持从多种数据源获取数据,包括Kafk、Flume、Twitter、ZeroMQ、Kinesis 以及TCP sockets,从数据源获取数据之后,可以使用诸如map、reduce、join和window等高级函数进行复杂算法...
2019-09-18 16:25:29
743
原创 Spark SQL 总结整理(二):Spark SQL 解析流程、工作原理
Spark SQL对SQL语句的处理和关系型数据库类似,即词法/语法解析、绑定、优化、执行。Spark SQL会先将SQL语句解析成一棵树,然后使用规则(Rule)对Tree进行绑定、优化等处理过程1. Spark SQL运行架构由上图看出,Spark SQL 的解析流程为:1. 使用 SessionCatalog 保存元数据在解析SQL语句之前,会创建 SparkSession,或者如...
2019-09-18 15:16:07
2914
1
原创 干货 | Spark Streaming 和 Flink 详细对比
此文不错參考:https://blog.csdn.net/b6ecl1k7BS8O/article/details/81350587
2019-09-18 13:39:24
406
原创 Spark SQL 总结整理(一):RDD、DataFrame和DataSet的区别
RDD、DataFrame和DataSet是容易产生混淆的概念,必须对其相互之间对比,才可以知道其中异同:DataFrame多了数据的结构信息,即schema。RDD是分布式的 Java对象的集合。DataFrame是分布式的Row对象的集合1. RDD和DataFrame上图直观地体现了DataFrame和RDD的区别左侧的 RDD[Person] 虽然以 Person 为类型参数,但S...
2019-09-18 10:55:04
1348
原创 分布式事务(二):Kafka 0.11后幂等性和事务的基本原理和流程
消息事务是指一系列的生产、消费操作可以要么都完成,要么都失败,类似数据库的事务。这个特性在0.10.2的版本是不支持的,从0.11版本开始才支持消息事务是实现分布式事务的一种方案,可以确保分布式场景下的数据最终一致性,还实现了消息 Exactly once 语义1. 幂等性设计1.1 引入目的生产者进行retry会产生重试时,会重复产生消息。有了幂等性之后,在进行retry重试时,只会生成...
2019-09-18 09:46:10
862
原创 分布式事务(一):基础理论及解决方案
在单体架构中,我们的事务可以通过数据库的ACID来操作,不会出现什么问题但随着规模扩大,我们的逻辑服务进行拆分A,B,C…模块,部署在多台服务器,数据库一般也是多台,进行了分库分表等操作,这些A,B,C…模块间通过网络通信完成协作,此刻就产生了单体应用触发不了的问题:一致性问题: 既然是多个数据库,那么通过网络操作,客观上就会存在延时(短距离很小,当跨国时就很慢了)甚至不可达,可用性问题:...
2019-09-17 20:20:26
161
原创 实时组件(SparkStreaming VS Flink)容错及语义说明
本文主要整理实时组件(SparkStreaming VS Flink)容错及语义内容如下:消息系统或实时应用中的语义流处理应用如何保证 Exactly-Once 语义SparkStreaming 保证 Exactly-Once语义Flink 保证 Exactly-Once语义1. 消息系统或实时应用中的语义消息系统系统一般有以下的语义:At most once:消息可能丢失,...
2019-09-17 10:38:17
482
原创 Spark总结整理(八):Spark Core 性能优化思路、步骤总结
总结前面性能优化相关文章,列出Spark开发性能优化的一般步骤前述文章包括:1. Spark总结整理(三):Spark Core 性能优化之开发调优2. Spark总结整理(四):Spark Core 性能优化之资源调优3. Spark总结整理(五):Spark Core 性能优化之数据倾斜调优4. Spark总结整理(六):Spark Core 性能优化之Shuffle调优5. Sp...
2019-09-14 11:04:58
219
原创 Spark总结整理(七):Spark Core 性能优化之内存模型
Spark 作为一个基于内存的分布式计算引擎,其内存管理模块在整个系统中扮演着非常重要的角色理解 Spark 内存管理的基本原理,有助于更好地开发 Spark 应用程序和进行性能调优在执行 Spark 的应用程序时,Spark 集群会启动 Driver 和 Executor 两种 JVM 进程,前者为主控进程,负责创建 Spark 上下文,提交 Spark 作业(Job),并将作业转化为计算任...
2019-09-14 10:42:40
189
原创 Spark总结整理(六):Spark Core 性能优化之Shuffle调优
Spark性能优化主要分为:开发调优资源调优数据倾斜调优shuffle调优大多数Spark作业的性能主要就是消耗在了shuffle环节,因为该环节包含了大量的磁盘IO、序列化、网络数据传输等操作因此,如果要让作业的性能更上一层楼,就有必要对shuffle过程进行调优影响一个Spark作业性能的因素,主要还是代码开发、资源参数以及数据倾斜,shuffle调优只能在整个Spark的...
2019-09-06 15:57:00
237
原创 Spark总结整理(五):Spark Core 性能优化之数据倾斜调优
Spark性能优化主要分为:开发调优资源调优数据倾斜调优shuffle调优数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的性能1. 数据倾斜发生时的现象绝大多数task执行得都非常快,但个别task执行极慢比如,总共有1000个task,997个task都在1分钟之内执行完了,但是剩余两三个task却要一两个小时,这种情况很常见原本...
2019-09-06 11:25:56
225
原创 Spark总结整理(四):Spark Core 性能优化之资源调优
Spark性能优化主要分为:开发调优资源调优数据倾斜调优shuffle调优在开发完Spark作业之后,就该为作业配置合适的资源了资源参数设置的不合理,可能会导致没有充分利用集群资源,作业运行会极其缓慢;或者设置的资源过大,队列没有足够的资源来提供,进而导致各种异常本篇罗列资源调优的注意事项1. 引言建议先了解 Spark作业基本运行原理 和 Spark内存模型参考:htt...
2019-09-04 17:57:51
413
原创 Spark总结整理(三):Spark Core 性能优化之开发调优
Spark性能优化主要分为:开发调优资源调优数据倾斜调优shuffle调优Spark性能优化的第一步,就是要在开发Spark作业的过程中注意和应用一些性能优化的基本原则开发调优,就是要让大家了解以下一些Spark基本开发原则,包括:RDD lineage设计、算子的合理使用、特殊操作的优化等在开发过程中,时时刻刻都应该注意以上原则,并将这些原则根据具体的业务以及实际的应用场景,灵...
2019-09-04 16:42:21
358
原创 Spark总结整理(二):Spark Transformation和Action整理
本篇文章主要介绍:Transformation 与 Action 常用API 速览Transformation 与 Action 常用API DEMO1. Transformation 与 Action 常用APISpark支持两个类型(算子)操作:Transformation和Action1.1Transformation将一个已有的RDD生成另外一个RDD。Transform...
2019-09-04 14:14:41
323
原创 Spark总结整理(一):Spark内核架构(Spark从启动到执行的流程)
本篇文章主要介绍Spark的内核架构,详细介绍从Saprk程序编写完成使用Spark submit(shell)的方式提交到完成任务的流程Spark任务详解:将编写的Spark程序打成 jar 包调用 spark-submit 脚本提交任务到集群上运行运行sparkSubmit的main方法,在这个方法中通过反射的方式创建我们编写的主类的实例对象,然后调用main方法,开始执...
2019-09-04 10:24:17
464
原创 Spark开发注意事项小结(性能方面)
1. 平台全局配置序列化方式 : kyrospark-default.conf : spark.serializer org.apache.spark.serializer.KryoSerializer使用自定义类时,对类进行注册,否则会存储每个对象的全类名(full class name)备注:如果序列化对象较大,提高 spark.kryoserializer.buffer 的值...
2019-09-02 10:32:14
383
原创 分布式锁的预研
一般实现分布式锁都有哪些方式?redis分布式锁zk分布式锁数据库乐观锁为了确保分布式锁可用,我们至少要确保锁的实现同时满足以下四个条件:互斥性在任意时刻,只有一个客户端能持有锁不会发生死锁即使有一个客户端在持有锁的期间崩溃而没有主动解锁,也能保证后续其他客户端能加锁。具有容错性只要大部分的Redis节点正常运行,客户端就可以加锁和解锁。解铃还须系铃人加...
2019-08-22 15:53:04
125
原创 Redis知识点整理
redis和memcached的区别Redis相比Memcached来说,拥有更多的数据结构和并支持,更丰富的数据操作由于Redis只使用单核,而Memcached可以使用多核memcached没有原生的集群模式,需要依靠客户端来实现往集群中分片写入数据;但是redis目前是原生支持cluster模式的,redis官方就是支持redis cluster集群模式的,比memcached来说要...
2019-08-15 19:55:48
176
原创 笔记速览:使用缓存遇到的问题及解决方式
在项目中使用缓存的案例关联维表本地缓存,自定义Map的软/弱引用flink + kafka 实现 Exactly-once 语义分布式缓存,基于redis实现1.1. 缓存雪崩当某一时刻发生大规模的缓存失效的情况,比如缓存服务宕机,会有大量的请求进来直接打到DB上面,DB 撑不住,挂掉。解决方式:(事前)使用集群缓存,保证缓存服务的高可用如使用 Redis,可以...
2019-08-15 14:09:49
269
原创 最全Redis工具类
类结构图:BaseJedisHandlerpackage com.wj.redis;import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisPool;import redis.clients.jedis.JedisPoolConfig;/** * 抽象 Jedis 共有方法 */public abst...
2019-08-13 09:37:52
600
原创 Kafka消息语义使用说明
消息系统系统一般有以下的语义:At most once:消息可能丢失,但不会重复投递At least once:消息不会丢失,但可能会重复投递Exactly once:消息不丢失、不重复,会且只会被分发一次(真正想要的)主要以 0.11 版本作为区分:0.11 版本之前保证的语义是:至少一次 (At least once)0.11 之后版本保证的语义是:恰好一次 (Exactly...
2019-08-08 22:16:24
630
Kafka消息语义使用说明.pdf
2019-08-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人