- 博客(44)
- 资源 (6)
- 收藏
- 关注
转载 Flink原理(五)——容错机制
1. 前言 流式计算分为有状态和无状态两种情况,所谓状态就是计算过程中的中间值。对于无状态计算,会独立观察每个独立事件,并根据最后一个事件输出结果。什么意思?大白话举例:对于一个流式系统,接受到一系列的数字,当数字大于N则输出,这时候在此之前的数字的值、和等情况,压根不关心,只和最后这个大于N的数字相关,这就是无状态计算。什么是有状态计算了?想求过去一分钟内所有数字的和或者平均数等,...
2019-11-22 10:45:53 320 1
转载 Flink原理(四)——任务及调度
一、任务调度 Flink是通过task slot的来定义执行资源的,为优化资源的利用率,Flink通过slot共享,可以将多个连续的task任务组成的一个pipeline放在一个slot中运行。当任务并行度>1时,并行任务中的每个pipeline就会分配到一个slot去执行,这样就会有一个问题,若是任务的并行度大于集群中slot的个数了,会咋办?首先,毫无疑问的一点是集群中的slot中...
2019-11-22 10:33:02 631
转载 Flink原理(三)——Task(任务)、Operator Chain(算子链)和Slot(资源)
本文所讨论的计算资源是指用来执行 Task 的资源,是一个逻辑概念。本文会介绍 Flink 计算资源相关的一些核心概念,如:Slot、SlotSharingGroup、CoLocationGroup、Chain等。并会着重讨论 Flink 如何对计算资源进行管理和隔离,如何将计算资源利用率最大化等等。理解 Flink 中的计算资源对于理解 Job 如何在集群中运行的有很大的帮助,也有利于我们更透彻...
2019-11-22 10:14:26 2977
转载 Flink原理(二)——资源
前言 本文主要是想简要说明Flink在集群部署、任务提交、任务运行过程中资源情况。一、集群部署阶段 集群部署这里指的是Flink standalone模式,因为在Yarn模式(包括session、single job模式也成Per-job模式)是可以仅通过Flink client提交任务到Yarn上,所以是否手动部署Flink集群对任务的执行是没有影响的。下图[1]是简单的Fli...
2019-11-22 10:13:10 310
转载 Flink原理(一)——基础架构
1、前言 在讲Flink基本结构之前,我们的先知道Flink是什么?中文官网上的解释是:Apache Flink 是一个框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算[1]。关于无边界和有边界数据流的定义可以参考官网上的解释,从其解释上可以了解到Flink是一个框架和计算引擎,是用来处理数据流的。处理数据流并不意味着Flink仅仅能用于我们通常所说的流处理系统中,这里数据...
2019-11-22 10:10:51 218
转载 Flink流计算编程--watermark(水位线)简介
1、watermark的概念watermark是一种衡量Event Time进展的机制,它是数据本身的一个隐藏属性。通常基于Event Time的数据,自身都包含一个timestamp,例如1472693399700(2016-09-01 09:29:59.700),而这条数据的watermark时间则可能是:watermark(1472693399700) = 147269339670...
2019-07-15 11:36:45 208
转载 Flink流计算编程--watermark(水位线)简介
https://blog.csdn.net/lmalds/article/details/52704170
2019-07-15 10:04:57 238
转载 Flink学习----水印
时间要理解水印(Wartermark),首先需要理解三个时间概念:事件时间(Event Time) 摄入时间(Ingestion Time) 处理时间(Process Time)事件时间是每一个独立的事件在产生它的设备中发生的时间。以用户行为分析为例,事件时间就是用户访问页面点击按钮时的时间。摄入时间是事件进入 Flink 的时间。以用户行为分析为例,摄入时间就是 Flink...
2019-07-15 09:54:22 410
转载 Flink学习----窗口
滚动窗口滚动窗口(Tumbling Window)又称固定窗口(Fixed Window),将事件分配到固定大小且非重叠的桶中。当超过了窗口边界,事件就会发送到执行函数进行处理。计数滚动窗口基于计数的滚动窗口,定义了在出发执行之前需要收集多少事件:ds.keyBy(0) .countWindow(5) // ① .sum(1) .print()① 计数为...
2019-07-15 09:53:21 144
转载 Quartz持久化数据库各表字段的含义
Quartz持久化到数据库中各表字段详解(以MYSQL数据库为例)QRTZ_BLOB_TRIGGERS:自定义触发器Trigger 作为 Blob 类型存储(用于 Quartz 用户用JDBC创建他们自己定制的 Trigger 类型,JobStore并不知道如何存储实例的时候)表名 表说明 自定义触发器 QRTZ_BLOB_TRIGGERS 列名(英) 列...
2019-05-29 10:45:17 2107 1
转载 解析Spring中的ResponseBody和RequestBody
spring,restful,前后端分离这些关键词都是大家耳熟能详的关键词了,一般spring常常需要与前端、第三方使用JSON,XML等形式进行交互,你也一定不会对@RequestBody和@ResponseBody这两个注解感到陌生。@ResponseBody的使用由于@ResponseBody和@RequestBody的内部实现是同样的原理(封装请求和封装响应),所以本文以@Resp...
2019-05-23 15:13:09 458
转载 Quartz集群实战及原理解析
转自 https://blog.csdn.net/wenniuwuren/article/details/45866807选Quartz的团队基本上是冲着Quartz本身实现的集群去的, 不然JDK自带Timer就可以实现相同的功能, 而Timer存在的单点故障是生产环境上所不能容忍的。 在自己造个有负载均衡和支持集群(高可用、伸缩性)的调度框架又影响项目的进度, 所以大多数团队都直接使用了Q...
2019-05-10 17:01:28 215
转载 Quartz源码解析 ---- 触发器按时启动原理
转自 http://blog.csdn.net/wenniuwuren https://blog.csdn.net/wenniuwuren/article/details/42082981从线程开始, 我们来看下QuartzSchedulerThread类(负责执行触发的Trigger的工作) :@Override public void run() { bool...
2019-05-10 16:21:46 308
转载 Quartz所使用的表的说明
Quartz将Job保存在数据库中所需表的说明QRTZ_CALENDARS 以 Blob 类型存储 Quartz 的 Calendar 信息QRTZ_CRON_TRIGGERS 存储 Cron Trigger,包括 Cron表达式和时区信息QRTZ_FIRED_TRIGGERS 存储与已触发的 Trigger 相关的状态信息,以及相联 Job的执行信息 QRTZ_PAUSED_T...
2019-05-07 14:34:23 1484
转载 quartz CronExpression表达式
一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素。按顺序依次为1.秒(0~59)2.分钟(0~59)3.小时(0~23)4.天(月)(0~31,但是你需要考虑你月的天数)5.月(0~11)6.天(星期)(1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)7.年份(1970-2099)其中每个元素可以是一个值(如6),一个连续区间(9-12),一个间隔...
2019-05-07 14:21:05 171
转载 SpringBoot实战之SpringBoot自动配置原理
SpringBoot 自动配置主要通过@EnableAutoConfiguration,@Conditional,@EnableConfigurationProperties或者@ConfigurationProperties等几个注解来进行自动配置完成的。@EnableAutoConfiguration开启自动配置,主要作用就是调用Spring-Core包里的loadFac...
2019-04-19 14:49:56 132
转载 Spring Cloud之Ribbon与Nginx区别
客户端负载均衡器在SpringCloud中Ribbon负载均衡客户端,会从eureka注册中心服务器端上获取服务注册信息列表,缓存到本地。然后在本地实现轮训负载均衡策略。Ribbon与Nginx区别1.服务器端负载均衡Nginxnginx是客户端所有请求统一交给nginx,由nginx进行实现负载均衡请求转发,属于服务器端负载均衡。既请求有nginx服务器端进行转发。...
2019-04-16 16:22:05 1627
转载 nginx实现反向代理及负载均衡
版权声明:本文为博主原创文章,未经博主允许不得转载https://blog.csdn.net/u013144287/article/details/78551398 一、反向代理1.什么是反向代理通常的代理服务器,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中由代理服务器向...
2019-04-15 10:01:36 174
转载 正向代理和反向代理的区别
分享关于在服务器代理中正向代理与反向代理的区别,在实际运用中两者都有很大的用处,但是往往很多人并不是特别清楚他们之前的区别,先通过几张图片进行分析。正向代理:正向代理通过上面的图理解其实就是用户想从服务器拿资源数据,但是只能通过proxy服务器才能拿到,所以用户A只能去访问proxy服务器然后通过proxy服务器去服务器B拿数据,这种情况用户是明确知道你要访问的是谁,在我们生活中最典型...
2019-04-15 09:49:37 137
转载 HSF原理剖析
HSF原理剖析 前言HSF是一个分布式的远程服务调用框架,其实我更喜欢把分布式几个字去掉,因为HSF本身并不是一个单独的服务(指一个进程),他是附属在你的应用里的一个组件,一个RPC组件(远程过程调用——Remote Procedure Call,是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。在OSI网络通信模型中,RPC跨越了传输...
2019-03-28 13:49:49 287
转载 Java面试大纲
项目介绍大部分情况,这是一场面试的开门题,面试官问这个问题,主要是考察你的概述能力和全局视野。有的人经常抱怨自己每天在堆业务,但没有成长。事实上,很多情况下确实在堆业务,但并不是没有成长的。并非做中间件或者技术架构才是成长,例如我们的需求分析能力,沟通协作能力,产品思维能力,抽象建模能力等都是一个非常重要的硬实力。Java基础1、List 和 Set 的区别 结构特点:List...
2019-03-06 14:42:17 512
转载 Java 并发编程73道面试题及答案
作者:乌枭https://blog.csdn.net/qq_34039315/article/details/785493111、在java中守护线程和本地线程区别?java中的线程分为两种:守护线程(Daemon)和用户线程(User)。任何线程都可以设置为守护线程和用户线程,通过方法Thread.setDaemon(bool on);true则把该线程设置为守护线程,反之则为用...
2019-02-28 11:12:20 152
转载 SpringCloud微框架系列整体模块梳理
以下为Spring Cloud的核心功能:分布式/版本化配置-------Config服务注册和发现-------Eureka路由-------Zuul服务和服务之间的调用-------Feign负载均衡-------Ribbon断路器-------Hystrix分布式消息传递通过这张图,我们来了解一下各组件配置使用运行流程:1、请求统一通过API网关(Zuul)来访问...
2019-02-18 09:51:09 243
转载 【性能优化之道】每秒上万并发下的Spring Cloud参数优化实战
原创: 中华石杉 石杉的架构笔记 2018-11-09欢迎关注微信公众号:石杉的架构笔记(id:shishan100)目录1、写在前面2、场景引入,问题初现3、扬汤止沸,饮鸩止渴4、问题爆发,洪水猛兽5、追本溯源,治标治本6、总结全文,回眸再看 一、写在前面相信不少朋友都在自己公司使用Spring Cloud框架来构建微服务架构,毕竟现在这是非常火的一门...
2019-02-14 17:25:15 128
转载 【双11狂欢的背后】微服务注册中心如何承载大型系统的千万级访问?
原创: 中华石杉 石杉的架构笔记 2018-11-09欢迎关注微信公众号:石杉的架构笔记(id:shishan100)目录:一、问题起源二、Eureka Server设计精妙的注册表存储结构三、Eureka Server端优秀的多级缓存机制四、总结 一、问题起源Spring Cloud架构体系中,Eureka是一个至关重要的组件,它扮演着微服务注册中心的角色,所...
2019-02-14 17:05:28 138
转载 Spring Cloud底层原理
原创: 中华石杉 石杉的架构笔记 2018-11-07欢迎关注微信公众号:石杉的架构笔记(id:shishan100)目录一、业务场景介绍二、Spring Cloud核心组件:Eureka三、Spring Cloud核心组件:Feign四、Spring Cloud核心组件:Ribbon五、Spring Cloud核心组件:Hystrix六、Spring Cloud核...
2019-02-14 09:06:30 164
转载 SpringCloud与SpringBoot区别
1、SpringBoot专注于快速方便的开发单个个体微服务。2、SpringCloud是关注全局的微服务协调整理治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来,为各个服务之间提供,配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、精选决策、分布式会话等集成服务。3、SpringBoot可以离开SpringCloud独立开发项目,但是SpringCloud离不...
2018-12-29 10:03:31 1427
转载 IOC 的理解与解释
IOC 的理解与解释 IOC 是什么?Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。如何理解好Ioc呢?理解好Ioc的关键是要明确“谁控制谁,控制什么,为何是反转(有反转就应该有正转了),哪些方面反转了”,那...
2018-12-17 10:39:59 396
转载 微服务,云架构,DDD,SpringCloud,Docker总体概述
一、什么是微服务架构?       近年来,在软件开发领域关于微服务的讨论呈现出火爆的局面,越来越多的人倾向于在系统设计与开发中采用微服务方式实现软件系统的松耦合、跨部门开发,和当初的Servlet规范一样,被认为是IT软件架构的未来方向。 &a
2018-12-13 14:32:16 521
转载 Sqoop学习
Sqoop学习之路 (一) 讨论QQ:1586558083目录一、概述二、工作机制三、安装1、前提概述2、软件下载3、安装步骤四、Sqoop的基本命令基本操作示例五、Sqoop的数据导入1、从RDBMS导入到HDFS中2、把MySQL数据库中的表数据导入到Hive中3、把MySQL数据库中的表数据导入到hbase 正文回到顶部一、概述...
2018-12-12 09:24:09 301
转载 Hive中创建表的各种方式以及区别详解
版权声明:本文为博主原创文章 https://blog.csdn.net/qq_26442553/article/details/78805443 一:标准hql建表语法标准语法:(hql语言也不区分大小写,下面各个条件选择添加)  CREATE [EXTER...
2018-12-11 14:19:00 2489
转载 hive查询时怎么显示字段名?
在hive查询中我们发现hive的查询输出不显示列名,怎么解决呢?解决办法:进入hive cli后: set hive.cli.print.header=true;hive> select * from ratings limit 5;OKratings.userid ratings.movieid ratings.rating ratings.timestamped1 1193 ...
2018-12-11 14:04:34 2733
转载 Hive数据类型
Hive数据类型数值型日期型字符型其他复杂类型Hive数据类型本文参考Apache官网,更多内容请参考:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types1. 数值型 类型 支持范围 TINYINT 1-byte signed integer, from...
2018-12-10 11:18:02 320
转载 ElasticSearch 6.x 学习笔记:15.检索入门
版权声明:本文为博主原创文章,欢迎转载。 https://blog.csdn.net/chengyuqiang/article/details/79082673 15.1 准备数据[es@node1 ~]$ vi website.json [es@node1 ~]$ cat website.json{ "index":{ "_...
2018-11-29 14:35:04 154
转载 ElasticSearch 6.x 学习笔记:14.mapping参数
版权声明:本文为博主原创文章,欢迎转载。 https://blog.csdn.net/chengyuqiang/article/details/79059958 14.1 mapping参数概述官方文档 https://www.elastic.co/guide/...
2018-11-29 14:28:29 504
转载 hadoop中yarn的原理及运行
一:对yarn的理解1.关于yarn的组成 大约分成主要的四个。 Resourcemanager,Nodemanager,Applicationmaster,container 2.Resourcemanager(RM)的理解 RM是全局资源管理器,负责整个系统的资源管理和分配。 主要由两个组件组成:调度器和应用程序管理器(ASM) 调度器:根据容量,队列...
2018-11-27 12:06:56 655 1
转载 Flink源码系列——Flink中一个简单的数据处理功能的实现过程
在Flink中,实现从指定主机名和端口接收字符串消息,对接收到的字符串中出现的各个单词,每隔1秒钟就输出最近5秒内出现的各个单词的统计次数。代码实现如下:public class SocketWindowWordCount { public static void main(String[] args) throws Exception { /** 需要连接的主机名...
2018-11-19 09:02:14 1104 2
转载 Flink源码系列——TaskManager处理SubmitTask的过程
接《Flink源码系列——JobManager处理SubmitJob的过程》,在从JobManager中,将SubmitTask提交到TaskManager后,继续分析TaskManager的处理逻辑。 TaskManager是个Actor,混入了LeaderSessionMessageFilter这个trait,所以在从JobManager接收到JobManagerMessages.Leade...
2018-11-19 09:01:10 401
转载 Flink源码系列——JobManager处理SubmitJob的过程
接《Flink源码系列——获取JobGraph的过程》,在获取到JobGraph后,客户端会封装一个SubmitJob消息,并将其提交给JobManager,本文就接着分析,JobManager在收到SubmitJob消息后,对其处理逻辑。JobManager是一个Actor,其对接受到的各种消息的处理入口是handleMessage这个方法,其中对SubmitJob的处理入口如下:overr...
2018-11-19 08:57:46 1915
转载 Flink源码系列——获取JobGraph的过程
接《Flink源码系列——获取StreamGraph的过程》获取到StreamGraph后,继续分析,如果通过获取到的StreamGraph来转化为JobGraph。转化逻辑在StreamingJobGraphGenerator这个类中,入口是createJobGraph(StreamGraph)方法。先是初始化了一个StreamingJobGraphGenerator的实例,StreamingJ...
2018-11-19 08:53:29 637
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人