O recurso Modelo de dados do Real-time Customer Data Platform Insights expõe os modelos de dados e o SQL que potencializam os insights para vários widgets de perfil, destino e segmentação. Você pode personalizar esses modelos de consulta SQL para criar relatórios do Real-Time CDP para seus casos de uso de marketing e KPI (indicador chave de desempenho). Esses insights podem ser usados como widgets personalizados para seus painéis definidos pelo usuário. Consulte a documentação do query accelerated store reporting insights para saber mais como criar um modelo de dados de insights de relatórios por meio do Serviço de consulta para uso com dados de armazenamento acelerados e painéis definidos pelo usuário.
Este guia requer uma compreensão funcional do recurso de painéis definido pelo usuário. Leia a documentação antes de continuar com este guia.
Os relatórios do Real-Time CDP fornecem insights sobre os dados do perfil e sua relação com segmentos e destinos. Vários modelos de esquema estrela foram desenvolvidos para responder a uma variedade de casos de uso comuns de marketing e cada modelo de dados pode suportar vários casos de uso.
Os dados usados para os relatórios do Real-Time CDP são precisos para uma política de mesclagem escolhida e do instantâneo diário mais recente.
O modelo de perfil é composto de três conjuntos de dados:
adwh_dim_date
adwh_fact_profile
adwh_dim_merge_policies
A imagem abaixo contém os campos de dados relevantes em cada conjunto de dados.
A lógica usada para o widget contagem de perfis retorna o número total de perfis mesclados no Armazenamento de perfis no momento em que o instantâneo foi tirado. Consulte a Contagem de perfis documentação do widget para obter mais informações.
O SQL que gera a variável Contagem de perfis o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT adwh_dim_merge_policies.merge_policy_name,
sum(adwh_fact_profile.count_of_profiles) CNT
FROM qsaccel.profile_agg.adwh_fact_profile
LEFT OUTER JOIN qsaccel.profile_agg.adwh_dim_merge_policies ON adwh_dim_merge_policies.merge_policy_id=adwh_fact_profile.merge_policy_id
WHERE adwh_fact_profile.date_key='${lastProcessDate}'
AND adwh_fact_profile.merge_policy_id=${mergePolicyId}
GROUP BY adwh_dim_merge_policies.merge_policy_name;
+++
A lógica usada para o Perfis de identidade única O widget fornece uma contagem dos perfis da sua organização que têm apenas um tipo de ID que cria a identidade. Consulte aPerfis de identidade única documentação do widget para obter mais informações.
O SQL que gera a variável Perfis de identidade única o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT adwh_dim_merge_policies.merge_policy_name,
sum(adwh_fact_profile.count_of_Single_Identity_profiles) CNT
FROM QSAccel.profile_agg.adwh_fact_profile
LEFT OUTER JOIN QSAccel.profile_agg.adwh_dim_merge_policies ON adwh_dim_merge_policies.merge_policy_id=adwh_fact_profile.merge_policy_id
WHERE adwh_fact_profile.date_key='${lastProcessDate}'
AND adwh_fact_profile.merge_policy_id =${mergePolicyId}
GROUP BY adwh_dim_merge_policies.merge_policy_name;
+++
O modelo de namespace é composto pelos seguintes conjuntos de dados:
adwh_dim_date
adwh_fact_profile_by_namespace
adwh_dim_merge_policies
adwh_dim_namespaces
A imagem abaixo contém os campos de dados relevantes em cada conjunto de dados.
A variável Perfis por identidade O widget exibe o detalhamento das identidades em todos os perfis mesclados na sua Loja de perfis. Consulte a Perfis por identidade documentação do widget para obter mais informações.
O SQL que gera a variável Perfis por identidade o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT adwh_dim_namespaces.namespace_description,
sum(adwh_fact_profile_by_namespace.count_of_profiles) count_of_profiles
FROM qsaccel.profile_agg.adwh_fact_profile_by_namespace
JOIN qsaccel.profile_agg.adwh_dim_namespaces ON adwh_fact_profile_by_namespace.namespace_id = adwh_dim_namespaces.namespace_id
AND adwh_fact_profile_by_namespace.merge_policy_id = adwh_dim_namespaces.merge_policy_id
WHERE adwh_fact_profile_by_namespace.merge_policy_id =${mergePolicyId}
AND adwh_fact_profile_by_namespace.date_key = '${lastProcessDate}'
GROUP BY adwh_fact_profile_by_namespace.date_key,
adwh_fact_profile_by_namespace.merge_policy_id,
adwh_dim_namespaces.namespace_description
ORDER BY count_of_profiles DESC
LIMIT 5;
+++
A lógica usada para o Perfis de identidade únicos por identidade O widget ilustra o número total de perfis identificados com apenas um identificador exclusivo. Consulte a Documentação do widget Perfis de identidade únicos por identidade para obter mais informações.
O SQL que gera a variável Perfis de identidade únicos por identidade o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT
adwh_dim_namespaces.namespace_description,
sum(adwh_fact_profile_by_namespace.count_of_Single_Identity_profiles) count_of_Single_Identity_profiles
FROM
qsaccel.profile_agg.adwh_fact_profile_by_namespace
LEFT OUTER JOIN
qsaccel.profile_agg.adwh_dim_namespaces
ON adwh_fact_profile_by_namespace.namespace_id = adwh_dim_namespaces.namespace_id
AND adwh_fact_profile_by_namespace.merge_policy_id = adwh_dim_namespaces.merge_policy_id
WHERE
adwh_fact_profile_by_namespace.merge_policy_id=${mergePolicyId}
AND adwh_fact_profile_by_namespace.date_key='${lastProcessDate}'
GROUP BY
adwh_fact_profile_by_namespace.date_key,
adwh_fact_profile_by_namespace.merge_policy_id,
adwh_dim_namespaces.namespace_description;
+++
O modelo de segmento é composto pelos seguintes conjuntos de dados:
adwh_dim_date
adwh_fact_profile_by_segment
adwh_dim_merge_policies
adwh_dim_segments
adwh_dim_br_segment_destinations
adwh_dim_destination
adwh_dim_destination_platform
A imagem abaixo contém os campos de dados relevantes em cada conjunto de dados.
A lógica usada para o Tamanho do público O widget retorna o número total de perfis mesclados no segmento selecionado no momento do instantâneo mais recente. Consulte a Tamanho do público documentação do widget para obter mais informações.
O SQL que gera a variável Tamanho do público o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT adwh_fact_profile_by_segment.date_key,
adwh_dim_merge_policies.merge_policy_name,
adwh_dim_segments.segment,
adwh_dim_segments.segment_name,
sum(adwh_fact_profile_by_segment.count_of_profiles)count_of_profiles
FROM qsaccel.profile_agg.adwh_fact_profile_by_segment
LEFT OUTER JOIN qsaccel.profile_agg.adwh_dim_segments ON adwh_fact_profile_by_segment.segment_id = adwh_dim_segments.segment_id
LEFT OUTER JOIN qsaccel.profile_agg.adwh_dim_merge_policies ON adwh_fact_profile_by_segment.merge_policy_id=adwh_dim_merge_policies.merge_policy_id
WHERE adwh_fact_profile_by_segment.date_key ='${lastProcessDate}'
AND adwh_fact_profile_by_segment.merge_policy_id=${mergePolicyId}
GROUP BY adwh_fact_profile_by_segment.date_key,
adwh_dim_merge_policies.merge_policy_name,
adwh_dim_segments.segment,
adwh_dim_segments.segment_name
ORDER BY count_of_profiles DESC
LIMIT 20;
+++
A lógica usada para o Tendência de alteração de tamanho do público O widget fornece uma ilustração de gráfico de linhas da diferença no número total de perfis qualificados para um determinado segmento entre os instantâneos diários mais recentes. Consulte a Tendência de alteração de tamanho do público documentação do widget para obter mais informações.
O SQL que gera a variável Tendência de alteração de tamanho do público o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT DISTINCT cast(adwh_dim_segments.create_date AS Date) Date_key, adwh_dim_merge_policies.merge_policy_name,
count(DISTINCT adwh_dim_segments.segment_id)Segments_Added
FROM qsaccel.profile_agg.adwh_fact_profile_by_segment
JOIN qsaccel.profile_agg.adwh_dim_segments ON adwh_fact_profile_by_segment.segment_id = adwh_dim_segments.segment_id
JOIN qsaccel.profile_agg.adwh_dim_merge_policies ON adwh_fact_profile_by_segment.merge_policy_id=adwh_dim_merge_policies.merge_policy_id
WHERE Cast(adwh_dim_segments.create_date AS date) >= dateadd(DAY, - ${dayRange}, '${lastProcessDate}')
AND adwh_fact_profile_by_segment.merge_policy_id=${mergePolicyId}
GROUP BY cast(adwh_dim_segments.create_date AS date), adwh_dim_merge_policies.merge_policy_name ;
+++
A lógica usada no Destinos mais usados O widget lista os destinos mais usados de sua organização de acordo com o número de segmentos mapeados para eles. Essa classificação fornece insight sobre quais destinos estão sendo utilizados, além de mostrar os que podem estar subutilizados. Consulte a documentação no Destinos mais usados widget para obter mais informações.
O SQL que gera a variável Destinos mais usados o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT
adwh_dim_destination.destination_name, adwh_dim_destination.destination_id,
count( distinct adwh_dim_br_segment_destinations.segment_id ) segment_count
FROM
qsaccel.profile_agg.adwh_dim_destination
join qsaccel.profile_agg.adwh_dim_br_segment_destinations
ON
adwh_dim_destination.destination_id = adwh_dim_br_segment_destinations.destination_id
WHERE
adwh_dim_destination.destination_name is not null
group by
adwh_dim_destination.destination_name,
adwh_dim_destination.destination_id
order by segment_count desc limit 5;
+++
A lógica para o Segmentos ativados recentemente O widget fornece uma lista dos segmentos mapeados mais recentemente para um destino. Esta lista fornece um instantâneo dos segmentos e destinos que estão sendo usados ativamente no sistema e pode ajudar na solução de problemas de mapeamentos incorretos. Consulte a Segmentos ativados recentemente documentação do widget para obter mais informações.
O SQL que gera a variável Segmentos ativados recentemente o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT segment_name, segment, destination_name, a.create_time create_time
FROM qsaccel.profile_agg.adwh_dim_br_segment_destinations a
INNER JOIN qsaccel.profile_agg.adwh_dim_segments b ON a.segment_id = b.segment_id
INNER JOIN qsaccel.profile_agg.adwh_dim_destination c ON a.destination_id = c.destination_id
ORDER BY create_time desc, segment LIMIT 5;
+++
O modelo de segmento de namespace é composto pelos seguintes conjuntos de dados:
adwh_dim_date
adwh_dim_namespaces
adwh_fact_profile_by_segment_and_namespace
adwh_dim_merge_policies
adwh_dim_segments
adwh_dim_br_segment_destinations
adwh_dim_destination
adwh_dim_destination_platform
A imagem abaixo contém os campos de dados relevantes em cada conjunto de dados.
A lógica usada no Perfis por identidade O widget fornece um detalhamento das identidades em todos os perfis mesclados na sua Loja de perfis para um determinado segmento. Consulte a Perfis por identidade documentação do widget para obter mais informações.
O SQL que gera a variável Perfis por identidade o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT adwh_dim_namespaces.namespace_description,
sum( adwh_fact_profile_by_segment_and_namespace.count_of_profiles) count_of_profiles
FROM qsaccel.profile_agg.adwh_fact_profile_by_segment_and_namespace
LEFT OUTER JOIN qsaccel.profile_agg.adwh_dim_namespaces
ON adwh_fact_profile_by_segment_and_namespace.namespace_id = adwh_dim_namespaces.namespace_id
AND adwh_fact_profile_by_segment_and_namespace.merge_policy_id = adwh_dim_namespaces.merge_policy_id
WHERE adwh_fact_profile_by_segment_and_namespace.segment_id = {segment_id}
AND adwh_fact_profile_by_segment_and_namespace.merge_policy_id = {merge_policy_id}
AND adwh_fact_profile_by_segment_and_namespace.date_key = '{date}'
GROUP BY adwh_dim_namespaces.namespace_description;
+++
O modelo de namespace de sobreposição é composto pelos seguintes conjuntos de dados:
adwh_dim_date
adwh_dim_overlap_namespaces
adwh_fact_profile_overlap_of_namespace
adwh_dim_merge_policies
A imagem abaixo contém os campos de dados relevantes em cada conjunto de dados.
A lógica usada no Sobreposição de identidade exibe a sobreposição de perfis no seu Loja de perfis que contêm as duas identidades selecionadas. Para obter mais informações, consulte Sobreposição de identidade seção widget do Perfis documentação do painel.
O SQL que gera a variável Sobreposição de identidade o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT Sum(overlap_col1) overlap_col1,
Sum(overlap_col2) overlap_col2,
coalesce(Sum(overlap_count), 0) overlap_count
FROM
(SELECT 0 overlap_col1,
0 overlap_col2,
Sum(count_of_profiles) overlap_count
FROM qsaccel.profile_agg.adwh_fact_profile_overlap_of_namespace
WHERE adwh_fact_profile_overlap_of_namespace.merge_policy_id = ${mergePolicyId}
AND adwh_fact_profile_overlap_of_namespace.date_key = '${lastProcessDate}'
AND adwh_fact_profile_overlap_of_namespace.overlap_id IN
(SELECT adwh_dim_overlap_namespaces.overlap_id
FROM qsaccel.profile_agg.adwh_dim_overlap_namespaces
WHERE adwh_dim_overlap_namespaces.merge_policy_id=${mergePolicyId}
AND adwh_dim_overlap_namespaces.overlap_namespaces IN ('${namespace1}',
'${namespace2}')
GROUP BY adwh_dim_overlap_namespaces.overlap_id
HAVING Count(*) > 1)
UNION ALL SELECT count_of_profiles overlap_col1,
0 overlap_col2,
0 overlap_count
FROM qsaccel.profile_agg.adwh_fact_profile_by_namespace
JOIN qsaccel.profile_agg.adwh_dim_namespaces ON
adwh_fact_profile_by_namespace.namespace_id = adwh_dim_namespaces.namespace_id
AND adwh_fact_profile_by_namespace.merge_policy_id = adwh_dim_namespaces.merge_policy_id
WHERE adwh_fact_profile_by_namespace.merge_policy_id = ${mergePolicyId}
AND adwh_fact_profile_by_namespace.date_key = '${lastProcessDate}'
AND adwh_dim_namespaces.namespace_description = '${namespace1}'
UNION ALL SELECT 0 overlap_col1,
count_of_profiles overlap_col2,
0 Overlap_count
FROM qsaccel.profile_agg.adwh_fact_profile_by_namespace
JOIN qsaccel.profile_agg.adwh_dim_namespaces ON
adwh_fact_profile_by_namespace.namespace_id = adwh_dim_namespaces.namespace_id
AND adwh_fact_profile_by_namespace.merge_policy_id = adwh_dim_namespaces.merge_policy_id
WHERE adwh_fact_profile_by_namespace.merge_policy_id = ${mergePolicyId}
AND adwh_fact_profile_by_namespace.date_key = '${lastProcessDate}'
AND adwh_dim_namespaces.namespace_description = '${namespace2}' ) a;
+++
O namespace de sobreposição por modelo de segmento é composto pelos seguintes conjuntos de dados:
adwh_dim_date
adwh_dim_overlap_namespaces
adwh_fact_profile_overlap_of_namespace_by_segment
adwh_dim_merge_policies
adwh_dim_segments
adwh_dim_br_segment_destinations
adwh_dim_destination
adwh_dim_destination_platform
A imagem abaixo contém os campos de dados relevantes em cada conjunto de dados.
A lógica usada no Segmentos painel Sobreposição de identidade O widget ilustra a sobreposição de perfis que contém as duas identidades selecionadas para um segmento específico. Para obter mais informações, consulte Sobreposição de identidade seção widget do Segmentação documentação do painel.
O SQL que gera a variável Sobreposição de identidade o widget está na seção recolhível abaixo.
Consulta +++SQL
SELECT
Sum(overlap_col1) overlap_col1,
Sum( overlap_col2) overlap_col2,
Sum(overlap_count) Overlap_count
FROM
(
SELECT
0 overlap_col1,
0 overlap_col2,
Sum(count_of_profiles) Overlap_count
FROM
qsaccel.profile_agg.adwh_fact_profile_overlap_of_namespace_by_segment
WHERE
adwh_fact_profile_overlap_of_namespace_by_segment.segment_id = $ {segmentId}
and adwh_fact_profile_overlap_of_namespace_by_segment.merge_policy_id =$ {mergePolicyId}
and adwh_fact_profile_overlap_of_namespace_by_segment.date_key = '${lastProcessDate}'
and adwh_fact_profile_overlap_of_namespace_by_segment.overlap_id IN
(
SELECT
adwh_dim_overlap_namespaces.overlap_id
FROM
qsaccel.profile_agg.adwh_dim_overlap_namespaces
WHERE
adwh_dim_overlap_namespaces.merge_policy_id =$ {mergePolicyId}
AND adwh_dim_overlap_namespaces.overlap_namespaces IN
(
'${namespace1}',
'${namespace2}'
)
GROUP BY
adwh_dim_overlap_namespaces.overlap_id
HAVING
Count(*) > 1
)
UNION ALL
SELECT
count_of_profiles overlap_col1,
0 overlap_col2,
0 Overlap_count
FROM
qsaccel.profile_agg.adwh_fact_profile_by_segment_and_namespace
LEFT OUTER JOIN
qsaccel.profile_agg.adwh_dim_namespaces
ON adwh_fact_profile_by_segment_and_namespace.namespace_id = adwh_dim_namespaces.namespace_id
and adwh_fact_profile_by_segment_and_namespace.merge_policy_id = adwh_dim_namespaces.merge_policy_id
WHERE
adwh_dim_namespaces.namespace_description = '${namespace1}'
and adwh_fact_profile_by_segment_and_namespace.segment_id = $ {segmentId}
and adwh_fact_profile_by_segment_and_namespace.merge_policy_id =$ {mergePolicyId}
and adwh_fact_profile_by_segment_and_namespace.date_key = '${lastProcessDate}'
UNION ALL
SELECT
0 overlap_col1,
count_of_profiles overlap_col2,
0 Overlap_count
FROM
qsaccel.profile_agg.adwh_fact_profile_by_segment_and_namespace
LEFT OUTER JOIN
qsaccel.profile_agg.adwh_dim_namespaces
ON adwh_fact_profile_by_segment_and_namespace.namespace_id = adwh_dim_namespaces.namespace_id
and adwh_fact_profile_by_segment_and_namespace.merge_policy_id = adwh_dim_namespaces.merge_policy_id
WHERE
adwh_dim_namespaces.namespace_description = '${namespace2}'
and adwh_fact_profile_by_segment_and_namespace.segment_id = $ {segmentId}
and adwh_fact_profile_by_segment_and_namespace.merge_policy_id =$ {mergePolicyId}
and adwh_fact_profile_by_segment_and_namespace.date_key = '${lastProcessDate}'
)
a;
+++