当前位置: 首页 > news >正文

深圳做网站设计制作开发室内设计师证书哪个含金量高

深圳做网站设计制作开发,室内设计师证书哪个含金量高,做ppt网站,西安哪里做网站系统架构 Flink运行时架构Standalone会话模式为例 1#xff09;作业管理器#xff08;JobManager#xff09; JobManager 是一个 Flink 集群中任务管理和调度的核心#xff0c;是控制应用执行的主进程。每个应用都应该被唯一的 JobManager 所控制执行。 JobManger 又包含…系统架构 Flink运行时架构Standalone会话模式为例 1作业管理器JobManager JobManager 是一个 Flink 集群中任务管理和调度的核心是控制应用执行的主进程。每个应用都应该被唯一的 JobManager 所控制执行。 JobManger 又包含 3 个不同的组件。 1JobMaster JobMaster 是 JobManager 中最核心的组件负责处理单独的作业Job。JobMaster和具体的 Job 是一一对应的多个 Job 可以同时运行在一个 Flink 集群中每个Job都有一个自己的 JobMaster。 在作业提交时JobMaster 会先接收到要执行的应用。JobMaster 会把JobGraph转换成一个物理层面的数据流图这个图被叫作“执行图”ExecutionGraph它包含了所有可以并发执行的任务。JobMaster 会向资源管理器ResourceManager发出请求申请执行任务必要的资源。一旦它获取到了足够的资源就会将执行图分发到真正运行它们的TaskManager上。 而在运行过程中 JobMaster 会负责所有需要中央协调的操作。 2资源管理器ResourceManager ResourceManager 主要负责资源的分配和管理在 Flink 集群中只有一个。所谓“资源”主要是指 TaskManager 的任务槽task slots。任务槽就是 Flink 集群中的资源调配单元包含了机器用来执行计算的一组 CPU 和内存资源。每一个任务Task都需要分配到一个slot上执行。 3分发器Dispatcher Dispatcher 主要负责提供一个 REST 接口用来提交应用并且负责为每一个新提交的作业启动一个新的 JobMaster 组件。Dispatcher 也会启动一个 Web UI用来方便地展示和监控作业执行的信息。 2任务管理器TaskManager TaskManager 是 Flink 中的工作进程数据流的具体计算就是它来做的。Flink集群中必须至少有一个TaskManager每一个 TaskManager 都包含了一定数量的任务槽taskslots。Slot 是资源调度的最小单位slot 的数量限制了 TaskManager 能够并行处理的任务数量。 启动之后TaskManager 会向资源管理器注册它的 slots收到资源管理器的指令后TaskManager 就会将一个或者多个槽位提供给 JobMaster 调用JobMaster 就可以分配任务来执行了。 在执行过程中TaskManager 可以缓冲数据还可以跟其他运行同一应用的TaskManager交换数据。 核心概念 1并行度Parallelism 1并行子任务和并行度 Flink 执行过程中每一个算子operator可以包含一个或多个子任务operatorsubtask这些子任务在不同的线程、不同的物理机或不同的容器中完全独立地执行。 一个特定算子的子任务subtask的个数被称之为其并行度parallelism。包含并行子任务的数据流就是并行数据流。 一个流程序的 并行度可以认为就是其 所有算子中最大的并行度。 上图数据流中有 source、map、window、sink 四个算子其中sink算子的并行度为 1其他算子的并行度都为 2。所以这段流处理程序的并行度就是2。 2并行度的设置 在 Flink 中可以用不同的方法来设置并行度它们的有效范围和优先级别也是不同的。 直接代码设置 代码中在算子后跟着调用 setParallelism()方法来设置当前算子的并行度 stream.map(word - Tuple2.of(word, 1L)).setParallelism(2);调用执行环境的 setParallelism()方法全局设定并行度 env.setParallelism(2);这样代码中所有算子默认的并行度就都为 2 。 调试可以使用本地环境自带Web UI便于调试 可能需要添加如下依赖 dependencygroupIdorg.apache.flink/groupIdartifactIdflink-runtime-web/artifactIdversion${flink.version}/versionscopeprovided/scope/dependency注意keyBy 不是算子所以无法对 keyBy 设置并行度。 提交应用时设置 -p 参数来指定当前应用程序执行的并行度它的作用类似于执行环境的全局设置 bin/flink run -m 192.168.197.130:8081 -p 2 -c com.lkl.StreamSocketWordCount ../day5-flink-1.0-SNAPSHOT.jar在 Web UI 上提交作业也可以在对应输入框中直接添加并行度。 配置文件中设置 直接在集群的配置文件 flink-conf.yaml 中直接更改默认并行度 parallelism.default: 2初始值为1。 在没有指定并行度的时候就会采用配置文件中的集群默认并行度。在开发环境中没有配置文件默认并行度就是当前机器的CPU核心数。 并行度设置优先级 代码算子 代码env 提交时指定 配置文件 2算子链Operator Chain 1算子间的数据传输 一个数据流在算子之间传输数据的形式可以是一对一one-to-one的直通forwarding模式也可以是打乱的重分区redistributing模式具体是哪一种形式取决于算子的种类。 1. 一对一One-to-oneforwarding 图中的source 和map算子source 算子读取数据之后可以直接发送给 map 算子做处理它们之间不需要重新分区也不需要调整数据的顺序。map 算子的子任务看到的元素个数和顺序跟source算子的子任务产生的完全一样保证着“一对一”的关系。map、filter、flatMap等算子都是这种one-to-one的对应关系。这种关系类似于 Spark 中的窄依赖。 2. 重分区Redistributing 这种模式数据流的分区会发生改变。比如图中的map和后面的keyBy/window算子之间以及 keyBy/window 算子和 Sink 算子之间都是这样的关系。 每一个算子的子任务会根据数据传输的策略把数据发送到不同的下游目标任务。这些传输方式都会引起重分区的过程这一过程类似于 Spark 中的shuffle。 2合并算子链 并行度相同的一对一one to one算子操作可以直接链接在一起形成一个“大”的任务task这样原来的算子就成为了真正任务里的一部分如下图所示。每个task 会被一个线程执行。这样的技术被称为“算子链”Operator Chain。 将算子链接成 task 是非常有效的优化可以减少线程之间的切换和基于缓存区的数据交换在减少时延的同时提升吞吐量。 Flink 默认会按照算子链的原则进行链接合并如果想要禁止合并或者自行定义也可以在代码中对算子做一些特定的设置 // 禁用算子链 .map(word - Tuple2.of(word, 1L)).disableChaining(); // 从当前算子开始新链 .map(word - Tuple2.of(word, 1L)).startNewChain()禁用算子链当前算子与前后算子都不能组成算子链。一般不会禁用 3任务槽Task Slots 1任务槽Task Slots Flink 中每一个 TaskManager 都是一个 JVM 进程它可以启动多个独立的线程来并行执行多个子任务subtask。 TaskManager 的计算资源是有限的并行的任务越多每个线程的资源就会越少。 为了控制并发量需要在TaskManager 上对每个任务运行所占用的资源做出明确的划分这就是所谓的任务槽taskslots。 每个任务槽task slot其实表示了 TaskManager 拥有计算资源的一个固定大小的子集。这些资源就是用来独立执行一个子任务的。 独立内存不独立CPU时间片轮转 2任务槽数量的设置 在 Flink 的 flink-conf.yaml 配置文件中可以设置TaskManager 的 slot 数量默认是 1 个 slot。 taskmanager.numberOfTaskSlots: 8slot 目前仅仅用来隔离内存不会涉及 CPU 的隔离。在具体应用时可以将 slot 数量配置为机器的 CPU 核心数尽量避免不同任务之间对CPU的竞争。 3任务对任务槽的共享 在同一个作业中不同任务节点算子的并行子任务就可以放到同一个slot上执行。 对于第一个任务节点source→map它的 6 个并行子任务必须分到不同的 slot 上而第二个任务节点keyBy/window/apply的并行子任务却可以和第一个任务节点共享 slot。 将资源密集型和非密集型的任务同时放到一个 slot 中它们就可以自行分配对资源占用的比例从而保证最重的活平均分配给所有的 TaskManager。 slot 共享另一个好处就是允许保存完整的作业管道。即使某个TaskManager 出现故障宕机其他节点也可以完全不受影响作业的任务可以继续执行。 Flink 默认是允许 slot 共享的如果希望某个算子对应的任务完全独占一个slot或者只有某一部分算子共享 slot也可以通过设置“slot 共享组”手动指定默认都是default .map(word - Tuple2.of(word, 1L)).slotSharingGroup(aaa);只有属于同一个 slot 共享组的子任务才会开启 slot 共享不同组之间的任务是完全隔离的必须分配到不同的 slot 上。 4任务槽和并行度的关系 任务槽是静态的概念 是指 TaskManager 具有的并发执行能力可以通过参数taskmanager.numberOfTaskSlots 进行配置而并行度是动态概念也就是TaskManager 运行程序时实际使用的并发能力可以通过参数 parallelism.default 进行配置。 注意 slot数量 job并行度算子最大并行度job才能运行【否则无法提交任务】 如果是yarn模式动态申请 ​ 申请TM数量 job并行度 / 每个TM的slot数向上取整 ​ 例如session模式刚开始0个TaskMananger设置为3个slot0个slot ​ 此时提交一个job并行度为10 ​ 10 / 3 向上取整申请4个TM使用10个slot还剩余2个slot
http://www.yutouwan.com/news/246517/

