KETTLE集群的配置及调用

KETTLE版本

KETTLE是属于Pentaho开源商务智能软件的ETL工具方面,Pentaho是以工作流为核心的、强调面向解决方案而非工具组件的BI套件,整合了多个开源项目,目标是和商业BI相抗衡。
Kettle国外社区:http://forums.pentaho.com/forumdisplay.php?135-Pentaho-Data-Integration-Kettle
官网中并没有详细描述Kettle商业版的功能,商业版的URL是:http://www.pentaho.com/product/version-7-1-update#microsoft-azure-hdinsight(如果我没看错的话,应该是)
,官网的主要描述都是指可视化的优化和0代码的操作还有对于大数据更高更多的支持。目前可以申请7.1版本的30天免费试用版本。


KETTLE集群配置

  1. Kettle的集群原理
    Kettle集群:

    • 是由一个主carte服务器和多个从carte服务器组成的,类似于master-slave结构,不同的是’master’处理具体任务,只负责任务的分发和收集运行结果。
    • Master carte结点收到请求后,把任务分成多个部分交给slave carte执行,slave执行完毕后把结果交给mater 进行汇总,再由mster返回结果。
  2. 集群的优点:

    • 多服务器运行,加快处理速度,对于大数据量的操作更明显
    • 防单点失败,一台服务器故障后其它服务器还可以运行
  3. 集群的缺点:

    • 采用主从结构,不具备自动切换主从的功能。所以一旦主节点宕机,整个系统不可用
    • 对网络要求高,节点之间需要不断的传输数据
    • 需要更多的服务器,而且主节点没有处理能力
  4. 适用场景
    • 需求kettle能时刻保持正常运行的场景
    • 大批量处理数据的场景

集群搭建:

  1. 配置主(子)服务器:
    • 主要的配置文件目录为kettle的pwd目录下,里面有四个配置文件分别是子服务器的配置文件和密码文件;

    • Carte-config-master-8080.xml是主服务器的配置文件。编辑该文件,根据情况修改其中的name\hostname\port\master等属性。Name是服务器的名称,hostname是主机名或者IP,port是端口号,Master表明是否是主服务器。此外,加上两行:
      cluster
      cluster
    • 接着启动主服务器,在kettle目录中打开cmd窗口,执行carte localhost 8080:
    • 配置从服务器(按需求更改)
    • 这里的materl是主服务器(我这里是本地模拟所以没有设置外部IP),到时使用的时候根据机器IP进行准确的设置。
    • 然后启动从服务器(我设置的是8081和8082)模拟一个端口一台

    • 在KETTLE中选择主对象树-子服务器,右键新键子服务器:

    • 在主对象树中选择kettle集群schemas
      • Schema名称即集群的名称。
      • 端口即集群对外服务的端口.
      • sockets缓存大小:sockets缓存
      • Sockets刷新时间间隔:达到多少行记录时刷新到子服务器。
      • Sockets数据是否压缩:如果网络状况差,则建议选择。网络良好时不用选择。
    • 在已经写好的转换中点击集群,然后会显示:
    • 选择然后会发现排序纪录多出”CX2”,表示有2个子服务器来执行。在一个三个子服务器的集群中,主服务器负责任务分发、结果收集,转换任务由从服务器执行,故只有两个节点执行。
    • 然后执行该转换
    • 在命令行中
    • 这样就整个集群成功测试!

你可能感兴趣的:(kettle,etl,JAVA)