Exemplo: Geração automática de um conjunto de filtros de dados

Jim precisa criar um conjunto de filtros de dados com base em países, cidades e estados.

No Campaign, as tabelas de cliente já foram mapeadas e os níveis de audiência foram definidos.

Obter o driver JDBC

Jim sabe que o banco de dados de cliente da sua empresa é o Microsoft SQL Server. Ele faz o download do driver Type 4 adequado e o coloca na máquina onde está instalado, anotando o nome e o caminho do driver.

*
nome da classe do driver JDBC – com.microsoft.sqlserver.jdbc.SQLServerDriver
*
caminho do driver JDBC – C:\tools\Java\MsJdbc\sqljdbc.jar
Obter informações

Jim obtém o nome, host, e a porta do banco de dados de cliente, e as credenciais de que precisa para estabelecer conexão com ele.

*
*
*
*
*

Jim olha os dados no banco de dados de cliente da sua empresa e vê que os clientes existem em todos os países, cidades e estados para os quais deseja criar um filtro de dados. Ele determina que a tabela Geographic contém os campos necessários para especificar campos fixos e campos de perfil para os filtros de dados.

A tabela a seguir ilustra as informações que Jim obteve sobre os campos de cliente e seus mapeamentos do Campaign.

(nome físico)

(Nome no Campaign)

país

País

*

java.lang.String

cidade

Cidade

Um conjunto finito de cidades distintas

java.lang.String

estado

Estado

Um conjunto finito de estados distintos (ou regiões nomeadas de outra forma, dependendo do país)

java.lang.String

hh_id

HouseholdID

N/D

java.lang.Long

indiv_id

IndividualID

N/D

java.lang.Long

Jim aprendeu que os nomes de audiência usados no Campaign são household (familiar) e individual. Ele percebe que a tabela Geographic contém dois campos de audiência.

*
O hh_id field corresponde à audiência familiar.
*
O campo indiv_id na tabela Geographic corresponde à audiência individual.

Como Jim deve criar um campo lógico para cada audiência, e um para cada um dos campos fixos e de perfil, ele sabe que precisa de um total de cinco campos lógicos.

Jim também sabe que precisa agrupar os filtros de dados em uma configuração de dados. Ele decide nomear esta configuração de dados de Geographic.

Jim agora está pronto para criar o XML.

Criar o XML

Aqui está o XML criado por Jim. Valores baseados nas informações obtidas ou que ele decidiu usar são mostradas em bold.

<?xml version="1.0" encoding="UTF-8"?>
<ExecuteBatch>
<name>SeedData</name>
<operations>
<!-- Create the data configuration that groups related Data Filters -->
<ExecuteBatch>
<name>DataFilters</name>
<operations>
<AddDataConfiguration>
<dataConfiguration>
<id>1</id>
<name>
Geographic</name>
</dataConfiguration>
</AddDataConfiguration>
</operations>
</ExecuteBatch>
<!-- Add logical fields used to define data filters -->
<AddLogicalFields>
<logicalFields>
<LogicalField>
<id>1</id>
<name>
Country</name>
<type>
java.lang.String</type>
</LogicalField>
<LogicalField>
<id>2</id>
<name>
City</name>
<type>
java.lang.String</type>
</LogicalField>
<LogicalField>
<id>3</id>
<name>
State</name>
<type>
java.lang.String</type>
</LogicalField>
<LogicalField>
<id>4</id>
<name>
HouseholdID</name>
<type>
java.lang.Long</type>
</LogicalField>
<LogicalField>
<id>5</id>
<name>
IndividualID</name>
<type>
java.lang.Long</type>
</LogicalField>
</logicalFields>
</AddLogicalFields>
<!-- Provide information needed to generate data filters -->
<GenerateDataFilters>
<!-- Specify the table to be scanned for unique combinations of values from which data filters will be defined. -->
<tableName>
Geographic</tableName>
<!-- Identify the data configuration with which generated data filters will be associated. -->
<configurationName>
Geographic</configurationName>
<!-- Specify the data source connection information. -->
<jdbcUrl>
jdbc:sqlserver://localhost:1433;databaseName=Customers</jdbcUrl>
<jdbcUser>
sa</jdbcUser>
<jdbcPassword>
myPassword</jdbcPassword>
<jdbcDriverClass>

