页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

若数据库中有一张表,每天都会新增数据,这时候用户可以使用 增量抽取,只将每天新增的数据更新到 Smartbi MPP 表,。这样就不需要更新整张数据表,节省了更新时间和更新资源。表,这样就不需要更新整张数据表,节省了更新时间和更新资源。


信息

1、增量抽取只在数据模型引擎V2.0上生效。

2、目前增量抽取支持的缓存库:SmartbiMpp产品默认使用高速缓存库CH、StarRocksSmartbiMppMD产品exe安装包自带高速缓存库,正在持续继续完善。


1.1

...

增量抽取适用场景

  • 数据源中的表,每天都有数据更新,希望每天取到最新的数据。
  • 数据库中某张表的近四天的数据重新校正过了,需要更改到 MPP 中;该表数据量很大,全量更新的时间很长,可以通过增量更新进行抽取。


1.2 概念介绍

  增量抽取,提供了 “追加”、“更新与插入”2种方式:

...

2、更新与插入:每次抽取,根据“用于判断数据在缓存库中是否存在的主键字段”逐行判断该行数据在缓存库中是否存在,如果不存在则插入,如果存在则更新。,如下图所示:Image Removed逐行判断该行数据在缓存库中是否存在,如果不存在则插入,如果存在则更新,如下图所示:

Image Added

2 功能介绍

数据模型共有9种查询,其中 导入文件生成日期表ETL高级查询 不支持增量抽取。

产品自带数据源northwind数据库下的“orders”表、“OrderDetail”为例来进行说明。

为了更好的说明增量抽取的原理,在"orders"源表中,增加一列“UpdateTime”,如下图:

Image Added

具体的操作步骤如下:

1、创建数据模型并在数据模型加入"ordersDetail"表,以及通过SQL查询来筛选大于2024-01-01的订单信息,创建的模型如下:

Image Added

2、在参数管理中,创建参数UpdateTime,并映射到“Orders”表:

Image Added

3、由于"Orders"表的数据很大,并且经常会更新比如调整收获地址等,所以需要设置入库方式为“更新与插入”:

Image Added

选中”增量抽取“,增量数据获取方式:按字段筛选、按参数筛选:

选项说明
按字段筛选
  • 当选中的是”数据源表“时,它才是启用状态,当选中的是其他查询是禁用状态。
按参数筛选


用于标识新增数据的参数:

  • 原理:假设“与参数关联的字段”是 field,上一次抽取时 field 字段的最大值表示为 last_max(field),则本次抽取获取增量数据的过滤条件是 field > last_max(field)然后通过“用于标识新增数据的参数”,将上述过滤条件传递到查询中。
  • 只能选择与之映射的参数,如果没有映射参数,将不能进行增量抽取。
与参数关联的字段:
只能选择数值型、日期、日期时间类型的字段。

由于刚已经映射了参数“UpdateTime”,所以“用于标识新增数据的参数” 选择“UpdateTime”、”与参数关联的字段“的选择“UpdateTime”字段, 如下图所示:




3、关于增量抽取,需要注意点:

  • 不支持增量更新的表或查询:导入文件、生成日期表、ETL高级查询。
  • 其中“数据源表”的”增量获取方式“只支持“按字段筛选”,

1.2 功能简介

满足以下条件的数据表,比较适合使用增量更新

...