greenman0007
V2EX  ›  Java

求助,异构数据实时采集方案

  •  
  •   greenman0007 · Aug 1, 2019 · 4700 views
    This topic created in 2477 days ago, the information mentioned may be changed or developed.

    目前公司在做的一个项目需要对接第三方系统的数据,获取完数据都进行加工成标准化的数据存储,现在要考虑怎么整合接入不同的第三方系统,我简要画了个流程图,大致设想如下图:

    现在不知道有没有成熟的方案,或者应该按什么关键词搜索?

    要求:

    1. 第三方系统对接形式不确定,目前有数据库视图(存储过程),webservice 接口,http 接口
    2. 第三方系统均为实时数据,可以假定都存储于 RDBMS
    3. 业务系统要能实时查询到数据(秒级)
    4. 仅限于 java 语言
    12 replies    2019-08-02 14:45:27 +08:00
    xio
        1
    xio  
       Aug 1, 2019
    ETL ?
    greenman0007
        2
    greenman0007  
    OP
       Aug 1, 2019
    @xio 类似 ETL,但是我这种源数据是实时增加的,而且需要程序自动抓取
    jingxyy
        3
    jingxyy  
       Aug 1, 2019
    ELK 套装也许是你想要的 不过这一套偏向于检索 加工这一块比较弱
    xio
        4
    xio  
       Aug 1, 2019
    @greenman0007 那你可以用队列做数据源啊。。抓取后进队列,ETL 消费队列不就好了么??
    iPhoneXI
        5
    iPhoneXI  
       Aug 1, 2019 via Android
    kafka ?
    xio
        6
    xio  
       Aug 1, 2019
    @greenman0007 哦,好吧。。我理解错误
    arrow8899
        7
    arrow8899  
       Aug 1, 2019
    不同的数据源实现一个专门的采集器,然后转化成标准的数据格式就行了,你图上都画出来了;至于采集,直接使用定时任务就行了吧。
    greenman0007
        8
    greenman0007  
    OP
       Aug 1, 2019
    @jingxyy 新增的数据怎么办,能自动抓取吗?有推荐的么?
    greenman0007
        9
    greenman0007  
    OP
       Aug 1, 2019
    @arrow8899 定时任务做的话,如果时间间隔太短,可能会对第三方系统有影响,间隔太长,数据延迟太严重
    arrow8899
        10
    arrow8899  
       Aug 1, 2019
    @greenman0007 这个就要看外部系统能不能把数据直接推送给你吧,不支持的话只能定时主动拉取
    greenman0007
        11
    greenman0007  
    OP
       Aug 2, 2019
    @arrow8899 只能主动拉,定时增量拉的话,有一些问题,比如已经拉取的数据在外部系统被修改了,怎么监测到?这样的话是不是就每次得全量拉了?
    snappyone
        12
    snappyone  
       Aug 2, 2019
    @greenman0007 按照时间戳去定时拉取,然后按照主键合并到自己系统
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   921 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 20:34 · PVG 04:34 · LAX 13:34 · JFK 16:34
    ♥ Do have faith in what you're doing.