Tapdata【一个低代码实时数据开发平台】

1.是什么

Tapdata 是一款国产的数据服务产品,旨在帮助企业打破多个数据孤岛,可大幅度提高数据团队工作效率。 主要专注于数据的迁移、转换与发布,并提供实时性,基于数据库日志的实时迁移或同步。

 官网地址:https://tapdata.net/

2.为什么需要

  • 是否有一个中央化数据存储的地方供其他系统使用
  • 数据散落在多个系统,难以重复利用
  • 大量脚本、存储过程和SQL重复开发
  • 数据准备消耗了70%的工作量,仅剩下30%时间用于核心业务开发

3.能做什么

  支持关系型数据库和NoSql数据库、ES等等之间的数据同步

  • 迁移或同步过程中,需要对数据的结构做转换、对指定的数据值做处理
  • 数据传输:数据库之间的同步、数据同步(表与表之间的同步)、数据同步之后的校验数据准确性
  • 数据发布:它可以在1分钟内快速发布一个标准 Restful 的接口,供各个系统调用获取数据
  • 数据治理:主要是对同步之后的元数据管理工作,表结构、字段变更...

4.应用场景

  • 将数据源A库中的某张表或某几个表中的字段合并后的数据、脏数据过滤插入到数据库B中
  • 像我们会在每晚定时执行一些业务处理,可能是统计、汇总、备份、计算等等,用工具就可以方便的多,写代码的话也可以实现,可能需要大量时间,而且质量也很难保证
  • 实时更新缓存

    业务查询类服务往往会在Mysql之上架设一个缓存,减少对底层数据库的访问;当Mysql库数据变化时,如果缓存还没有过期那么就会拿到过期的数据,业务期望能够实时更新缓存;

    采用Redis数据节点来处理数据,这样就能够保证了缓存中数据有效性,减少了对数据库的调用,从而提高整体性能。

  • 异步处理,系统解耦

    随着业务的发展,同一份数据可能有不同的分析用途,数据成功写入到Mysql的同时也需要被同步到其他系统;可以通过API发布供其他系统调用获取数据

5.如何使用

 文档手册地址:https://docs.tapdata.net/

 语雀文档地址:https://www.yuque.com/tapdata/cloud

6.个人使用总结

优点:

  • 操作简单,界面比较简洁大气
  • 支持的数据源种类比较多(RDBMS、NoSql、ES)
  • 通过一些节点处理器来操作复杂数据同步处理(JS节点、字段节点、聚合节点、过滤节点)
  • 零代码可视化拖拽操作,执行效率比较高效
  • 实时的任务运行监控,可以看到各个节点之间的数据处理情况

缺点:

  • 同一个任务里面不支持相同的数据表出现
  • 拖拽操作简单,复杂业务场景使用起来就比较繁琐,各个节点的关系就要整理清楚
  • 不支持SQL语句执行,如果能够将SQL联合起来那种就更加方便了,就没那么繁琐了(类比kettle)
  • Mongodb到ES的数据同步,会有一个先删后增的操作,导致ES的索引存储大小不断变大
  • 数据同步的中间表相对较多,对我们业务用处不大的数据表存在,比较冗余
原文地址:https://www.cnblogs.com/tangxinwang/p/15059849.html