Leitura de entidades do Adobe Marketo Engage
Pré-requisito
Um objeto do Adobe Marketo Engage do qual você deseja ler. Você precisará do nome do objeto, como leads, atividades ou customobjects. As tabelas a seguir mostram as entidades compatíveis.
Entidades compatíveis quanto à origem (síncronas):
| Entidade | Pode ser filtrada | Oferece suporte a limite | Oferece suporte a Ordenar por | Oferece suporte a Selecionar * | Oferece suporte a particionamento |
|---|---|---|---|---|---|
| leads | Sim | Sim | Não | Sim | Não |
| atividades | Sim | Sim | Não | Sim | Não |
| customobjects | Sim | Sim | Não | Sim | Não |
Entidades compatíveis quanto à origem (assíncronas):
| Entidade | Pode ser filtrada | Oferece suporte a limite | Oferece suporte a Ordenar por | Oferece suporte a Selecionar * | Oferece suporte a particionamento |
|---|---|---|---|---|---|
| leads | Sim | Não | Não | Sim | Sim |
| atividades | Sim | Não | Não | Sim | Não |
| customobjects | Sim | Não | Não | Sim | Sim |
Exemplo:
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" }
Detalhes da entidades e dos campos do Adobe Marketo Engage:
Entidades com metadados estáticos:
| Entidade | Campo | Tipo de dados | Operadores compatíveis |
|---|---|---|---|
| atividades | sinceDatetime (compatível somente no modo síncrono) | DateTime | >= (somente para o modo síncrono) |
| createdAt (compatível somente no modo assíncrono) | DateTime | entre (somente para o modo assíncrono) | |
| activitiesTypeId | Inteiro | = | |
| adobe-marketo-engageGUID | Longo | = (somente para o modo síncrono) | |
| leadId | Longo | N/D | |
| activityDate | DateTime | N/D | |
| campaignId | Longo | N/D | |
| primaryAttributeValueId | Inteiro | N/D | |
| primaryAttributeValue | String | N/D | |
| attributes | String | N/D |
Entidades com metadados dinâmicos:
Para as entidades a seguir, o Adobe Marketo Engage fornece endpoints para buscar metadados dinamicamente, para que o suporte do operador seja capturado no nível do tipo de dados de cada entidade.
| Entidade | Tipo de dados | Operadores compatíveis |
|---|---|---|
| leads | Inteiro | = (somente para o modo síncrono) |
| DateTime | entre (somente para o modo assíncrono) | |
| String | = (somente para o modo síncrono) | |
| Longo | N/D | |
| Booleano | N/D | |
| Data | N/D | |
| Float | N/D | |
| customobjects | Inteiro | N/D |
| DateTime | entre (somente para o modo assíncrono) | |
| String | = (somente para o modo síncrono) | |
| Data | N/D | |
| Longo | N/D | |
| Booleano | N/D | |
| Float | N/D |
Consultas de particionamento
É possível fornecer as opções adicionais do Spark PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND e NUM_PARTITIONS se quiser utilizar a simultaneidade no Spark. Com esses parâmetros, a consulta original seria dividida em NUM_PARTITIONS subconsultas, que poderiam ser executadas pelas tarefas do Spark simultaneamente.
PARTITION_FIELD: o nome do campo a ser usado para particionar a consulta.LOWER_BOUND: um valor limite inferior inclusivo do campo de partição escolhido.Para o campo DateTime, aceitamos o valor no formato ISO.
Exemplo de valor válido:
"2024-07-01T00:00:00.000Z"UPPER_BOUND: um valor limite superior exclusivo do campo de partição escolhido.NUM_PARTITIONS: o número de partições.
A tabela a seguir descreve os detalhes do suporte do campo de particionamento da entidade:
| Nome da entidade | Campos de particionamento | Tipo de dados |
|---|---|---|
| leads | createdAt | DateTime |
| updateAt | DateTime | |
| customobjects | updatedAt | DateTime |
Exemplo:
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" }