跳到主要内容
版本:3.x

产品特性/使用

适用版本Cloud 功能TapData Cloud 为您提供了云端服务,适合需要快速部署、低前期投资场景,帮助您更好地专注于业务发展而非基础设施管理,注册账号即可领取免费的 Agent 实例,欢迎试用。企业版功能TapData Enterprise 可部署在您的本地数据中心,适合对数据敏感性或网络隔离有严格要求的场景,可服务于构建实时数仓,实现实时数据交换,数据迁移等场景。社区版功能TapData Community 是一个开源的数据集成平台,提供基础的数据同步和转换功能,可通过 Docker 一键部署,帮助您快速探索和实施数据集成项目。随着项目或企业发展,您可以平滑升级至 TapData Cloud 或 TapData Enterprise,以获得更多高级功能或服务支持。

本文列举使用 TapData 过程中的常见问题。

TapData 支持哪些数据源?

TapData 支持丰富的数据库,包括常见关系型、非关系型以及队列型数据源,详情见支持的数据库

TapData 支持试用吗?

支持。您可以点击“申请试用‍”‍,TapData 工程师会联系您并协助您试用。

TapData 如何收费?

TapData 提供 CloudEnterprise 两种部署方式,满足您多样化的需求:

产品适用场景定价说明
TapData Cloud注册 TapData Cloud 账号即可使用,适合需要快速部署、低前期投资场景,帮助您更好地专注于业务发展而非基础设施管理。免费提供 1 个 SMALL 规格的 Agent 实例(半托管模式),您也可以按照业务需求,订阅更高规格或更多数量的 Agent 实例。更多介绍,见产品计费
TapData Enterprise支持部署至本地数据中心,适合对数据敏感性或网络隔离有严格要求的场景,如金融机构、政府部门或希望完全控制数据的大型企业。基于部署的服务器节点数量,按年支付相应的订阅费用。在正式采购前,您可以点击“申请试用‍”‍,TapData 工程师会联系您并协助您试用。更多介绍,见产品定价

连接测试失败怎么办?

创建数据连接时,需要参照页面右侧连接配置帮助,按指南完成相关参数的设定,您也可以参考准备工作完成设置。

配置复制任务时,目标节点推演结果异常?

TapData 会自动基于选择源表来推演目标表结构等信息,此处可能遇到的问题如下:

  • 更新条件异常:TapData 会将更新条件自动设置为表的主键,如果没有主键则选用唯一索引字段,无主键和唯一索引时,您需要手动指定更新条件的字段。
  • 推演异常:通常是字段类型异常引起,您可以根据页面提示,调整相关字段的类型。

推演结果异常

TapData 处理事务的逻辑是什么?

通常一个事务有开始、过程、提交、撤回几种可能,因此事务开始执行后,可能会有多个 SQL 发起,此时 TapData 即捕获这些变更并缓存起来。

长时间未提交的事务会导致每次启停任务将从该事务开始挖掘,为避免影响源库和增量同步的性能,TapData 会清理超过一定时长的未提交事务,如果清理后源库再提交了该事务,可能导致数据不一致。

为避免此类情况发生,请在配置任务时,设置来源节点(如 Oracle 库)的未提交事务生命时长,以符合业务需求。

未提交事务生命时长

TapData 是否支持将表发布 API 服务?

适用版本企业版功能TapData Enterprise 可部署在您的本地数据中心,适合对数据敏感性或网络隔离有严格要求的场景,可服务于构建实时数仓,实现实时数据交换,数据迁移等场景。

支持(单表),您可以将加工后的表发布为 API 服务,以便其他应用程序可以轻松地访问和获取数据。

如何基于多表的复杂查询发布为 API 服务?

适用版本企业版功能TapData Enterprise 可部署在您的本地数据中心,适合对数据敏感性或网络隔离有严格要求的场景,可服务于构建实时数仓,实现实时数据交换,数据迁移等场景。

面对基于多表的复杂查询场景,业界常见的解决方案有物化视图和即席查询(Ad-hoc Query):

  • 物化视图: 物化视图是一种预先计算和存储的虚拟表,它在查询时提供了高性能的数据访问。通过将多表 Join 操作提前执行并将结果存储为物化视图,可以极大地提高查询性能和响应时间,该方案适用于数据变化频率较低的情况,因为每次数据更新时都需要更新物化视图。
  • 即席查询: 即席查询是根据用户的需求即时执行的查询,没有提前计算和存储的过程,该方案适用于数据变化频率较高的场景,因为它可以实时获取最新的数据,但在多表 Join 操作时可能会导致较高的查询成本和较长的响应时间。

在 TapData 中,您可以将多表的复杂查询固化为物化视图提供 API 服务,您可以基于查询的复杂程度和对实时性的要求选择下述方案:

实时视图方案

实时视图方案适用于 SQL 语句相对简单,对数据实时性要求高的场景,其核心思想上以多样化的处理节点来实现 SQL 语句中的具体操作(如 Join),最终将处理后的数据实时同步到一个新表,最后基于该表创建并发布 API 服务。

具体步骤如下:

  1. 创建数据转换任务

  2. 将 SQL 语句中的具体操作以处理节点来替代。如下图所示,我们预先将 customercompany 表执行连接(Join)操作(通过连接节点实现),并将其结果存至 join_result 表。

    Join 表

  3. 启动任务实现数据的实时同步。

  4. 基于新表(join_result)创建并发布 API 服务

跑批视图方案

面对非常复杂的 SQL 语句(例如 SQL 嵌套、复杂 Join 等),可直接将 SQL 语句在全量阶段执行,将查询结果同步至一个新表,最后基于该表创建并发布 API 服务。该方案适用于 SQL 复杂性高,但对实时性要求不高的场景。

具体步骤如下:

  1. 创建数据转换任务

  2. 在画布中添加源和目标节点。

    提示

    目标节点需为弱 Scheme 类的数据源,例如如 MongoDB 或 Kafka。

  3. 在源节点设置阶段,打开全量自定义查询开关,添加全量数据同步阶段需要执行的 SQL 查询语句(不对增量阶段生效)。

    自定义查询

  4. 完成目标节点的设置后,单击页面右上角的设置,将同步类型设置为全量,随后基于对实时性的要求设置定期调度的策略。

  5. 启动任务,等待任务运行完毕后再基于新表创建并发布 API 服务