• Jogos
  • Setor
  • Recursos
  • Comunidade
  • Aprendizado
  • Suporte
Desenvolvimento
Engine do Unity
Crie jogos 2D e 3D para qualquer plataforma
BaixarPlanos e preços
Monetização
Compra no aplicativo (IAP)
Descubra e gerencie IAP em todas as lojas
Mediation
Maximize a receita e otimize a monetização
Qualidade do anúncio
Proteja a experiência do usuário do seu aplicativo
Tapjoy
Construa lealdade do usuário a longo prazo
Todos os produtos de monetização
Aquisição de usuários
Aquisição de usuários
Seja descoberto e adquira usuários móveis
Unity Vector AI
Conecte jogadores com os jogos certos
Aura publicidade no dispositivo
Alcance usuários no dispositivo no pico de engajamento
Todos os produtos de crescimento
Casos de uso
Colaboração 3D
Construa e revise projetos 3D em tempo real
Treinamento imersivo
Treine em ambientes imersivos
Experiências do cliente
Crie experiências interativas em 3D
Todas as soluções da indústria
Setores
Manufatura
Alcançar excelência operacional
Varejo
Transformar experiências em loja em experiências online
Automotivo
Elevar a inovação e as experiências dentro do carro
Todos os setores
Biblioteca técnica
Documentação
Manuais do usuário oficiais e referências de API
Ferramentas de desenvolvedor
Versões de lançamento e rastreador de problemas
Roteiro
Revisar recursos futuros
Glossário
Biblioteca de termos técnicos
Insights
Estudos de caso
Histórias de sucesso do mundo real
Guias de melhores práticas
Dicas e truques de especialistas
Todos os recursos
Novidades
Blog
Atualizações, informações e dicas técnicas
Notícias
Notícias, histórias e centro de imprensa
Central da Comunidade
Discussões
Discutir, resolver problemas e conectar
Eventos
Eventos globais e locais
Histórias da comunidade
Made with Unity
Mostrando criadores do Unity
Transmissões ao vivo
Junte-se a desenvolvedores, criadores e insiders
Prêmios Unity
Celebrando criadores do Unity em todo o mundo
Para todos os níveis
Unity Learn
Domine habilidades do Unity gratuitamente
Treinamento profissional
Aprimore sua equipe com treinadores do Unity
É iniciante no Unity?
Conceitos básicos
Inicie seu aprendizado
Caminhos Essenciais do Unity
É iniciante no Unity? Comece sua jornada
Tutoriais
Dicas práticas e melhores práticas
Educação
Para estudantes
Impulsione sua carreira
Para educadores
Impulsione seu ensino
Concessão de Licença Educacional
Leve o poder do Unity para sua instituição
Certificações
Prove sua maestria em Unity
Opções de suporte
Obter ajuda
Ajudando você a ter sucesso com Unity
Planos de sucesso
Alcance seus objetivos mais rápido com suporte especializado
Perguntas frequentes
Respostas para perguntas comuns
Entre em contato conosco
Conecte-se com nossa equipe
Planos e preços
Idioma
  • English
  • Deutsch
  • 日本語
  • Français
  • Português
  • 中文
  • Español
  • Русский
  • 한국어
Social
Moeda
Comprar
  • Produtos
  • Unity Ads
  • Assinatura
  • Unity Asset Store
  • Revendedores
Educação
  • Estudantes
  • Educadores
  • Instituições
  • Certificação
  • Learn
  • Programa de Desenvolvimento de Habilidades
Baixar
  • Unity Hub
  • Arquivo de download
  • Programa beta
Unity Labs
  • Laboratórios
  • Publicações
Recursos
  • Plataforma de aprendizado
  • Comunidade
  • Documentação
  • Unity QA
  • Perguntas frequentes
  • Status dos Serviços
  • Estudos de caso
  • Made with Unity
Unity
  • Nossa empresa
  • Boletim informativo
  • Blog
  • Eventos
  • Carreiras
  • Ajuda
  • Imprensa
  • Parceiros
  • Investidores
  • Afiliados
  • Segurança
  • Impacto social
  • Inclusão e Diversidade
  • Entre em contato conosco
Copyright © 2025 Unity Technologies
  • Informações legais
  • Política de Privacidade
  • Cookies
  • Não venda nem compartilhe minhas informações pessoais

“Unity”, logotipos Unity e outras marcas comerciais de Unity são marcas comerciais ou marcas comerciais registradas da Unity Technologies ou de suas afiliadas (mais informações aqui). Outros nomes e marcas são marcas comerciais de seus respectivos detentores.

Hero background image

Como usar o SQL Data Explorer para analisar dados de jogos

Esta página da Web foi automaticamente traduzida para sua conveniência. Não podemos garantir a precisão ou a confiabilidade do conteúdo traduzido. Se tiver dúvidas sobre a precisão do conteúdo traduzido, consulte a versão oficial em inglês da página da Web.
Clique aqui.

