Este documento proporciona una introducción a Experience Data Model (XDM) esquemas y los componentes, principios y prácticas recomendadas para la composición de esquemas que se van a utilizar en Adobe Experience Platform. Para obtener información general sobre XDM y cómo se utiliza en Platform, consulte la Información general del sistema XDM.
Un esquema es un conjunto de reglas que representan y validan la estructura y el formato de los datos. En un nivel superior, los esquemas proporcionan una definición abstracta de un objeto del mundo real (como una persona) y describen qué datos deben incluirse en cada instancia de ese objeto (como nombre, apellido, cumpleaños, etc.).
Además de describir la estructura de los datos, los esquemas aplican restricciones y expectativas a los datos para que se puedan validar a medida que se desplaza de un sistema a otro. Estas definiciones estándar permiten interpretar los datos de forma coherente, independientemente del origen, y eliminan la necesidad de realizar traducciones entre aplicaciones.
Experience Platform mantiene esta normalización semántica utilizando esquemas. Los esquemas son la forma estándar de describir los datos en Experience Platform, lo que permite reutilizar en una organización sin conflictos todos los datos que se ajustan a esquemas, o incluso compartirlos entre varias organizaciones.
Los esquemas XDM son ideales para almacenar grandes cantidades de datos complejos en un formato independiente. Consulte las secciones de objetos incrustados y big data en el apéndice de este documento para obtener más información sobre cómo lo consigue XDM.
La estandarización es un concepto clave Experience Platform. XDM, impulsado por el Adobe, es un esfuerzo para estandarizar los datos de experiencia del cliente y definir esquemas estándar para la administración de experiencias del cliente.
La infraestructura en la que Experience Platform se crea, se conoce como XDM System, facilita los flujos de trabajo basados en esquemas e incluye el Schema Registry, Schema Editor, metadatos de esquema y patrones de consumo de servicio. Consulte la Información general del sistema XDM para obtener más información.
Existen varias ventajas clave para aprovechar los esquemas en Experience Platform. En primer lugar, los esquemas permiten un mejor control de los datos y la minimización de los mismos, lo que es especialmente importante con las regulaciones de privacidad. En segundo lugar, la creación de esquemas con los componentes estándar de Adobe permite obtener perspectivas integradas y utilizar servicios AI/ML con personalizaciones mínimas. Por último, los esquemas proporcionan infraestructura para la información sobre el uso compartido de datos y la orquestación eficiente.
El primer paso para crear un esquema es determinar el concepto, o objeto real, que está intentando capturar en el esquema. Una vez identificado el concepto que intenta describir, puede empezar a planificar el esquema pensando en cosas como el tipo de datos, los campos de identidad potenciales y cómo puede evolucionar el esquema en el futuro.
Datos destinados a ser utilizados en Experience Platform se agrupa en dos tipos de comportamiento:
Todos los esquemas XDM describen datos que pueden clasificarse como registros o series temporales. El comportamiento de los datos de un esquema se define mediante la clase del esquema, que se asigna a un esquema cuando se crea por primera vez. Las clases XDM se describen en detalle más adelante en este documento.
Los esquemas de registros y series temporales contienen un mapa de identidades (xdm:identityMap
). Este campo contiene la representación de identidad de un asunto, extraída de campos marcados como "Identidad" como se describe en la siguiente sección.
Los esquemas se utilizan para introducir datos en Experience Platform. Estos datos se pueden utilizar en varios servicios para crear una única vista unificada de una entidad individual. Por lo tanto, es importante, al pensar en esquemas, pensar en las identidades de los clientes y en qué campos se pueden utilizar para identificar un sujeto independientemente de su origen.
Para ayudar con este proceso, los campos clave dentro de los esquemas se pueden marcar como identidades. Al ingerir los datos, los datos de esos campos se insertan en el campoGráfico de identidad" para ese individuo. A continuación, se puede acceder a los datos del gráfico mediante Real-Time Customer Profile y otros Experience Platform para proporcionar una vista unida de cada cliente individual.
Campos que suelen marcarse como "Identidad" incluyen: dirección de correo electrónico, número de teléfono, Experience Cloud ID (ECID), ID de CRM u otros campos de ID únicos. También debe tener en cuenta cualquier identificador único específico de su organización, ya que puede ser bueno "Identidad" también.
Es importante tener en cuenta las identidades de los clientes durante la fase de planificación del esquema para garantizar que los datos se recopilen y creen el perfil más sólido posible. Consulte la descripción general sobre Servicio de identidad de Adobe Experience Platform para obtener más información sobre cómo la información de identidad puede ayudarle a ofrecer experiencias digitales a sus clientes.
Existen dos maneras de enviar datos de identidad a Platform:
identityMap
fieldidentityMap
identityMap
es un campo de tipo map que describe los distintos valores de identidad de un individuo, junto con sus áreas de nombres asociadas. Este campo se puede utilizar para proporcionar información de identidad para los esquemas, en lugar de definir valores de identidad dentro de la estructura del propio esquema.
El principal inconveniente de utilizar identityMap
es que las identidades se incrustan en los datos y, como resultado, se vuelven menos visibles. Si va a introducir datos sin procesar, debe definir campos de identidad individuales dentro de la estructura de esquema real.
Un esquema que utiliza identityMap
puede utilizarse como esquema de origen en una relación, pero no como esquema de referencia. Esto se debe a que todos los esquemas de referencia deben tener una identidad visible que se pueda asignar en un campo de referencia dentro del esquema de origen. Consulte la guía de IU sobre relaciones para obtener más información sobre los requisitos de los esquemas de origen y referencia.
Sin embargo, los mapas de identidad pueden resultar especialmente útiles si reúne datos de fuentes que almacenan identidades (como Airship o Adobe Audience Manager), o cuando hay un número variable de identidades para un esquema. Además, se requieren mapas de identidad si utiliza la variable SDK de Adobe Experience Platform Mobile.
Un ejemplo de mapa de identidad simple sería el siguiente:
"identityMap": {
"email": [
{
"id": "jsmith@example.com",
"primary": true
}
],
"ECID": [
{
"id": "87098882279810196101440938110216748923",
"primary": false
},
{
"id": "55019962992006103186215643814973128178",
"primary": false
}
],
"CRMID": [
{
"id": "2e33192000007456-0365c00000000000",
"primary": false
}
]
}
Como se muestra en el ejemplo anterior, cada clave de la variable identityMap
representa un área de nombres de identidad. El valor de cada clave es una matriz de objetos que representan los valores de identidad (id
) para el área de nombres correspondiente. Consulte la Identity Service documentación para un lista de áreas de nombres de identidad estándar reconocido por las aplicaciones de Adobe.
Un valor booleano para si el valor es una identidad principal (primary
) también se puede proporcionar para cada valor de identidad. Solo es necesario establecer identidades primarias para los esquemas que se van a utilizar en Real-Time Customer Profile. Consulte la sección sobre esquemas de unión para obtener más información.
A medida que la naturaleza de las experiencias digitales sigue evolucionando, también lo hacen los esquemas utilizados para representarlas. Por lo tanto, un esquema bien diseñado puede adaptarse y evolucionar según sea necesario, sin causar cambios destructivos en versiones anteriores del esquema.
Dado que mantener la compatibilidad con versiones anteriores es crucial para la evolución del esquema, Experience Platform aplica un principio de versiones puramente aditivo. Este principio garantiza que cualquier revisión del esquema solo produzca actualizaciones y cambios no destructivos. En otras palabras, no se admiten los cambios de interrupción.
Si aún no se ha utilizado un esquema para introducir datos en Experience Platform y no se ha habilitado para su uso en el perfil del cliente en tiempo real, puede introducir un cambio de ruptura en ese esquema. Sin embargo, una vez que el esquema se ha utilizado en Platform, debe adherirse a la directiva de versiones aditivas.
En la tabla siguiente se desglosan los cambios compatibles al editar esquemas, grupos de campos y tipos de datos:
Cambios admitidos | Cambios que se rompen (no compatible) |
---|---|
|
|
*Consulte la sección siguiente para conocer las consideraciones importantes sobre configuración de nuevos campos obligatorios.
Los campos de esquema individuales pueden marcado como obligatorio, lo que significa que los registros ingestados deben contener datos en esos campos para pasar la validación. Por ejemplo, si se establece el campo de identidad principal de un esquema como sea necesario, puede ayudar a garantizar que todos los registros ingestados participen en el Perfil del cliente en tiempo real, mientras que al establecer un campo de marca de tiempo como sea necesario, se garantiza que todos los eventos de series temporales se conserven cronológicamente.
Independientemente de si un campo de esquema es obligatorio o no, Platform no acepta null
o valores vacíos para cualquier campo introducido. Si no hay ningún valor para un campo concreto de un registro o evento, la clave de ese campo debe excluirse de la carga útil de ingesta.
Si se ha utilizado un campo para introducir datos y no se ha establecido originalmente como requerido, ese campo puede tener un valor nulo para algunos registros. Si establece este campo como obligatorio después de la ingesta, todos los registros futuros deben contener un valor para este campo aunque los registros históricos puedan ser nulos.
Cuando configure un campo opcional anteriormente como sea necesario, tenga en cuenta lo siguiente:
Para introducir datos en Experience Platform, primero debe crearse un conjunto de datos. Los conjuntos de datos son los componentes básicos para la transformación y el seguimiento de datos Catalog Service, y generalmente representan tablas o archivos que contienen datos introducidos. Todos los conjuntos de datos se basan en esquemas XDM existentes, que proporcionan restricciones sobre qué deben contener los datos ingestados y cómo deben estructurarse. Consulte la descripción general sobre Incorporación de datos de Adobe Experience Platform para obtener más información.
Experience Platform utiliza un enfoque de composición en el que se combinan los componentes básicos estándar para crear esquemas. Este enfoque promueve la reutilización de los componentes existentes e impulsa la estandarización en toda la industria para admitir esquemas y componentes de proveedores en Platform.
Los esquemas se componen con la siguiente fórmula:
Clase + Grupo de campos de esquema* = Esquema XDM
*Un esquema está compuesto por una clase y cero o más grupos de campos de esquema. Esto significa que puede componer un esquema de conjunto de datos sin usar grupos de campos en absoluto.
La composición de un esquema comienza asignando una clase. Las clases definen los aspectos de comportamiento de los datos que contendrá el esquema (registro o serie temporal). Además de esto, las clases describen el menor número de propiedades comunes que todos los esquemas basados en esa clase necesitarían para incluir y proporcionar una forma de combinar varios conjuntos de datos compatibles.
La clase de un esquema determina qué grupos de campos pueden utilizarse en ese esquema. Esto se analiza con más detalle en la sección sección siguiente.
Adobe proporciona varias clases XDM estándar ("core"). Dos de estas clases, XDM Individual Profile y XDM ExperienceEvent, son necesarios para casi todos los procesos de Platform descendentes. Además de estas clases principales, también puede crear sus propias clases personalizadas para describir casos de uso más específicos para su organización. Las clases personalizadas las define una organización cuando no hay clases principales definidas por el Adobe disponibles para describir un caso de uso único.
La siguiente captura de pantalla muestra cómo se representan las clases en la interfaz de usuario de Platform. Dado que el esquema de ejemplo mostrado no contiene ningún grupo de campos, la clase del esquema proporciona todos los campos mostrados (Perfil individual XDM).
Para obtener la lista más actualizada de las clases XDM estándar disponibles, consulte la repositorio oficial XDM. También puede consultar la guía de exploración de componentes XDM si prefiere ver los recursos en la interfaz de usuario.
Un grupo de campos es un componente reutilizable que define uno o más campos que implementan ciertas funciones, como detalles personales, preferencias de hotel o dirección. Los grupos de campos están pensados para incluirse como parte de un esquema que implemente una clase compatible.
Los grupos de campos definen con qué clases son compatibles en función del comportamiento de los datos que representan (registro o serie temporal). Esto significa que no todos los grupos de campos están disponibles para su uso con todas las clases.
Experience Platform incluye muchos grupos de campos de Adobe estándar, al mismo tiempo que permite a los proveedores definir grupos de campos para los usuarios, y a los usuarios individuales definir grupos de campos para sus propios conceptos específicos.
Por ejemplo, para capturar detalles como "Nombre" y "Dirección principal" para su "Miembros de fidelidad", podría utilizar grupos de campos estándar que definan esos conceptos comunes. Sin embargo, los conceptos más específicos de su organización (como los detalles personalizados del programa de fidelidad o los atributos de producto) pueden no estar cubiertos por los grupos de campos estándar. En este caso, debe definir su propio grupo de campos para capturar esta información.
Se recomienda encarecidamente utilizar grupos de campos estándar siempre que sea posible en los esquemas, ya que estos campos son entendidos implícitamente por Experience Platform servicios y proporcionar buena coherencia cuando se utilizan en Platform componentes.
Los campos que proporcionan los componentes estándar (como "Nombre" y "Dirección de correo electrónico") contienen connotaciones añadidas más allá de los tipos de campo escalar básicos, lo que indica Platform que cualquier campo que comparta el mismo tipo de datos se comportará de la misma manera. Se puede confiar en que este comportamiento sea coherente independientemente de la procedencia de los datos o de la procedencia de los mismos Platform servicio de los datos que se están utilizando.
Recuerde que los esquemas están compuestos de "cero o más" grupos de campos, por lo que esto significa que puede componer un esquema válido sin utilizar ningún grupo de campos.
La siguiente captura de pantalla muestra cómo se representan los grupos de campos en la interfaz de usuario de Platform. Un solo grupo de campos (Detalles demográficos) se agrega a un esquema en este ejemplo, que proporciona una agrupación de campos a la estructura del esquema.
Para obtener la lista más actualizada de los grupos de campos XDM estándar disponibles, consulte la repositorio oficial XDM. También puede consultar la guía de exploración de componentes XDM si prefiere ver los recursos en la interfaz de usuario.
Los tipos de datos se utilizan como tipos de campos de referencia en clases o esquemas del mismo modo que los campos literales básicos. La diferencia clave es que los tipos de datos pueden definir varios subcampos. Pueden definir varios subcampos del mismo modo que los grupos de campos, pero la diferencia clave es que los tipos de datos se pueden incluir en cualquier parte de un esquema al agregarlos como el "tipo de datos" de un campo. Aunque los grupos de campos solo son compatibles con ciertas clases, los tipos de datos se pueden incluir en cualquier clase principal o grupo de campos.
Experience Platform proporciona varios tipos de datos comunes como parte del Schema Registry para admitir el uso de patrones estándar para describir estructuras de datos comunes. Esto se explica con más detalle en la sección Schema Registry tutoriales, en los que resultará más claro a medida que siga los pasos para definir los tipos de datos.
La siguiente captura de pantalla muestra cómo se representan los tipos de datos en la interfaz de usuario de Platform. Uno de los campos proporcionados por el Detalles demográficos el grupo de campos usa elObjeto" tipo de datos, tal como indica el texto que sigue al carácter de barra vertical (|
) junto al nombre del campo. Este tipo de datos concreto proporciona varios subcampos relacionados con el nombre de una persona individual, una construcción que puede reutilizarse para otros campos en los que es necesario capturar el nombre de una persona.
Para obtener la lista más actualizada de los tipos de datos XDM estándar disponibles, consulte la repositorio oficial XDM. También puede consultar la guía de exploración de componentes XDM si prefiere ver los recursos en la interfaz de usuario.
Un campo es el bloque de creación más básico de un esquema. Los campos proporcionan restricciones con respecto al tipo de datos que pueden contener al definir un tipo de datos específico. Estos tipos de datos básicos definen un solo campo, mientras que la variable tipos de datos antes mencionados permiten definir varios subcampos y reutilizar la misma estructura de varios campos en varios esquemas. Por lo tanto, además de definir el "tipo de datos" de un campo como uno de los tipos de datos definidos en el registro, Experience Platform admite tipos escalares básicos como:
Consulte la apéndice para obtener información sobre las ventajas y desventajas de utilizar campos de formulario libre en campos de tipo objeto.
Los intervalos válidos de estos tipos escalares pueden restringirse aún más a ciertos patrones, formatos, mínimos/máximos o valores predefinidos. Con estas restricciones, se puede representar una amplia gama de tipos de campo más específicos, incluidos:
El tipo de campo "map" permite obtener datos de pares de clave-valor, incluidos varios valores para una sola clave. Los mapas se pueden encontrar en clases XDM estándar y grupos de campos, pero también se pueden definir mapas personalizados mediante la API del Registro de esquemas. Consulte el tutorial en definición de campos personalizados para obtener más información.
Los esquemas representan el formato y la estructura de los datos que se incorporarán en Platformy se crean utilizando un modelo de composición. Como se ha mencionado anteriormente, estos esquemas están compuestos por una clase y cero o más grupos de campos compatibles con esa clase.
Por ejemplo, un esquema que describa las compras realizadas en una tienda minorista puede llamarse "Transacciones de almacén". El esquema implementa el XDM ExperienceEvent clase combinada con el estándar Comercio grupo de campos y definido por el usuario Información del producto grupo de campos.
Otro esquema que rastree el tráfico del sitio web puede llamarse "Visitas web". También implementa el XDM ExperienceEvent pero esta vez combina el estándar Web grupo de campos.
El diagrama siguiente muestra estos esquemas y los campos contribuidos por cada grupo de campos. También contiene dos esquemas basados en la variable XDM Individual Profile , incluido elMiembros de fidelidad" esquema mencionado anteriormente en esta guía.
While Experience Platform le permite componer esquemas para casos de uso particulares, también le permite ver una "unión" de esquemas para un tipo de clase específico. El diagrama anterior muestra dos esquemas basados en la clase XDM ExperienceEvent y dos esquemas basados en XDM Individual Profile Clase . La unión, que se muestra a continuación, agrega los campos de todos los esquemas que comparten la misma clase (XDM ExperienceEvent y XDM Individual Profile, respectivamente).
Al habilitar un esquema para utilizarlo con Real-Time Customer Profile, se incluirá en la unión para ese tipo de clase. Profile ofrece perfiles sólidos y centralizados de atributos del cliente, así como una cuenta con marca de tiempo de cada evento que el cliente haya tenido en cualquier sistema integrado con Platform. Profile utiliza la vista de unión para representar estos datos y proporcionar una vista holística de cada cliente individual.
Para obtener más información sobre cómo trabajar con Profile, consulte la Resumen del perfil del cliente en tiempo real.
Todos los archivos de datos que se incorporan en Experience Platform debe ajustarse a la estructura de un esquema XDM. Para obtener más información sobre cómo dar formato a los archivos de datos para que cumplan con las jerarquías XDM (incluidos los archivos de muestra), consulte el documento sobre transformaciones de ETL de muestra. Para obtener información general sobre la ingesta de archivos de datos en Experience Platform, consulte la información general sobre la ingesta de lotes.
Si va a introducir segmentos de sistemas externos en Platform, debe utilizar los siguientes componentes para capturarlos en los esquemas:
Ahora que comprende los conceptos básicos de la composición del esquema, está listo para empezar a explorar y crear esquemas utilizando la variable Schema Registry.
Para revisar la estructura de las dos clases XDM principales y sus grupos de campos compatibles de uso común, consulte la siguiente documentación de referencia:
La variable Schema Registry se utiliza para acceder a la variable Schema Library en Adobe Experience Platform, y proporciona una interfaz de usuario y una API de RESTful desde las que se puede acceder a todos los recursos de biblioteca disponibles. La variable Schema Library contiene los recursos del sector definidos por el Adobe, los recursos del proveedor definidos por Experience Platform socios y clases, grupos de campos, tipos de datos y esquemas que han sido compuestos por miembros de su organización.
Para empezar a componer un esquema con la interfaz de usuario, siga con Tutorial del Editor de esquemas para crear el esquema "Miembros de lealtad" mencionado en este documento.
Para empezar a usar la variable Schema Registry API, comience leyendo Guía del desarrollador de API del Registro del Esquema. Después de leer la guía para desarrolladores, siga los pasos descritos en el tutorial sobre creación de un esquema mediante la API del Registro de esquemas.
Las secciones siguientes contienen información adicional sobre los principios de la composición del esquema.
Cuando se trabaja con bases de datos relacionales, las prácticas recomendadas implican normalizar datos o tomar una entidad y dividirla en partes discretas que luego se muestran en varias tablas. Para leer los datos en su conjunto o actualizar la entidad, las operaciones de lectura y escritura deben realizarse en muchas tablas individuales utilizando JOIN.
Mediante el uso de objetos incrustados, los esquemas XDM pueden representar directamente datos complejos y almacenarlos en documentos independientes con una estructura jerárquica. Una de las principales ventajas de esta estructura es que le permite consultar los datos sin tener que reconstruir la entidad mediante costosas uniones a varias tablas no normalizadas. No existen restricciones estrictas para cuántos niveles puede ser la jerarquía de esquema.
Los sistemas digitales modernos generan grandes cantidades de señales de comportamiento (datos de transacciones, registros web, Internet de cosas, visualización, etc.). Estos grandes datos ofrecen oportunidades extraordinarias para optimizar experiencias, pero es un desafío usar debido a la escala y variedad de los datos. Para obtener valor de los datos, su estructura, formato y definiciones deben estar estandarizados para que se puedan procesar de manera consistente y eficiente.
Los esquemas solucionan este problema al permitir que los datos se integren desde múltiples fuentes, se estandaricen a través de estructuras y definiciones comunes y se compartan entre soluciones. Esto permite que los procesos y servicios subsiguientes respondan a cualquier tipo de pregunta que se formule sobre los datos, alejándose del enfoque tradicional de la modelización de datos, en el que todas las preguntas que se formularán sobre los datos se conocen de antemano y los datos se modelan para ajustarse a esas expectativas.
A la hora de diseñar los esquemas, deben tenerse en cuenta algunos factores clave a la hora de elegir objetos en lugar de campos de formulario libre:
Objetos | Campos de forma libre |
---|---|
Aumenta la anidación | Menos o no anidar |
Crea agrupaciones de campos lógicos | Los campos se colocan en ubicaciones ad hoc |
A continuación se enumeran las ventajas y desventajas de utilizar objetos sobre campos de formulario libre.
Pros:
Contras:
A continuación se enumeran las ventajas y desventajas de utilizar campos de formulario libre sobre objetos.
Pros:
_tenantId
), lo que aumenta la visibilidad.Contras: