• Juegos
  • Industria
  • Recursos
  • Comunidad
  • Aprendizaje
  • Asistencia
Desarrollo
Motor de Unity
Crea juegos 2D y 3D para cualquier plataforma
DescargarPlanes y precios
Monetización
Compra dentro de la aplicación (IAP)
Descubre y gestiona IAP en todas las tiendas
Mediación
Maximiza los ingresos y optimiza la monetización
Calidad de anuncios
Protege la experiencia del usuario de tu aplicación
Tapjoy
Construye lealtad de usuarios a largo plazo
Todos los productos de monetización
Adquisición de usuarios
Adquisición de usuarios
Hazte descubrir y adquiere usuarios móviles
Unity Vector AI
Conecta a los jugadores con los juegos adecuados
Publicidad en el dispositivo Aura
Alcanza a los usuarios en el dispositivo en el momento de mayor compromiso
Todos los productos de crecimiento
Casos de uso
Colaboración 3D
Construye y revisa proyectos 3D en tiempo real
Capacitación envolvente
Capacitación en entornos envolventes
Experiencias del cliente
Crea experiencias interactivas en 3D
Todas las soluciones de la industria
Industrias
Fabricación
Logra la excelencia operativa
Venta minorista
Transforma las experiencias en tienda en experiencias en línea
Industria automotriz
Eleva la innovación y las experiencias en el automóvil
Todas las industrias
Biblioteca técnica
Documentación
Manuales de usuario oficiales y referencias de API
Herramientas para desarrolladores
Versiones de lanzamiento y rastreador de problemas
Hoja de ruta
Revisar características próximas
Glosario
Biblioteca de términos técnicos
Información útil
Casos de estudio
Historias de éxito en el mundo real
Guías de mejores prácticas
Consejos y trucos de expertos
Todos los recursos
Novedades
Blog
Actualizaciones, información y consejos técnicos
Novedades
Noticias, historias y centro de prensa
Centro de la comunidad
Discusiones
Discute, resuelve problemas y conéctate
Eventos
Eventos globales y locales
Historias de la comunidad
Hecho con Unity
Presentando a los creadores de Unity
Transmisiones en vivo
Únete a desarrolladores, creadores e insiders
Premios Unity
Celebrando a los creadores de Unity en todo el mundo
Para todos los niveles
Unity Learn
Domina las habilidades de Unity de forma gratuita
Capacitación profesional
Mejora tu equipo con entrenadores de Unity
¿No tienes experiencia con Unity?
Primeros pasos
Pon en marcha tu aprendizaje
Rutas esenciales de Unity
¿No tienes experiencia con Unity? Comienza tu viaje
Guías prácticas
Consejos prácticos y mejores prácticas
Educación
Para estudiantes
Impulsa tu carrera
Para docentes
Potencia tu enseñanza
Licencia gratuita para fines educativos
Lleva el poder de Unity a tu institución
Certificaciones
Demuestra tu dominio de Unity
Opciones de soporte
Obtener ayuda
Ayudándote a tener éxito con Unity
Planes de éxito
Alcanza tus metas más rápido con soporte experto
PREGUNTAS FRECUENTES
Respuestas a preguntas comunes
Contáctanos
Conéctate con nuestro equipo
Planes y precios
Idioma
  • English
  • Deutsch
  • 日本語
  • Français
  • Português
  • 中文
  • Español
  • Русский
  • 한국어
Social
Moneda
Comprar
  • Productos
  • Unity Ads
  • Suscripción
  • Tienda de recursos de Unity
  • Distribuidores
Educación
  • Estudiantes
  • Instructores
  • Instituciones
  • Certificación
  • Learn
  • Programa de desarrollo de habilidades
Descargar
  • Unity Hub
  • Descargar archivo
  • Programa beta
Unity Labs
  • Laboratorios
  • Publicaciones
Recursos
  • Plataforma Learn
  • Comunidad
  • Documentación
  • Preguntas y respuestas Unity
  • PREGUNTAS FRECUENTES
  • Estado de servicios
  • Casos de estudio
  • Made with Unity
Unity
  • Nuestra empresa
  • Boletín
  • Blog
  • Eventos
  • Empleos
  • Ayuda
  • Prensa
  • Socios
  • Inversionistas
  • Afiliados
  • Seguridad
  • Impacto social
  • Inclusión y diversidad
  • Contacto
Copyright © 2025 Unity Technologies
  • Legal
  • Política de privacidad
  • Cookies
  • No quiero que se venda ni se comparta mi información personal

"Unity", los logotipos de Unity y otras marcas comerciales de Unity son marcas comerciales o marcas comerciales registradas de Unity Technologies o de sus empresas afiliadas en los Estados Unidos y el resto del mundo (más información aquí). Los demás nombres o marcas son marcas comerciales de sus respectivos propietarios.

Hero background image

Cómo usar SQL Data Explorer para analizar datos de juegos

Para tu comodidad, tradujimos esta página mediante traducción automática. No podemos garantizar la precisión ni la confiabilidad del contenido traducido. Si tienes alguna duda sobre la precisión del contenido traducido, consulta la versión oficial en inglés de la página web.
Haz clic aquí.