Comece a explorar seus dados

Use Unity Gaming Services (UGS) Data Explorer para filtrar e usar seus dados com base em métricas ou Eventos, e agrupá-los por plataforma, país ou versão.

Com conhecimento básico de SQL (Structured Query Language), você pode aprimorar sua análise e aprofundar-se em seus dados usando o SQL Data Explorer dentro do UGS. Use este recurso para construir e executar consultas, plotar resultados em diferentes tipos de visualizações, adicionar visualizações a Painéis Personalizados e exportar seus dados para usar com outras ferramentas de análise. Encontre o SQL Data Explorer no painel de Análise do UGS do Unity Dashboard.

Russell Young, um dos Consultores de Análise da Unity, tem dicas e ideias para começar suas aventuras no SQL Data Explorer.

Comece a explorar seus dados

  • Começando sua missão
  • Usando a tabela de EVENTOS padrão
  • Limitando sua consulta para eficiência
  • Impulsione seus resultados
  • Usando a ferramenta de pivotagem
  • Ajuste de dados
  • Vendo os resultados
  • Aumentando a velocidade da sua consulta
  • Amostrando seus dados
  • Usando approximate_count_distinct
  • Abrindo o painel de Glossário
  • Tabelas agregadas no UGS
  • Usando FACT_EVENT_TYPE_USERS_DAY
  • Identificando jogadores por critérios específicos
  • Usando variáveis recém-definidas
  • Obtendo mais dos seus dados

Começando sua missão

Veja nossa coleção de receitas no SQL Cookbook para explorar os ricos dados em UGS. Observe que o UGS utiliza o sabor Snowflake do SQL.

Uma das consultas do livro de receitas analisa as estatísticas de missões. Vamos adaptar esse código para dar uma olhada rápida nas taxas de falha de missões em nosso jogo fictício. Isso usa eventos personalizados que criamos para rastrear o envolvimento dos jogadores com as missões, com nosso parâmetro missionID.

Usando a tabela de EVENTOS padrão

Usando a tabela de EVENTOS padrão

Para esta consulta, usaremos a tabela de EVENTOS padrão. Esta tabela inclui dados granulares para cada evento registrado em nosso jogo.

Limitando sua consulta para eficiência

Limitando sua consulta para eficiência

Observe que usamos um filtro de data aqui para limitar nossa consulta e mantê-la eficiente. Sem esse limite, a consulta seria executada sobre os 365 dias completos de dados que são consultáveis por padrão no SQL Data Explorer. Além disso, é sempre mais eficiente especificar quais colunas você está interessado em vez de usar SELECT *.

Frases como EVENT_JSON:missionID::INTEGER parecem intimidadoras, mas se você digitar 'missionID' e usar a autocompletação, o SQL Data Explorer gera a sintaxe JSON para você – assumindo que você tenha esse parâmetro configurado em seu próprio jogo.

Impulsione seus resultados

Impulsione seus resultados

Após executar a consulta, podemos plotar nossos resultados para ver a história nos dados. Os gráficos atualmente suportam até dois eixos Y e um eixo X. Os rótulos dos eixos podem ser facilmente renomeados usando a expressão 'as' em sua consulta SQL; neste caso, nosso eixo Y recebe o nome que definimos: “Jogadores falharam %”.

Vemos que mais de um em cada três jogadores falhou em nossa primeira missão (missionID 0), então podemos ajustar a dificuldade da missão para dar aos usuários uma experiência inicial mais positiva.

Dica: Se você tiver alguns valores NULL em seus dados e descobrir que isso faz com que um eixo pareça estranho, use coalesce(yourParameter, 0) para preencher as lacunas.

Usando a ferramenta de pivotagem

Usando a ferramenta de pivotagem

Quando executamos uma consulta, obtemos uma tabela de nossos resultados. Adicione a PLATAFORMA à nossa consulta; na imagem acima, você verá como a tabela está agora. Observe o botão ‘Pivot’ à direita. Isso é útil para reestruturar nossos dados sem precisar reescrever nossa consulta.

Ajuste de dados

Ajuste de dados

Em nosso exemplo, poderíamos usar a ferramenta de pivotagem para ajustar nossos dados para obter PLATAFORMA nas linhas e MISSIONID como colunas.

Vendo os resultados

Vendo os resultados

Ajustar a tabela mostra que houve pouca diferença nas falhas de missão entre as plataformas.

Aumentando a velocidade da sua consulta

À medida que seu jogo se torna cada vez mais bem-sucedido e sua base de jogadores cresce, você pode descobrir que até mesmo consultas simples levam um tempo significativo para serem executadas.

Vamos supor que você queira executar esta consulta básica em seus dados:

Amostrando seus dados

Você pode esperar que ela seja executada rapidamente, mas com um grande conjunto de dados, isso nem sempre é o caso. Aproveite a forma do nosso armazém e o fato de que os user_ids são armazenados como um hash para usar um método rápido para reduzir o número de usuários incluídos e aumentar a velocidade da consulta.

