- 博客(9)
- 资源 (6)
- 收藏
- 关注
原创 flink原理分析--flink总体架构
概述本文介绍flink的总体架构,通过本文的学习可以对flink的架构有一个总体把握。总体架构flink也是典型的master-slave分布式架构,如上图所示。flink的架构总体来说分为以下几个部分:Job ClientJob ManagerTask Manager这几个部分可以部署在不同的机器上,如下图所示:Flink的大致流程如下:用户编写的执行任务通过JobCl...
2019-02-20 07:02:14 1013
原创 flink实战—Watermarks的原理和应用
概述本文介绍flink的一个重要特性:水印(Watermarks)的原理,并通过实际的例子说明如何使用该特性。环境:flink-1.7.1水印(Watermarks)简介我们看到对事件时间(Event Time)的支持是流体系结构的核心。当计算基于事件时间时,我们如何知道所有事件是否已经全部到达,我们是否可以计算并输出窗口的结果?换句话说,我们如何跟踪事件时间并知道输入流中已达到某个事件时...
2019-02-19 08:28:35 1594
原创 flink实战—时间窗口(Time Windows)的原理和使用
概述flink中支持多种窗口,包括:时间窗口,session窗口,count窗口等,本文简单介绍这些窗口的原理,并通过例子说明如何使用这些窗口。时间窗口(Time Windows)最简单常用的窗口形式是基于时间的窗口,flink支持两种时间窗口:一种是翻滚时间窗口(tumbling time window)一种是滑动时间窗口(sliding time window)翻滚时间窗口(t...
2019-02-18 07:21:10 32867 4
原创 flink实战—编写流处理任务:入门
概述本文讲述如何通过flink的scala接口来编写流处理任务。通过本文的描述,就可以通过简介的scala语言编写更加强大的流处理任务了。环境准备IntelliJ IDEAscala-2.11创建一个maven工程在IDEA中创建一个maven工程,取一个名称:StreamingWordCount。步骤如下:点击IDEA的"Create New Project",在下一个步骤选...
2019-02-13 10:40:59 2273
原创 storm实战问题和解决办法
概述本文分析在使用storm过程中可能出现的问题,及其解决办法。实战问题和解决办法修改worker节点上的工作进程(worker process)数量问题描述我们知道,每个worker节点上都可能有多个工作进程(worker process)运行,每个工作进程运行storm的spout或bolt服务。有时,我们需要增加或减少worker节点上的工作进程数量。解决办法在storm.y...
2019-02-11 22:07:25 390
翻译 flink原理分析--基本组成
概述本文是一篇翻译文章,原文在这里。本文从软件设计层面介绍了flink的模块划分和组成。flink的基本组成作为软件堆栈,Flink是一个分层系统。堆栈的不同层构建在彼此之上,并提高它们接受的程序表示的抽象级别:运行层(runtime layer)以JobGraph的形式接收程序。JobGraph是一个通用的并行数据流,具有消费和产生数据流的任意任务。DataStream API和D...
2019-02-10 21:53:42 803
翻译 flink原理分析—作业和调度(Jobs and Scheduling)
概述本文档简要介绍Flink如何进行作业调度,及其如何表示和跟踪JobManager上的作业状态。注意:本文flink官方的一篇文档的翻译,原文链接在这里。调度(Scheduling)Flink中的执行资源通过任务槽(Task Slots)来定义。每个TaskManager都有一个或多个任务槽,每个槽都可以运行一个并行任务管道(pipeline of parallel tasks)。管道由...
2019-02-10 21:04:30 2048 1
原创 java并发编程—并发容器:ConcurrentLinkedQueue的基本原理和使用
概述本文ConcurrentLinkedQueue要点一个基于链接节点(单向链表)的无界线程安全队列,可以并发的进行访问。基于CAS的非阻塞算法实现,它保证了节点操作的原子性。按照FIFO(先进先出)的原则对元素进行排序。队列的头部 是队列中时间最长的元素。队列的尾部 是队列中时间最短的元素。新的元素从队列尾部插入,获取操作从队列头部获得元素。不允许使用 null 元素,这一点和...
2019-02-03 14:08:31 534
原创 java并发编程-ConcurrentHashMap的基本原理和使用
概述本文介绍ConcurrentHashMap的原理,并通过例子讲解如何在多线程环境下使用ConcurrentHashMap。ConcurrentHashMap要点与Hastable或synchronizedMap会锁住整个map来保证线程安全,而ConcurrentHashMap允许读线程和写线程的并发地进行操作。 也就是说,ConcurrentHashMap允许同时有一些线程修改map...
2019-02-02 16:56:03 425
unix network programing
2009-03-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人