Comienza a explorar tus datos

Usa Unity Gaming Services (UGS) Data Explorer para filtrar y usar tus datos basados en métricas o eventos, y agruparlos por plataforma, país o versión.

Con conocimientos básicos de SQL (Lenguaje de Consulta Estructurado), puedes mejorar tu análisis y profundizar en tus datos utilizando el SQL Data Explorer dentro de UGS. Usa esta función para construir y ejecutar consultas, trazar resultados en diferentes tipos de visualizaciones, agregar visualizaciones a Tableros Personalizados y exportar tus datos para usarlos con otras herramientas de análisis. Encuentra SQL Data Explorer en el panel de análisis de UGS del Unity Dashboard.

Russell Young, uno de los Consultores de Análisis de Unity, tiene consejos e ideas para comenzar tus aventuras con SQL Data Explorer.

Comienza a explorar tus datos

  • Comenzando tu misión
  • Usando la tabla de EVENTOS predeterminada
  • Limitando tu consulta para eficiencia
  • Trazando tus resultados
  • Usando la herramienta de pivote
  • Ajustando los datos
  • Ver los resultados
  • Aumentando la velocidad de tu consulta
  • Muestreando tus datos
  • Usando approximate_count_distinct
  • Abriendo el panel de Glosario
  • Tablas agregadas en UGS
  • Usando FACT_EVENT_TYPE_USERS_DAY
  • Identificando jugadores por criterios específicos
  • Usando variables recién definidas
  • Obteniendo más de tus datos

Comenzando tu misión

Consulta nuestra colección de recetas en el SQL Cookbook para explorar los ricos datos en UGS. Ten en cuenta que UGS utiliza el sabor de SQL Snowflake.

Una de las consultas del libro de cocina analiza las estadísticas de misiones. Adaptamos ese código para echar un vistazo rápido a las tasas de fracaso de misiones en nuestro juego ficticio. Esto utiliza eventos personalizados que hemos creado para rastrear el compromiso de los jugadores con las misiones, con nuestro parámetro missionID.

Usando la tabla de EVENTOS predeterminada

Usando la tabla de EVENTOS predeterminada

Para esta consulta, utilizaremos la tabla de EVENTOS por defecto. Esta tabla incluye datos granulares para cada evento registrado en nuestro juego.

Limitando tu consulta para eficiencia

Limitando tu consulta para eficiencia

Ten en cuenta que usamos un filtro de fecha aquí para limitar nuestra consulta y mantenerla eficiente. Sin este límite, la consulta se ejecutaría sobre los 365 días completos de datos que son consultables por defecto en SQL Data Explorer. Además, siempre es más eficiente especificar qué columnas te interesan en lugar de usar SELECT *.

Frases como EVENT_JSON:missionID::INTEGER parecen intimidantes, pero si escribes 'missionID' y usas autocompletar, SQL Data Explorer genera la sintaxis JSON para ti, suponiendo que tienes ese parámetro configurado en tu propio juego.

Trazando tus resultados

Trazando tus resultados

Después de ejecutar la consulta, podemos graficar nuestros resultados para ver la historia en los datos. Los gráficos actualmente soportan hasta dos ejes Y y un eje X. Las etiquetas de los ejes se pueden renombrar fácilmente usando la expresión 'as' en tu consulta SQL; en este caso, nuestro eje Y toma el nombre que definimos: “Jugadores fallaron %”.

Vemos que más de uno de cada tres jugadores ha fallado en nuestra primera misión (missionID 0), por lo que podemos ajustar la dificultad de la misión para ofrecer a los usuarios una experiencia inicial más positiva.

Consejo: Si tienes algunos valores NULL en tus datos y encuentras que esto hace que un eje se vea extraño, usa coalesce(yourParameter, 0) para llenar los espacios en blanco.

Usando la herramienta de pivote

Usando la herramienta de pivote

Cuando ejecutamos una consulta, obtenemos una tabla de nuestros resultados. Agrega PLATAFORMA a nuestra consulta; en la imagen de arriba, verás cómo se ve la tabla ahora. Nota el botón ‘Pivotar’ a la derecha. Esto es útil para reestructurar nuestros datos sin necesidad de reescribir nuestra consulta.

Ajustando los datos

Ajustando los datos

En nuestro ejemplo, podríamos usar la herramienta de pivote para ajustar nuestros datos y obtener PLATAFORMA en las filas y MISIONID como las columnas.

Ver los resultados

Ver los resultados

Ajustar la tabla muestra que hubo poca diferencia en los fallos de misión entre plataformas.

Aumentando la velocidad de tu consulta

A medida que tu juego se vuelve cada vez más exitoso y tu base de jugadores crece, podrías encontrar que incluso consultas simples tardan un tiempo significativo en ejecutarse.

Digamos que quieres ejecutar esta consulta básica contra tus datos:

Muestreando tus datos

