关键概念
Daspire使您能够构建数据管道并将数据从数据源复制到目的地。您可以设置数据同步的频率、复制哪些数据、数据在目的地中写入的格式以及数据是以原始表格式还是基本正常化(或 JSON)格式存储的。
本页介绍使用Daspire您需要了解的关键概念。
空间
当您注册Daspire时,我们会自动创建您的第一个空间,您是唯一有权访问的用户。您可以设置数据源和目的地以开始同步数据并邀请其他用户加入您的空间。
空间是一组数据源、目的地、数据接口和其他配置。它使您可以与团队成员协作,并在共享计费帐户下跨团队共享资源。
数据源
数据源是您可以从中复制数据的数据库、API或文件。
目的地
目的地是您可以将数据加载到的数据仓库、数据库或数据湖等。
数据接口
数据接口是将数据从数据源复制到目的地的自动化数据流程。
数据流
数据流是一组相关的记录。
数据流的例子:
- 关系数据库中的表
- REST API的资源或API端点
- 来自文件系统中包含许多文件目录的记录
字段
字段是数据流中记录的属性。
字段示例:
- 关系数据库表中的一列
- API响应中的一个字段
命名空间
命名空间是数据源或目的地中的一组数据流。命名空间的常见用例是强制执行权限、隔离测试和生产数据以及一般数据组织。
命名空间的例子:
- 关系数据库系统中的架构是命名空间的一个示例。
Daspire命名空间
在数据源中,命名空间是将数据复制到目的地的位置。
在目的地中,命名空间是复制数据在目的地中的存储位置。
Daspire 支持目标命名空间的以下配置选项:
配置 | 说明 |
---|---|
镜像数据源结构 | 一些数据源(例如数据库)为数据流提供命名空间信息。如果数据源提供命名空间信息,则目的地将在设置此配置时重现相同的命名空间。对于数据源命名空间未知的数据源或数据流,则将默认为“目的地默认”选项。 |
目的地默认 | 所有数据流都将被复制并存储在目的地设置页面上定义的默认命名空间中。有关热门目的地的设置,请参阅目的地接口设置。 |
自定义格式 | 所有数据流都将被复制并以用户定义的自定义格式存储。有关详细信息,请参阅自定义格式。 |
数据接口配置
建立数据接口涉及配置以下参数:
参数 | 说明 |
---|---|
同步时间 | 什么时候应该触发数据同步? |
目的地命名空间和数据流名称 | 复制出来的数据应该怎么写? |
数据选择 | 应该将哪些数据从源复制到目标? |
同步模式 | 数据应该如何复制? |
转换 | Daspire协议消息(原始 JSON blob)数据应如何转换为其他数据表示形式? |
数据接口同步模式
同步模式控制Daspire如何从数据源读取和写入目的地。Daspire提供不同的同步模式来解决各种用例。
- 完全刷新 | 覆盖:同步数据源中的所有记录并通过覆盖替换目的地中的数据。
- 完全刷新 | 附加:从数据源同步所有记录并将它们添加到目的地而不删除任何数据。
- 增量同步 | 附加: 从数据源同步新记录并将它们添加到目的地而不删除任何数据。
- 增量同步 | 去重历史:从数据源同步新记录并将它们添加到目的地。还提供镜像数据源中数据流状态的去重视图。
数据正常化
数据正常化是将数据从数据源结构化为适合在目的地中使用的格式的过程。例如,当将数据从嵌套的动态类型源(如JSON API)写入关系目的地(如Postgres)时,正常化是将数据源中的JSON取消嵌套为关系表格式的过程,该格式在目的地中使用适当的列类型。
请注意,正常化仅与以下关系数据库和数据仓库目的地相关:
- BigQuery
- Snowflake
- Redshift
- Postgres
- Oracle
- MySQL
- MSSQL
其他目的地不支持本节中所述的正常化,尽管它们可能以对它们有意义的格式正常化数据。例如,S3目的地接口提供了在S3中写入JSON文件的选项,但也提供了写入静态类型文件(如Parquet或Avro)的选项。
同步完成后,Daspire会对数据进行标准化。设置数据接口时,您可以选择以下正常化选项之一:
- 原始数据(未正常化):Daspire将数据的JSON blob版本放在名为
_daspire_raw_<stream name>
的表中 - 基本正常化:Daspire将数据的原始JSON blob版本转换为目的地格式。注意:并非所有目的地都支持正常化。