예: 데이터 필터 세트 자동 생성
Jim은 국가, 구/군/시 및 도를 기반으로 데이터 필터 세트를 작성해야 합니다.
Campaign에서 고객 테이블은 이미 맵핑되어 있고 대상 수준도 정의되어 있습니다.
JDBC 드라이버 얻기
Jim은 회사의 고객 데이터베이스가 Microsoft SQL 서버임을 알고 있습니다. 적합한 Type 4 드라이버를 다운로드한 후 Marketing Platform이 설치된 시스템에 배치하고 드라이버의 이름 및 경로를 기록해 둡니다.
*
JDBC 드라이버 클래스 이름 - com.microsoft.sqlserver.jdbc.SQLServerDriver
*
JDBC 드라이버 경로 - C:\tools\Java\MsJdbc\sqljdbc.jar
정보 얻기
Jim은 고객 데이터베이스의 이름, 호스트와 포트, 그리고 연결해야 하는 신임 정보를 얻습니다.
*
*
*
*
*
Jim은 회사의 고객 데이터베이스에 있는 데이터를 보고 고객이 데이터 필터를 작성하려는 모든 국가, 구/군/시 및 도에 있음을 알게 됩니다. 지리 테이블에 사용자가 데이터 필터에 대한 고정 필드 및 프로파일 필드를 지정해야 하는 필드가 포함되어 있음을 알았습니다.
다음 테이블에서는 고객 필드 및 Campaign 맵핑에 대해 Jim이 얻은 정보에 대해 설명합니다.
(Campaign에서의 이름)
Jim은 Campaign에서 사용되는 대상 이름이 가족과 개인임을 알았습니다. 지리 테이블에 두 개의 대상 필드가 있음을 기록합니다.
*
hh_id 필드는 가족 대상에 해당합니다.
*
지리 테이블의 indiv_id 필드는 개인 대상에 해당합니다.
Jim은 각 대상에 대해 하나의 논리 필드를 작성해야 하고 고정 및 프로파일 필드 각각에 대해 하나를 작성해야 하므로, 총 5개의 논리 필드가 필요함을 알았습니다.
Jim은 또한 데이터 구성에 있는 데이터 필터를 그룹화해야 함도 알았습니다. 이 데이터 구성의 이름을 지리로 지정합니다.
Jim은 이제 XML을 작성할 준비가 되었습니다.
XML 작성
다음은 Jim이 작성하는 XML입니다. 얻거나 사용하기로 결정한 정보를 기반으로 하는 값은 굵게 표시됩니다.
<?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>
시스템 테이블 채우기
Jim은 이 데이터 필터 XML 파일의 이름을 geographicDataFilters.xml로 지정하고 Marketing Platform 설치에서 tools/bin 디렉토리에 저장했습니다. 명령 프롬프트를 열고 datafilteringScriptTool 유틸리티를 사용하여 데이터 필터 시스템 테이블을 채웁니다.
유틸리티는 많은 데이터 필터를 작성합니다. 각 데이터 필터에서, 기준은 유틸리티가 데이터베이스에서 고정 필드 값을 포함하는 레코드를 조회할 때 얻은 국가(고정 필드) 및 구/군/시와 도의 고유 조합입니다. 구/군/시와 도의 고유 조합 모두는 고정 필드로 지정된 각 국가에서 사용됩니다.
데이터 필터에 사용자 및 그룹 지정
마지막으로 Jim은 Marketing Platform에서 Admin 액세스를 가지는 계정으로 Marketing Platform에 로그인합니다.
그룹은 구/군/시별로 지정된 사용자와 함께 Marketing Platform에서 이미 설정되었음을 알고 있습니다.
데이터 필터 절로 이동하여 데이터 필터의 국가, 구/군/시 및 도 값이 데이터 필터의 고급 검색에 사용될 수 있음을 알 수 있습니다. 미국에 있는 도시인 Boston을 검색 기준으로 사용하여 데이터 필터를 검색합니다. Boston에 대한 데이터 필터가 검색 결과에 표시됩니다.
그런 다음 Jim은 Boston 사용자 그룹을 검색합니다. 이는 Marketing Platform에서 Boston에 있는 고객에 대한 마케팅을 담당하는 모든 필드 마케터들이 포함되도록 설정되었습니다. Boston 그룹이 검색 결과에 표시됩니다.
그런 다음 Jim은 검색 결과에서 그룹 및 데이터 필터를 선택하고, 지정 단추를 클릭하여 데이터 필터에 그룹을 지정합니다.
계속해서 모든 지정이 완료될 때까지 데이터 필터 및 그룹에 대한 검색을 수행합니다.