Podrías esperar que se ejecute bastante rápido, pero con un conjunto de datos grande, eso no siempre es el caso. Aprovecha la forma de nuestro almacén y el hecho de que los user_ids se almacenan como un hash para usar un método rápido que reduzca el número de usuarios incluidos y aumente la velocidad de la consulta.

Aquí, estamos dividiendo a nuestros usuarios en 100 cubos asignados y numerados pseudoaleatoriamente y mirando el cubo número 63.

Agregar este código en consultas simples no hará mucha diferencia, pero a medida que aumentamos la complejidad computacional, filtrar datos de esta manera es cada vez más crítico. Incluso en nuestro juego ficticio, encontramos que esta versión revisada de nuestra consulta se ejecutó un 75% más rápido que la original. Esto ahorra tiempo y dinero para obtener información sobre subconjuntos de usuarios sin tener que procesar conjuntos de datos completos.

Usando approximate_count_distinct

En las consultas anteriores, usamos count(distinct…) para calcular nuestro número de jugadores individuales y combinaciones de eventos. Una forma de mejorar la velocidad de nuestra consulta, si no necesitamos un 100% de precisión con nuestros resultados, es usar approximate_count_distinct. Nuestra consulta anterior se convierte en:

Abriendo el panel de Glosario

Abriendo el panel de Glosario

Hasta ahora, solo hemos estado utilizando la tabla principal de EVENTOS. Como esta tabla contiene datos granulares sobre cada evento que hemos tenido en nuestro juego, es la tabla más extensa. Para mejorar nuestras consultas, podemos usar objetos más pequeños para ejecutar nuestras consultas de manera más eficiente.

Echemos un vistazo al panel del Glosario, para explorar las tablas que tenemos disponibles para consultar.

Tablas agregadas en UGS

Junto a EVENTOS, aquí encontramos todas las tablas agregadas disponibles para consultar. Todas estas están disponibles directamente con UGS.

  • La tabla de USUARIOS contiene una sola fila por jugador junto con sus métricas de vida en el juego, como conteos de eventos, tiempo total de juego, gasto total, etc.
  • FACT_USER_SESSIONS_DAY incluye datos sobre cada sesión de cada jugador.
  • FACT_EVENT_TYPE_USERS_DAY consiste en una fila para cada evento que un jugador ha enviado cada día, junto con un conteo total.
  • FACT_WAU_USERS y FACT_MAU_USERS incluyen datos de perfil para usuarios que jugaron dentro de la semana o mes anterior en un día determinado.

Entre FACT_EVENT_TYPE_USERS_DAY y FACT_USER_SESSIONS_DAY, probablemente puedas responder más del 80% de la mayoría de las consultas sobre objetos más pequeños.

Usando FACT_EVENT_TYPE_USERS_DAY

Por ejemplo, en nuestra primera consulta, estábamos observando las tasas de fallos de misiones. También podríamos usar FACT_EVENT_TYPE_USERS_DAY para calcular las tasas de fallos generales cada día, con el conteo de NUMBER_OF_EVENTS almacenado en esta tabla.

También utilizaremos una de estas tablas en nuestra próxima consulta:

Identificando jugadores por criterios específicos

Identificando jugadores por criterios específicos

Usa esta consulta para ver el flujo de eventos para jugadores que cumplen con criterios específicos. Es útil para QA y depuración porque, al usar la tabla de USUARIOS mencionada anteriormente, obtendrás un usuario diferente cada vez que la ejecutes.

Si, por ejemplo, sospechas que los eventos no se están registrando correctamente para los jugadores que instalaron una cierta versión de tu juego, puedes ejecutar la consulta a continuación. Lo que regresa es el flujo de eventos de un jugador aleatorio que ejecuta la versión del juego que parece estar experimentando problemas. Haz esto unas cuantas veces, y puedes comenzar a detectar patrones en los datos rápidamente.

Consejo: Si deseas comentar varias líneas, usa el atajo de teclado CTRL+/.

Usando variables recién definidas

Es posible que estés acostumbrado a escribir consultas SQL en lenguajes distintos a Snowflake; por ejemplo, si usaste la herramienta de minería de datos deltaDNA anterior, probablemente escribiste consultas en Vertica.

Ahora puedes referirte a variables recién definidas sin necesidad de incluirlas primero en una expresión de tabla común (CTE). Por ejemplo, esta consulta se ejecuta con éxito en SQL Data Explorer, pero en el deltaDNA original, habría generado un error de "la columna 'rice' no existe":

Obteniendo más de tus datos

Hay mucho potencial en SQL Explorer. Hay mucho más por descubrir en UGS Analytics, incluyendo muchas opciones de gráficos como gráficos de pastel y gráficos de barras apiladas. Acceso Directo te da acceso directo a tus datos de Analytics a través de Snowflake.

Para acelerar tus conocimientos y obtener apoyo para construir tus consultas y paneles, contáctanos.

Lectura adicional

  • Documentación de UGS Analytics
  • Recetario SQL
  • Presentación de Funnels y SQL Data Explorer
  • Referencia de funciones SQL de Snowflake
  • Precios de UGS