Usar o BigQuery Graph e o Spanner Graph
Este documento ajuda você a determinar qual solução de gráfico usar comparando o BigQuery Graph e o Spanner Graph.
Essa comparação serve como uma recomendação e não é absoluta. Há uma sobreposição significativa de recursos entre o BigQuery Graph e o Spanner Graph. Os usuários precisam identificar as próprias necessidades de carga de trabalho para determinar qual recurso usar.
Quando usar o BigQuery Graph e o Spanner Graph
O BigQuery Graph e o Spanner Graph atendem a diferentes tipos de cargas de trabalho de gráficos. O BigQuery Graph é para análises detalhadas em grande escala, enquanto o Spanner Graph é para operações em tempo real.
Gráfico do BigQuery
O BigQuery Graph é otimizado para executar consultas complexas em gráficos grandes. Você pode analisar padrões globais, identificar tendências históricas e descobrir relações ocultas em grandes conjuntos de dados.
As características técnicas incluem desempenho otimizado em escala, processamento paralelo, consultas complexas em uma parte significativa do gráfico, computação intensiva e agregações complexas.
Os casos de uso comuns incluem:
- Detecção de fraude off-line:encontre outros usuários suspeitos conectados a fraudadores conhecidos em toda a rede em um gráfico de clientes, em alguns graus de conexões que compartilham o mesmo e-mail, telefone ou endereço. Para um tutorial sobre detecção de fraude, consulte Spanner e BigQuery: defesa contra fraudes em tempo real Shield.
- Otimização da cadeia de suprimentos:crie um gráfico da lista de materiais que represente as relações entre os produtos finais e os componentes deles para o planejamento de inventário. Calcule datas de entrega de produtos e entenda a disponibilidade de materiais analisando os produtos de nível superior até os componentes principais em todas as linhas de produtos.
- Segmentação do Customer 360:crie um grafo do Customer 360 para entender as jornadas dos clientes em assinaturas de produtos, conversões e desistências. Use isso para identificar por que os clientes desistem, identificar padrões de uso e usar o gráfico para segmentação de clientes e segmentação por público-alvo em todo o público.
Spanner Graph
O Spanner Graph é para operações em tempo real. Ele é otimizado para aplicativos que precisam realizar consultas k-hop que tocam um pequeno conjunto de elementos de grafo instantaneamente, detectar fraudes em milissegundos, realizar rastreamento de linhagem para verificação de identidade e dependência e disponibilizar recomendações em tempo real.
As características técnicas incluem latência previsível com jitter mínimo, consultas por segundo (QPS) que escalonam linearmente com o número de nós do Spanner e escala praticamente ilimitada. Ele também apresenta armazenamento de gráficos integrado com intercalação de tabelas de nós e arestas, disponibilidade sempre ativa, consistência global e consultas de pesquisa pontual e de vários hops a partir de um único nó ou um conjunto de nós de gráfico.
Os casos de uso comuns incluem:
- Detecção de fraude em tempo real:verifique uma transação com cartão de crédito em um grafo de dispositivos e contas fraudulentas conhecidas em milissegundos.
- Operações de rede autônomas:crie um gêmeo digital da sua rede para monitoramento e otimização da performance em tempo real.
- Resolução de entidades:crie clusters de identidades vinculadas como uma fonte de verdade de diferentes PIIs (e-mail, telefone, ID do Vemo). Use os perfis canônicos para pesquisa de identidade antes de veicular anúncios, faça detecção de fraudes em tempo real e treine repositórios de recursos.
Como o BigQuery Graph e o Spanner Graph funcionam juntos
O BigQuery Graph e o Spanner Graph trabalham juntos para oferecer uma solução abrangente. Por exemplo, em um caso de uso de 360 graus do cliente:
- Insights em tempo real:um agente de serviço ao cliente usa o Spanner Graph para lidar com reclamações de usuários sobre o envio do produto errado com base em estatísticas de compra e entrega em tempo real.
- Replicação ou consulta:é possível replicar dados do Spanner para o BigQuery usando fluxos de mudanças do Spanner sem extração, transformação e carregamento (ETL) complexos ou consultar dados do Spanner diretamente do BigQuery usando consultas federadas do BigQuery.
- Analisar padrões:um cientista de dados usa o BigQuery Graph para identificar um "ponto de rotatividade" nos mesmos dados e rotular o cliente como "em risco".
- Ciclo de feedback:os rótulos "em risco" são enviados para o Spanner Graph com suporte de extração, transformação e carregamento (ETL) inversos para gerar um código do cupom para esse cliente e evitar o cancelamento.
Mover dados entre o BigQuery Graph e o Spanner Graph
Você pode mover dados entre o Spanner Graph e o BigQuery Graph para atender aos requisitos da sua carga de trabalho:
ETL de encaminhamento:para mover dados do Spanner para o BigQuery em consultas analíticas, use um modelo do Dataflow.
ETL reverso:embora seja possível consultar dados do Spanner diretamente do BigQuery Graph, pode haver cenários em que é necessário trazer dados do BigQuery para o Spanner Graph. Use a instrução SQL
EXPORT DATA. Para mais detalhes, consulte Entender o pipeline de ETL reverso.
Comparação dos recursos
A tabela a seguir mostra um detalhamento detalhado dos recursos por produto para o qual eles são mais otimizados:
| Recurso | Gráfico do BigQuery (off-line/em lote) | Spanner Graph (on-line/em tempo real) |
|---|---|---|
| Modelo, consulta e visualização de gráficos | Modelagem e linguagem de consulta de gráficos unificadas, tudo com tecnologia do GoogleSQL, parte do padrão ISO SQL. Mesma interface para visualização de gráficos. | Modelagem e linguagem de consulta de gráficos unificadas, tudo com tecnologia do GoogleSQL, parte do padrão ISO SQL. Mesma interface para visualização de gráficos. |
| Carga de trabalho principal | Off-line (em lote): agregações em conjuntos de dados enormes. | On-line (em tempo real): alto volume de leituras/gravações de baixa latência. |
| Latência da consulta | Segundos a horas. Otimizado para verificação de terabytes/petabytes. | Milissegundos para segundos. Essencial para apps voltados ao usuário. |
| Padrão de consulta | Global ou gráfico inteiro: "Quem tem um 'Alcance da rede' de mais de 5.000 pessoas?" | Local ou bairro: "Quem são os amigos dos meus amigos que não estão no meu círculo imediato?" |
| Escala | Em escala de petabytes, praticamente ilimitado e otimizado para dados históricos em grande escala. | Escalonamento horizontal, escala praticamente ilimitada e otimização para dados ativos. |
| Atualização de dados | Quase em tempo real ou em lote. Acessar dados de diferentes fontes (por exemplo, dados do Spanner Graph usando o Data Boost para Spanner, Bigtable, Cloud Storage ou Amazon S3). | Consistência forte e em tempo real. |
| Entrada de dados | Data lakes, registros históricos, dados de transações arquivados. | Fluxos de aplicativos ativos, interações do usuário. |
| Movimentação de dados |
Spanner para BigQuery (extração, transformação e carregamento (ETL) diretos) com modelos pré-criados (em lote, streaming).
BigQuery para Spanner (ETL
reverso) com
EXPORT_DATA.
Federação de consultas (ETL zero)
com esquema externo.
|
Spanner para BigQuery (extração, transformação e carregamento (ETL) diretos) com modelos pré-criados (em lote, streaming).
BigQuery para Spanner (ETL
reverso) com
EXPORT_DATA.
Federação de consultas (ETL zero)
com esquema externo.
|
A seguir
- Saiba mais sobre o BigQuery Graph.
- Saiba mais sobre o Spanner Graph.