Utilice campos calculados para exportar matrices como cadenas use-calculated-fields-to-export-arrays-as-strings
- La funcionalidad para exportar matrices a través de campos calculados está disponible de forma general.
Obtenga información sobre cómo exportar matrices a través de campos calculados desde Real-Time CDP a destinos de almacenamiento en la nube como cadenas. Lea este documento para comprender los casos de uso habilitados por esta funcionalidad.
Obtenga información detallada sobre los campos calculados, qué son y por qué importan. Lea las páginas vinculadas a continuación para obtener una introducción a los campos calculados en la preparación de datos y más información sobre todas las funciones disponibles:
Matrices y otros tipos de objetos en Platform arrays-strings-other-objects
En Experience Platform, puede utilizar esquemas XDM para administrar diferentes tipos de campos. Antes de añadir compatibilidad con las exportaciones de matrices, podía exportar campos de tipo par clave-valor simples, como cadenas de Experience Platform a los destinos deseados. Un ejemplo de un campo de este tipo que se admitía para la exportación anteriormente es personalEmail.address
:johndoe@acme.org
.
Otros tipos de campo de Experience Platform incluyen campos de matriz. Obtenga más información acerca de administrar campos de matriz en la interfaz de usuario del Experience Platform. Además de los tipos de campo admitidos anteriormente, ahora puede exportar objetos de matriz como el ejemplo siguiente, concatenados en una cadena mediante la función array_to_string
.
organizations = [{
id: 123,
orgName: "Acme Inc",
founded: 1990,
latestInteraction: "2024-02-16"
}, {
id: 456,
orgName: "Superstar Inc",
founded: 2004,
latestInteraction: "2023-08-25"
}, {
id: 789,
orgName: 'Energy Corp',
founded: 2021,
latestInteraction: "2024-09-08"
}]
Vea más abajo varios ejemplos de cómo puede usar diversas funciones para obtener acceso a elementos de matrices, transformar y filtrar matrices, unir elementos de matrices en una cadena y mucho más.
Limitaciones conocidas known-limitations
Tenga en cuenta las siguientes limitaciones conocidas que actualmente se aplican a esta funcionalidad:
- En este momento no se admite la exportación a archivos JSON o Parquet con esquemas jerárquicos. Puede exportar matrices a archivos CSV, JSON y Parquet solo como cadenas, mediante la función
array_to_string
.
Requisitos previos prerequisites
Conéctese a un destino de almacenamiento en la nube deseado, avance en los pasos de activación para los destinos de almacenamiento en la nube y vaya al paso asignación.
Cómo exportar campos calculados how-to-export-calculated-fields
En el paso de asignación del flujo de trabajo de activación para los destinos de almacenamiento en la nube, seleccione Agregar campo calculado.
Esto abre una ventana modal en la que se pueden seleccionar funciones y campos para exportar atributos fuera del Experience Platform.
Por ejemplo, utilice la función array_to_string
en el campo organizations
como se muestra a continuación para exportar la matriz de organizaciones como una cadena en un archivo CSV. Ver más información sobre este y otros ejemplos más abajo.
Seleccione Guardar para conservar el campo calculado y volver al paso de asignación.
Cuando vuelva al paso de asignación del flujo de trabajo, rellene el campo de destino con el valor del encabezado de columna que desee para este campo en los archivos exportados.
Cuando esté listo, seleccione Siguiente para continuar con el siguiente paso del flujo de trabajo de activación.
Funciones compatibles de ejemplo para exportar matrices supported-functions
Todas las funciones de preparación de datos documentadas son compatibles al activar datos en destinos basados en archivos.
Las funciones siguientes, específicas para gestionar exportaciones de matrices, se documentan junto con ejemplos.
array_to_string
flattenArray
filterArray
transformArray
coalesce
size_of
iif
index-based array access
add_to_array
to_array
first
last
Ejemplos de funciones utilizadas para exportar matrices examples
Consulte los ejemplos y la información adicional en las secciones siguientes para ver algunas de las funciones enumeradas anteriormente. Para el resto de las funciones enumeradas, consulte la documentación de funciones generales en la sección Preparación de datos.
Función array_to_string
para exportar matrices array-to-string-function-export-arrays
Utilice la función array_to_string
para concatenar los elementos de una matriz en una cadena, utilizando un separador deseado, como _
o |
.
Por ejemplo, puede combinar los siguientes campos XDM a continuación, como se muestra en la captura de pantalla de asignación, utilizando una sintaxis array_to_string('_',organizations)
:
- Matriz
organizations
person.name.firstName
cadenaperson.name.lastName
cadenapersonalEmail.address
cadena
En este caso, el archivo de salida tiene el siguiente aspecto. Observe cómo los elementos de la matriz se concatenan en una sola cadena utilizando el carácter _
.
First_Name,Last_Name,Personal_Email,Organization
John,Doe,johndoe@acme.org, "{'id':123,'orgName':'Acme Inc','founded':1990,'latestInteraction':1708041600000}_{'id':456,'orgName':'Superstar Inc','founded':2004,'latestInteraction':1692921600000}_{'id':789,'orgName':'Energy Corp','founded':2021,'latestInteraction':1725753600000}"
Función filterArray
para exportar matrices filtradas
Utilice la función filterArray
para filtrar los elementos de una matriz exportada. Puede combinar esta función con la función array_to_string
descrita anteriormente.
Continuando con el objeto de matriz organizations
desde arriba, puede escribir una función como array_to_string('_', filterArray(organizations, org -> org.founded > 2021))
, devolviendo las organizaciones con un valor para founded
en el año 2021 o más reciente.
En este caso, el archivo de salida tiene el siguiente aspecto. Observe cómo los dos elementos de la matriz que cumplen el criterio se concatenan en una sola cadena utilizando el carácter _
.
John,Doe,johndoe@acme.org, "{'id':123,'orgName':'Acme Inc','founded':1990,'latestInteraction':1708041600000}_{'id':789,'orgName':'Energy Corp','founded':2021,'latestInteraction':1725753600000}"
Función transformArray
para exportar matrices transformadas
Utilice la función transformArray
para transformar los elementos de una matriz exportada. Puede combinar esta función con la función array_to_string
descrita anteriormente.
Continuando con el objeto de matriz organizations
desde arriba, puede escribir una función como array_to_string('_', transformArray(organizations, org -> ucase(org.orgName)))
, devolviendo los nombres de las organizaciones convertidas a mayúsculas.
En este caso, el archivo de salida tiene el siguiente aspecto. Observe cómo los tres elementos de la matriz se transforman y concatenan en una sola cadena utilizando el carácter _
.
John,Doe,johndoe@acme.org,ACME INC_SUPERSTAR INC_ENERGY CORP
Función iif
para exportar matrices iif-function-export-arrays
Utilice la función iif
para exportar elementos de una matriz en ciertas condiciones. Por ejemplo, si continúa con el objeto de matriz organizations
desde arriba, puede escribir una función condicional simple como iif(organizations[0].equals("Marketing"), "isMarketing", "isNotMarketing")
.
En este caso, el archivo de salida tiene el siguiente aspecto. En este caso, el primer elemento de la matriz es Marketing, por lo que la persona es miembro del departamento de marketing.
`First_Name,Last_Name, Personal_Email, Is_Member_Of_Marketing_Dept
John,Doe, johndoe@acme.org, "isMarketing"
Función add_to_array
para exportar matrices add-to-array-function-export-arrays
Utilice la función add_to_array
para agregar elementos a una matriz exportada. Puede combinar esta función con la función array_to_string
descrita anteriormente.
Continuando con el objeto de matriz organizations
desde arriba, puede escribir una función como source: array_to_string('_', add_to_array(organizations,"2023"))
, que devuelve las organizaciones de las que es miembro una persona en el año 2023.
En este caso, el archivo de salida tiene el siguiente aspecto. Observe cómo los tres elementos de la matriz se concatenan en una sola cadena utilizando el carácter _
y 2023 también se anexa al final de la cadena.
`First_Name,Last_Name,Personal_Email,Organization_Member_2023
John,Doe, johndoe@acme.org,"Marketing_Sales_Finance_2023"
Función flattenArray
para exportar matrices aplanadas
Utilice la función flattenArray
para acoplar una matriz multidimensional exportada. Puede combinar esta función con la función array_to_string
descrita anteriormente.
Continuando con el objeto de matriz organizations
desde arriba, puede escribir una función como array_to_string('_', flattenArray(organizations))
. Tenga en cuenta que la función array_to_string
aplana la matriz de entrada de forma predeterminada en una cadena.
El resultado es el mismo que para la función array_to_string
descrita anteriormente.
Función coalesce
para exportar matrices coalesce-function-export-arrays
Utilice la función coalesce
para acceder al primer elemento no nulo de una matriz y exportarlo a una cadena.
Por ejemplo, puede combinar los siguientes campos XDM a continuación, como se muestra en la captura de pantalla de asignación, utilizando una sintaxis coalesce(subscriptions.hasPromotion)
para devolver el primer valor true
de false
en la matriz:
- Matriz
"subscriptions.hasPromotion": [null, true, null, false, true]
person.name.firstName
cadenaperson.name.lastName
cadenapersonalEmail.address
cadena
En este caso, el archivo de salida tiene el siguiente aspecto. Observe cómo se exporta en el archivo el primer valor true
no nulo de la matriz.
First_Name,Last_Name,hasPromotion
John,Doe,true
Función size_of
para exportar matrices sizeof-function-export-arrays
Utilice la función size_of
para indicar cuántos elementos existen en una matriz. Por ejemplo, si tiene un objeto de matriz purchaseTime
con varias marcas de tiempo, puede usar la función size_of
para indicar cuántas compras independientes realizó una persona.
Por ejemplo, puede combinar los siguientes campos XDM a continuación, como se muestra en la captura de pantalla de asignación.
- Matriz
"purchaseTime": ["1538097126","1569633126,"1601255526","1632791526","1664327526"]
que indica cinco tiempos de compra independientes por parte del cliente personalEmail.address
cadena
En este caso, el archivo de salida tiene el siguiente aspecto. Observe cómo la segunda columna indica el número de elementos de la matriz, correspondiente al número de compras independientes realizadas por el cliente.
`Personal_Email,Times_Purchased
johndoe@acme.org,"5"
Acceso a matrices basadas en índices index-based-array-access
Puede acceder al índice de una matriz para exportar un solo elemento de la matriz. Por ejemplo, similar al ejemplo anterior para la función size_of
, si desea tener acceso y exportar solo la primera vez que un cliente ha comprado un determinado producto, puede utilizar purchaseTime[0]
para exportar el primer elemento de la marca de tiempo, purchaseTime[1]
para exportar el segundo elemento de la marca de tiempo, purchaseTime[2]
para exportar el tercer elemento de la marca de tiempo, etc.
En este caso, el archivo de salida tiene el siguiente aspecto, al exportar la primera vez que el cliente ha realizado una compra:
`Personal_Email,First_Purchase
johndoe@acme.org,"1538097126"
Funciones first
y last
para exportar matrices first-and-last-functions-export-arrays
Utilice las funciones first
y last
para exportar el primer o último elemento de una matriz. Por ejemplo, si continúa con el objeto de matriz purchaseTime
con varias marcas de tiempo de los ejemplos anteriores, puede utilizarlas en funciones para exportar la primera o la última hora de compra realizada por una persona.
En este caso, el archivo de salida tiene el siguiente aspecto, al exportar la primera y la última vez que el cliente ha realizado una compra:
`Personal_Email,First_Purchase, Last_Purchase
johndoe@acme.org,"1538097126","1664327526"