相关文章:

  • 公司网站有哪些重要性临沂seo网站推广
  • 怎么做网站 知乎化妆品网站建设平台的分析
  • 网站都需要续费微信小程序怎么做表格
  • 淘宝客做网站怎样推广京东网上商城会员注册步骤
  • 替朋友做网站怎么做企业管理软件定制
  • 长沙 网站建设公司深圳网站建设公司jm3q
  • seo 网站推广博客和网站有什么不同
  • 海西高端网站建设公司软件定制公司值得去吗
  • 北京市建设资格注册中心网站营销策划公司简介
  • 天心区网站建设长春网络推广服务
  • 做网站公司哪里好合肥制作网站的公司
  • 白银网站模板wordpress建两个网站吗
  • 电子商务网站建设实训内容驰易网站建设
  • 做网站放广告赚钱我的家乡网站设计模板
  • 没有网站可以做淘宝客吗深圳福田区福田社区
  • 个人网站是什么意思wordpress 邮箱登录
  • 淄博高端网站建设乐达企业logo标志设计公司
  • 网站建设单选按钮男女做暖暖视频网站
  • 做垂直行业网站利润分析海淘一号 网站 怎么做的
  • 公司网站推广是做什么一份完整的项目计划书
  • 学校网站做链接邮箱在线登录
  • 无锡外贸网站开发南宁做网站公司品牌云尚网络
  • 安家堡网站建设怎么做网站访问被拒绝
  • 网站开发文件夹做的好的商城网站
  • 网站后台怎么做qq群自动加百度 wordpress
  • 临安规划建设局网站推广型网站如何建站
  • 网站服务器用什么配置英德网站seo
  • 山西制作网站公司排名汕头网站建设推广价格
  • 外贸soho 网站建设php空间购买
  • 衡阳网站建设技术外包郑州做网站比较专业的机构