在 Kettle 中集群是由节点组成的,这些节点可以在不同的服务器上,也可以在同一台服务器上。

子服务器

每个节点都有自己的节点名、主机名、端口、用户名和密码等属性。我们可以在 Spoon 界面下新建子服务器并设置相关的属性。

集群

在 Kettle 中集群分为动态集群和静态集群,两种集群都需要先定义一个 Master 节点,但是动态集群可以随时添加节点到集群,而静态集群需要事先定义好 Master 节点和若干个 Slave 节点。

Master 节点

在一个 Kettle 集群中只有一个 Master 节点,该节点的作用在于追踪 Slave 节点的运行状态。当然 Master 节点的作用不仅限于此,它还可以运行Client 分配给自己的任务。

Slave节点

一个集群中会包含若干个 Slave 节点,Slave 节点的主要功能是执行 Client 分配给自己的任务,除此之外还向 Master 汇报自己的运行状态。

任务分发

集群是由一个 Master 节点和若干个 Slave 节点组成的,其中 Master 节点用来处理 Transformatoin 中没有指明使用集群的 Step,而 Slave 节点用来处理被指明用集群运行的 Step。假设我们定义好了一个使用集群运行的转换,客户端首先会对转换中的步骤进行切分,不同的步骤被分配到不同的服务器上。那客户端是如何分配任务的了?在启动 Carte 是我们会指定主机名和端口号,这时 Carte 会启动一个 Web 服务,接收客户端的请求,假设我们需要运行的转换如下图所示:

上面的记录集连接有一个“Cx2”的上标,表明该 Step 是在集群上运行的,该转换对应的任务分发结构如下图所示:

在 Kettle 中任务的分发采用的是 Http 协议,当任务分发结束之后各节点就要开始执行任务了。节点之间的通信采用的是 TCP 协议,使用 Socket 来实现的,各节点的通信流程如下图:

节点通信

与单机模式不同,不同的节点之间是需要相互通信的,Kettle 通过前后的 Step 是否在一个节点上来添加 RemoteStep,通过 RemoteStep 可以实现不同节点信息的交换,每个 Step 可以有负责写数据的 RemoteStep 和负责读数据的 RemoteStep,这些 RemoteStep 都是在子线程中负责循环读写数据,整体的结构和单机版的保持一致,只是在数据传输方面使用了 Socket。

kettle分布式部署_Kettle(三)分布式架构相关推荐

  1. 将PHP开发的网站分布式部署,如何进行分布式部署

    如何进行分布式部署 假如需要部署4台服务器提供高可用服务: 192.168.1.1 192.168.1.2 192.168.1.3 192.168.1.4 1.选定192.168.1.1服务器专门用于 ...

  2. 【Hadoop 分布式部署 五:分布式部署之分发、基本测试及监控】

    1.对  hadoop 进行格式化 到  /opt/app/hadoop-2.5.0  目录下 执行命令:    bin/hdfs namenode -format 执行的效果图如下  (  下图成功 ...

  3. 分布式锁的三种实现方式_分布式锁的多种实现方式

    目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题.分布式的CAP理论告诉我们"任何一个分布式系统都无法同时满足一致性(Consistency) ...

  4. Java实现分布式锁的三种方式

    文章目录 前言 一.基于数据库实现分布式锁 二.Redisson实现分布式锁 三.Zookeeper实现分布式锁 四.总结 前言 目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问 ...

  5. Chaos Mesh 实战分享丨通过混沌工程验证 GreatDB 分布式部署模式的稳定性

    Chaos Mesh 最初作为开源分布式数据库 TiDB 的测试平台而创建,是一个多功能混沌工程平台,通过混沌测试验证分布式系统的稳定性.本文以万里安全数据库软件 GreatDB 分布式部署模式为例, ...

  6. 技术分享 | 在GreatDB分布式部署模式中使用Chaos Mesh做混沌测试

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 1. 需求背景与万里安全数据库软件GreatDB分布式部署模式介绍 1.1 需求背景 混沌测试是检测分布式系统不确定性.建 ...

  7. 分布式锁以及三种加锁方式

    在很多场景中,我们为了保证数据的最终一致性,需要很多的技术方案来支持,比如分布式事务.分布式锁等.那具体什么是分布式锁,分布式锁应用在哪些业务场景.如何来实现分布式锁呢? 一 为什么要使用分布式锁 我 ...

  8. 分布式锁的三种实现方式_分布式锁的几种实现方式~

    目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题.分布式的CAP理论告诉我们"任何一个分布式系统都无法同时满足一致性(Consistency) ...

  9. 基于docker部署的微服务架构(九): 分布式服务追踪 Spring Cloud Sleuth

    为什么80%的码农都做不了架构师?>>>    前言 微服务架构中完成一项功能经常会在多个服务之间远程调用(RPC),形成调用链.每个服务节点可能在不同的机器上甚至是不同的集群上,需 ...

最新文章

  1. spark调优(一)-开发调优,数据倾斜,shuffle调优
  2. python逆转字符串封装_Python 实现文本操作之逆转字符串
  3. Ural(Timus) 1081. Binary Lexicographic Sequence
  4. 解决 kindle 书籍字体颜色偏淡问题的方法
  5. mysql考勤系统设计函数_Mysql实战之员工考勤系统数据库建立
  6. 电脑安装系统出错蓝屏报错为 STOP 0xc0000020 ,什么原因?
  7. 徽柏工业机器人_国产工业机器人龙头企业,是这家徽商!
  8. linux删除几日的文件脚本,Windows Linux 删除N天之前文件脚本
  9. 蓝桥杯 ADV-70 算法提高 冒泡法排序
  10. LeetCode 138. Copy List with Random Pointer
  11. Scratch编程——跳一跳
  12. 高斯-勒让德求积公式及Matlab实现
  13. 三分钟搭建你的个人支付接口
  14. Intel oneAPI Base Toolkit 安装教程(Linux)
  15. 【python】鞭炮快乐响,春联贴门上,祝福送到你身旁
  16. maya python教程下载_[转载]技术教程-MayaPython教程四之实战篇
  17. linux配置samba共享目录及权限
  18. 将网站添加到桌面的方法
  19. MyBatis快速入门(10)全局配置--settings
  20. SSH连接方式及加密方式

热门文章

  1. 几个简单的OpenCV程序
  2. python回归结果可视化图表解读_一个基于可视化理论的完美Python图表,快学起来
  3. 如何爬取ajax实时加载多个ts文件的视频
  4. 交换机接口用了那几根线_交换机接口知识大全!网络从业者必懂!
  5. mysql 时间chuo格式化_mysql格式化日期
  6. RHEL 8 - CIS安全合规基线、SCAP、SSG和合规扫描、漏洞扫描
  7. Quay (1) - 用Quay Operator配置Quay环境
  8. 图像拼图:HTML游戏
  9. Visual Studio提示——DebuggerDisplay
  10. php 各种排序算法,PHP四种常见排序算法