com.microsoft.sqlserver.jdbc.SQLServerDriver</jdbcDriverClass>
<jdbcDriverClassPath>
<string>
C:\tools\Java\MsJdbc\sqljdbc.jar</string>
</jdbcDriverClassPath>
<!-- Specify the fixed fields. -->
<fixedFields>
<FixedField>
<expression>
USA</expression>
<logicalFieldName>
Country</logicalFieldName>
<physicalFieldName>
country</physicalFieldName>
</FixedField>
</fixedFields>
<fixedFields>
<FixedField>
<expression>
France</expression>
<logicalFieldName>
Country</logicalFieldName>
<physicalFieldName>
country</physicalFieldName>
</FixedField>
</fixedFields>
<fixedFields>
<FixedField>
<expression>
Britain</expression>
<logicalFieldName>
Country</logicalFieldName>
<physicalFieldName>
country</physicalFieldName>
</FixedField>
</fixedFields>
<!-- Specify the profile fields. -->
<profileFields>
<ProfileField>
<logicalFieldName>
State</logicalFieldName>
<physicalFieldName>
state</physicalFieldName>
</ProfileField>
<ProfileField>
<logicalFieldName>
City</logicalFieldName>
<physicalFieldName>
city</physicalFieldName>
</ProfileField>
</profileFields>
</GenerateDataFilters>
<!-- Map physical to logical fields -->
<ExecuteBatch>
<name>addTables</name>
<operations>
<AddDataTable>
<dataTable>
<id>1</id>
<name>
Geographic</name>
<fields>
<TableField>
<name>
country</name>
<logicalFieldId>1</logicalFieldId>
</TableField>
<TableField>
<name>
city</name>
<logicalFieldId>2</logicalFieldId>
</TableField>
<TableField>
<name>
state</name>
<logicalFieldId>3</logicalFieldId>
</TableField>
<TableField>
<name>
hh_id</name>
<logicalFieldId>4</logicalFieldId>
</TableField>
<TableField>
<name>
indiv_id</name>
<logicalFieldId>5</logicalFieldId>
</TableField>
</fields>
</dataTable>
</AddDataTable>
</operations>
</ExecuteBatch>
<!--Add Audiences-->
<ExecuteBatch>
<name>addAudiences</name>
<operations>
<AddAudience>
<audience>
<id>1</id>
<name>
household</name>
<fields>
<AudienceField>
<logicalFieldId>4</logicalFieldId>
<fieldOrder>0</fieldOrder>
</AudienceField>
</fields>
</audience>
</AddAudience>
<AddAudience>
<audience>
<id>2</id>
<name>
individual</name>
<fields>
<AudienceField>
<logicalFieldId>5</logicalFieldId>
<fieldOrder>0</fieldOrder>
</AudienceField>
</fields>
</audience>
</AddAudience>
</operations>
</ExecuteBatch>
<!-- Associate table-audience pairs with data configuration) -->
<ExecuteBatch>
<name>addAudienceTableAssociations</name>
<operations>
<AddAudienceTableAssociation>
<audienceTableAssociation>
<audienceId>1</audienceId>
<tableId>1</tableId>
<configId>1</configId>
</audienceTableAssociation>
</AddAudienceTableAssociation>
<AddAudienceTableAssociation>
<audienceTableAssociation>
<audienceId>2</audienceId>
<tableId>1</tableId>
<configId>1</configId>
</audienceTableAssociation>
</AddAudienceTableAssociation>
</operations>
</ExecuteBatch>
</operations>
</ExecuteBatch>
Popular as tabelas de sistema

Jim nomeou seu arquivo XML de filtro de dados como geographicDataFilters.xml e o salvou no diretório tools/bin na sua instalação do Marketing Platform. Ele abre uma janela de comando e usa o utilitário datafilteringScriptTool para popular as tabelas de sistema de filtro de dados.

O utilitário cria um grande número de filtros de dados. Em cada filtro de dados os critérios são um país (o campo fixo) e uma combinação única de cidade e estado obtida quando o utilitário consultou o banco de dados em busca de registros contendo o valor do campo fixo. Todas as combinações únicas de cidade e estado são usadas para cada país especificado como um campo fixo.

Atribuir usuários e grupos aos filtros de dados

Finalmente, Jim efetua login no Marketing Platform com uma conta que tem acesso de Admin no Marketing Platform.

Ele sabe que grupos já foram definidos no Marketing Platform com usuários atribuídos por cidade.

Ele vai até a seção Filtros de Dados e vê que os valores de país, cidade e estado dos seus filtros de dados estão disponíveis na pesquisa avançada para filtros de dados. Ele executa uma pesquisa por filtro de dados usando Boston, uma cidade dos Estados Unidos, como critério de pesquisa. O filtro de dados para Boston aparece nos resultados da pesquisa.

Em seguida, Jim executa uma pesquisa pelo grupo de usuários Boston, que foi definido no Marketing Platform para guardar todos os profissionais de campo responsáveis pelo marketing de clientes em Boston. O grupo Boston aparece nos resultados da pesquisa.

Jim, então, seleciona o grupo e o filtro de dados no resultado da pesquisa, e atribui o grupo ao filtro de dados clicando no botão Atribuir.

Ele continua a executar pesquisas por filtro de dados e grupos até concluir todas as atribuições.



IBM Unica Marketing Platform
 
8.5.0
For more information, see our support and community site: Customer Central