Aqui, estamos dividindo nossos usuários em 100 baldes pseudo-aleatoriamente atribuídos e numerados e olhando para o balde número 63.

Adicionar este código em consultas simples não fará muita diferença, mas à medida que aumentamos a complexidade computacional, filtrar dados dessa maneira se torna cada vez mais crítico. Mesmo em nosso jogo fictício, descobrimos que esta versão revisada de nossa consulta foi 75% mais rápida do que a original. Isso economiza tempo e dinheiro para obter insights sobre subconjuntos de usuários sem precisar processar conjuntos de dados inteiros.

Usando approximate_count_distinct

Nas consultas acima, usamos count(distinct…) para calcular nosso número de jogadores individuais e combinações de eventos. Uma maneira de melhorar a velocidade da nossa consulta, se não precisarmos de 100% de precisão com nossos resultados, é usar approximate_count_distinct. Nossa consulta anterior se torna:

Abrindo o painel de Glossário

Abrindo o painel de Glossário

Até agora, temos usado apenas a tabela principal de EVENTOS. Como esta tabela contém dados granulares sobre cada evento que tivemos em nosso jogo, é a tabela mais extensa. Para melhorar nossas consultas, podemos usar objetos menores para executar nossas consultas de forma mais eficiente.

Vamos dar uma olhada no painel de Glossário, para explorar as tabelas que temos disponíveis para consultar.

Tabelas agregadas no UGS

Juntamente com os EVENTOS, aqui encontramos todas as tabelas agregadas disponíveis para consulta. Todas estão disponíveis prontamente com UGS.

  • A tabela USUÁRIOS contém uma única linha por jogador, juntamente com suas métricas de vida no jogo, como contagem de eventos, tempo total de jogo, gasto total, etc.
  • FACT_USER_SESSIONS_DAY inclui dados sobre cada sessão para cada jogador.
  • FACT_EVENT_TYPE_USERS_DAY consiste em uma linha para cada evento que um jogador enviou a cada dia, junto com uma contagem total.
  • FACT_WAU_USERS e FACT_MAU_USERS incluem dados de perfil para usuários que jogaram na semana ou mês anterior em um determinado dia.

Entre FACT_EVENT_TYPE_USERS_DAY e FACT_USER_SESSIONS_DAY, você pode provavelmente responder a 80%+ da maioria das consultas sobre objetos menores.

Usando FACT_EVENT_TYPE_USERS_DAY

Por exemplo, em nossa primeira consulta, estávamos analisando as taxas de falha de missões. Também poderíamos usar o FACT_EVENT_TYPE_USERS_DAY para calcular as taxas de falha geral a cada dia, com a contagem de NUMBER_OF_EVENTS armazenada nesta tabela.

Também usaremos uma dessas tabelas em nossa próxima consulta:

Identificando jogadores por critérios específicos

Identificando jogadores por critérios específicos

Use esta consulta para ver o fluxo de eventos para jogadores que atendem a critérios específicos. É útil para QA e depuração porque – ao usar a tabela USUÁRIOS mencionada acima – você obterá um usuário diferente toda vez que executá-la.

Se, por exemplo, você suspeitar que os eventos não estão sendo registrados corretamente para jogadores que instalaram uma certa versão do seu jogo, você pode executar a consulta abaixo. O que retorna é o fluxo de eventos de um jogador aleatório executando a versão do jogo que parece estar enfrentando problemas. Faça isso algumas vezes e você pode rapidamente começar a identificar padrões nos dados.

Dica: Se você quiser comentar várias linhas, use o atalho de teclado CTRL+/

Usando variáveis recém-definidas

Você pode estar acostumado a escrever consultas SQL em idiomas diferentes de Snowflake – por exemplo, se você usou a ferramenta anterior de Mineração de Dados deltaDNA, provavelmente escreveu consultas em Vertica.

Agora você pode se referir a variáveis recém-definidas sem precisar incluí-las primeiro em uma expressão de tabela comum (CTE). Por exemplo, esta consulta é executada com sucesso no SQL Data Explorer – mas no deltaDNA original, teria gerado um erro "coluna 'rice' não existe":

Obtendo mais dos seus dados

Há muito potencial no SQL Explorer. Há muito mais para descobrir em UGS Analytics, incluindo muitas opções de gráficos, como gráficos de pizza e gráficos de barras empilhadas. Acesso Direto oferece acesso direto aos seus dados de Analytics através do Snowflake.

Para acelerar suas percepções e obter suporte na construção de suas consultas e painéis, entre em contato conosco.

Leitura adicional

  • Documentação do UGS Analytics
  • Livro de receitas SQL
  • Apresentando os Funis e o SQL Data Explorer
  • Referência de funções SQL do Snowflake
  • Preços do UGS