StreamSets(3.22.2)创建一个工作流

StreamSets(3.22.2)创建一个工作流

首先介绍工作流中的四类组件

  • Origins: origin是一个管道工作流的源, 一个工作流只能由一个origin
  • Processors: Processors表示您要执行的一种数据处理类型。您可以根据需要在管道中使用任意数量的Processor
  • Destinations: Destinations代表工作流的目的地, 一个工作流可以有一个或多个目的地
  • Executors: Executors在接收到事件时触发任务
  1. 上一节StreamSets启动之后, 在浏览器中输入http://$host::18630打开如下页面,

在这里插入图片描述

  1. 点击左上角新建工作流

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VBrgM94K-1631256666700)(pipeline.assets/image-20210902164441285.png)]

  1. 这里选择一个简单的**Origins **组件directory, 将外部数据数据输入到StreamSets

    [root@localhost listen_dir]# pwd
    /home/fgap/wbb/listen_dir
    [root@localhost listen_dir]# jq . 1.json 
    [
    {
     "name": "1.1.1.1",
     "field1": 1,
     "data": "local",
     "host": "1.1.1.1",
     "value": "1"
    },
    {
     "name": "www.baidu.com",
     "field1": 1,
     "data": "baidu",
     "host": "2.2.2.2",
     "value": "2"
    },
    {
     "name": "www.tencent.com",
     "field1": 1,
     "data": "tencent",
     "host": "2.2.2.2",
     "value": "3"
    }
    ]
    [root@localhost listen_dir]# 
    

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hFIr30X1-1631256666701)(pipeline.assets/image-20210902165109191.png)]

进行一些配置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f9vFi6dC-1631256666702)(pipeline.assets/image-20210902165555906.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1jxEYo31-1631256666703)(pipeline.assets/image-20210902165738553.png)]

  1. 选择一个Processers组件Jython Executor, 用来处理data字段

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w8w51Lj1-1631256666704)(pipeline.assets/image-20210902171527062.png)]

    data字段处理

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-27Uhthh6-1631256666704)(pipeline.assets/image-20210902172408179.png)]

  2. 接着选择一个Processers组件Stream Selector

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eAQEVOAN-1631256666705)(pipeline.assets/image-20210902173209750.png)]

    将符合条件一的数据输入到下一个Processers组件Field Remover, 过滤掉value字段. 不符合条件的数据输入到Destinations组件Trash中.

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SPLi3JKK-1631256666705)(pipeline.assets/image-20210902173518635.png)]

    Field Removerfield1字段处理

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pF7WGlns-1631256666705)(pipeline.assets/image-20210902174603339.png)]

  3. 最后选择一个Destinations组件local FS, 默认输出路径/tmp/out/${YYYY()}-${MM()}-${DD()}-${hh()}

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xwtxAIcK-1631256666706)(pipeline.assets/image-20210902192353466.png)]

  4. 启动工作流

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xuVtxSSx-1631256666706)(pipeline.assets/image-20210902192448197.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qqBgdLRu-1631256666707)(pipeline.assets/image-20210902193427995.png)]

    结果:

    [root@localhost 2021-09-02-11]# pwd
    /tmp/out/2021-09-02-11
    [root@localhost 2021-09-02-11]# tree
    .
    └── _tmp_sdc-d8f0eeda-0b20-11ec-9701-9391d80e4d4b_0
    
    0 directories, 1 file
    [root@localhost 2021-09-02-11]# jq . _tmp_sdc-d8f0eeda-0b20-11ec-9701-9391d80e4d4b_0 
    [
    {
     "name": "1.1.1.1",
     "field1": 2,
     "data": "hello local hello",
     "host": "1.1.1.1"
    },
    {
     "name": "www.baidu.com",
     "field1": 2,
     "data": "hello baidu hello",
     "host": "2.2.2.2"
    },
    {
     "name": "www.tencent.com",
     "field1": 2,
     "data": "hello tencent hello",
     "host": "2.2.2.2"
    }
    ]
    [root@localhost 2021-09-02-11]# 
    
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值