这一节来讲讲XDM数据模型和Schema模式,前面我们已经介绍了两个导入的大类:
在导入数据的是时候,需要将源数据字段和XDM/Schema的字段实现Mapping映射,将源数据映射到XDM,准确的说应该是数据摄取,就是将源数据信息提取到Schema里面。
XDM
XDM的全称是 Experience Data Model,叫数据模型。
官方对XDM的定义是一个公开存档的规范,可以将所有的数据都可以整合到一种通用的表现形式,它为摄取的数据应包含的内容以及其结构方式提供了约束。
其实可以理解为XDM是CDP里面的数据框架,XDM的数据默认主要分为两种:
- 记录数据(Record data):提供有关主题属性(Attributes)的信息。主题可以是组织或个人。对应的就是用户属性数据。
- 时间序列数据(Time Series data):提供记录主体直接或间接采取操作时系统的快照。对应的就是事件数据。
这些数据将用于后续Segment的创建,其中记录数据在Segment里是Attribute,事件序列数据在Segments是Events
Schema
Schema是模式的意思,它是创建和管理数据结构的地方,可以理解Schema是一张数据表,有两种实现方式:
- 用户界面
- RESTful API
要将源数据整合到XDM,是需要创建Schema,这个也叫做XDM架构,它由类和零个或多个架构字段组构成,它的关系是:
这里的类,可以理解为数据分类,便于对数据做管理。XDM默认的数据类型分为两种:记录数据和事件序列数据,但类却可以有多种,所有的类都属于这两个数据类型。
一般来说记录数据首选类是XDM Individual Profile,事件序列数据的首选类是XDM Experience Event,这两个是标准核心类,它的关系可以用下图表示:
除了上述两个最常用的类,还有其他的一些内置类,你也可以自己创类。类是创建Schema的起点,在首次创建的时候就要分配好类,可以没有字段组,但不能够没有类。
架构字段就是XDM具体类里面的字段,它的作用是实现外部数据映射Mapping到XDM里面,就是将外部数据提取放到这个字段里面,对架构字段是有数据类型的要求的,数据类型可以作为数据验证,还可以用命名空间防止字段冲突。如包含多个字段就叫架构字段组,字段组可以被重复使用,如不同模式Schema可以使用同一个字段组,字段组还可以嵌套使用。
XDM框架,就是创建Schema,其实就是一张表。
需要注意:在上述关系里面,还有一个默认字段,但没体现在上述关系里面,就是ID,对应的是Identities(XDM里那么多Schema,需要关联起来就需要Identities服务,可以说XDM里有三类数据:记录数据、事件序列数据和Identities数据),创建Schema,默认一定会有ID的,你需要要导入的数据里的标识设置成ID,实现数据的关联。
XDM和Schema的关系
如上图,如果将XDM理解为数据库,那么Schema就是一张表,XDM是包含Schema的。
XDM的数据逻辑
XDM的数据逻辑如下:
XDM的数据类型分为两种类型,通过数据类型和类实现数据的分类管理,数据类型只有两种,但类可以有多种。
通过类和字段组构成的模式实现数据结构的管理,字段组包含字段,可以用类层级下进一步分类,如XDM Individual Profile下面可以有不同的字段组数据描述个体的信息,使得整个数据结构更清晰:
同时字段组可以重复的利用,还可以嵌套使用。
XDM建得好,后续定位受众就简单很多。