Lecture à partir d’entités Adobe Marketo Engage
Prérequis
Un objet Adobe Marketo Engage à partir duquel vous souhaitez lire. Vous aurez besoin du nom de l’objet, comme leads, activities ou customobjects. Les tableaux suivants présentent les entités prises en charge.
Entités prises en charge pour source (synchrone) :
| Entité | Peut être filtré | Limit prise en charge | Order by prise en charge | Select prise en charge* | Partitionnement pris en charge |
|---|---|---|---|---|---|
| leads | Oui | Oui | Non | Oui | Non |
| activités | Oui | Oui | Non | Oui | Non |
| customobjects | Oui | Oui | Non | Oui | Non |
Entités prises en charge pour source (asynchrone) :
| Entité | Peut être filtré | Limit prise en charge | Order by prise en charge | Select prise en charge* | Partitionnement pris en charge |
|---|---|---|---|---|---|
| leads | Oui | Non | Non | Oui | Oui |
| activités | Oui | Non | Non | Oui | Non |
| customobjects | Oui | Non | Non | Oui | Oui |
Exemple :
adobe-marketo-engage_read = glueContext.create_dynamic_frame.from_options( connection_type="adobe-marketo-engage", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "leads", "API_VERSION": "v2", "INSTANCE_URL": "https://539-t**-6**.mktorest.com" }
Détails des entités et des champs Adobe Marketo Engage :
Entités avec métadonnées statiques :
| Entité | Champ | Type de données | Opérateurs pris en charge |
|---|---|---|---|
| activités | SinceDateTime (uniquement pris en charge en mode synchrone) | DateTime | >= (uniquement pour le mode synchrone) |
| createdAt (uniquement pris en charge en mode asynchrone) | DateTime | between (uniquement pour le mode asynchrone) | |
| activitiesTypeId | Entier | = | |
| adobe-marketo-engageGUID | Long | = (uniquement pour le mode synchrone) | |
| leadId | Long | N/A | |
| activityDate | DateTime | N/A | |
| campaignId | Long | N/A | |
| primaryAttributeValueId | Entier | N/A | |
| primaryAttributeValue | Chaîne | N/A | |
| attributs | Chaîne | N/A |
Entités avec métadonnées dynamiques :
Pour les entités suivantes, Adobe Marketo Engage fournit des points de terminaison permettant de récupérer les métadonnées de manière dynamique, afin que la prise en charge des opérateurs soit capturée au niveau du type de données pour chaque entité.
| Entité | Type de données | Opérateurs pris en charge |
|---|---|---|
| leads | Entier | = (uniquement pour le mode synchrone) |
| DateTime | between (uniquement pour le mode asynchrone) | |
| Chaîne | = (uniquement pour le mode synchrone) | |
| Long | N/A | |
| Booléen | N/A | |
| Date | N/A | |
| Float | N/A | |
| customobjects | Entier | N/A |
| DateTime | between (uniquement pour le mode asynchrone) | |
| Chaîne | = (uniquement pour le mode synchrone) | |
| Date | N/A | |
| Long | N/A | |
| Booléen | N/A | |
| Float | N/A |
Requêtes de partitionnement
Vous pouvez indiquer les options Spark supplémentaires PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND et NUM_PARTITIONS si vous souhaitez utiliser la simultanéité dans Spark. Avec ces paramètres, la requête d’origine serait divisée en NUM_PARTITIONS nombres de sous-requêtes pouvant être exécutées simultanément par les tâches Spark.
PARTITION_FIELD: le nom du champ à utiliser pour partitionner la requête.LOWER_BOUND: une valeur limite inférieure inclusive du champ de partition choisi.Pour le champ DateTime, nous acceptons la valeur au format ISO.
Exemple de valeur valide :
"2024-07-01T00:00:00.000Z"UPPER_BOUND: une valeur limite supérieure exclusive du champ de partition choisi.NUM_PARTITIONS: le nombre de partitions.
Le tableau suivant décrit les détails de prise en charge dans les champs de partitionnement d’entités :
| Nom de l’entité | Champs de partitionnement | Type de données |
|---|---|---|
| leads | createdAt | DateTime |
| updateAt | DateTime | |
| customobjects | updatedAt | DateTime |
Exemple :
adobe-marketo-engage_read = glueContext.create_dynamic_frame.from_options( connection_type="adobe-marketo-engage", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "leads", "API_VERSION": "v1", "PARTITION_FIELD": "createdAt" "LOWER_BOUND": "2024-07-01T00:00:00.000Z" "UPPER_BOUND": "2024-07-02T00:00:00.000Z" "NUM_PARTITIONS": "10" }