Introducción a la solución de problemas
En este documento, se proporciona una descripción general de las herramientas de diagnóstico, las interfaces de telemetría y los recursos de documentación disponibles para ayudarte a solucionar problemas en BigQuery.
Cuando encuentres fallas en las consultas, cuellos de botella de rendimiento, errores de permisos, límites de cuota o problemas de transferencia de datos, BigQuery proporciona herramientas integradas para ayudarte a identificar las causas raíz y resolver los problemas rápidamente.
Flujo de trabajo para la solución de problemas
Para solucionar un problema en BigQuery de manera eficaz, considera los siguientes criterios de diagnóstico:
- Identifica el síntoma y el modo de falla. Revisa los resultados de tu tarea para determinar si el problema es una falla grave (como un código de error o una falla en el trabajo), una degradación del rendimiento (como una consulta lenta o una falta de ranuras), una denegación de permisos o una discrepancia de costos inesperada.
- Inspecciona los detalles de ejecución del trabajo. Usa el Google Cloud Explorador de trabajos de la consola, el gráfico de ejecución de consultas o las herramientas de línea de comandos para examinar los tiempos a nivel de etapa, la asignación de ranuras y los detalles de los errores. También puedes pedirle a Gemini Cloud Assist que investigue tu problema.
- Analiza la telemetría y los metadatos. Consulta las vistas de esquema de información o inspecciona los Registros de auditoría de Cloud para correlacionar el comportamiento del trabajo con la contención de recursos, los límites de reserva o los cambios administrativos.
- Aplica mitigaciones específicas. Usa guías de solución de problemas específicas de la categoría o funciones de SQL defensivas para corregir la causa subyacente.
Distingue la solución de problemas de la optimización
Cuando trabajas con BigQuery, es importante distinguir entre la solución de problemas, la optimización del rendimiento y las prácticas recomendadas:
- Solución de problemas. Se enfoca en diagnosticar y resolver fallas inesperadas, errores de tiempo de ejecución, canalizaciones rotas, agotamiento de cuotas o comportamientos no deseados que impiden que los trabajos se completen correctamente.
- Optimización del rendimiento. Se enfoca en mejorar la velocidad de ejecución, la latencia o la eficiencia de los recursos de las consultas y las cargas de trabajo que ya se ejecutan correctamente. Para obtener más información, consulta Optimiza el rendimiento de las consultas.
- Prácticas recomendadas. Se enfoca en patrones arquitectónicos y de diseño para el modelado de datos, el almacenamiento, la seguridad y la administración de costos. Para obtener más información, consulta Introducción a las prácticas recomendadas.
Herramientas de diagnóstico
En las siguientes secciones, se describen varias interfaces y herramientas automatizadas de BigQuery para ayudarte a diagnosticar problemas en tus cargas de trabajo.
Herramientas visuales y de consola
Las siguientes herramientas te ayudan a solucionar problemas de BigQuery desde Google Cloud la consola.
- Explorador de trabajos. Busca, filtra e inspecciona trabajos pasados y en ejecución en proyectos u organizaciones sin escribir consultas de SQL. Puedes ver mensajes de error, uso de ranuras, cronogramas de ejecución y metadatos de trabajos. Para obtener más información, consulta Supervisa trabajos en el Explorador de trabajos.
- Gráfico de ejecución de consultas. Inspecciona el plan de ejecución visual paso a paso de una consulta. El gráfico de ejecución te ayuda a identificar cuellos de botella, como derrames de ordenamiento aleatorio en el disco, etapas vinculadas a la capacidad de procesamiento, sesgo de datos o demoras de entrada/salida. Para obtener más información, consulta Obtén estadísticas de rendimiento de las consultas.
- Estadísticas de consultas y gráficos de recursos. Visualiza gráficos históricos y en tiempo real del uso de ranuras, la simultaneidad de trabajos y las asignaciones de reservas para diagnosticar restricciones de capacidad. Para obtener más información, consulta Usa gráficos de recursos administrativos.
- Gemini Cloud Assist en BigQuery. Obtén análisis contextuales asistidos por IA de consultas fallidas y cuellos de botella de rendimiento. Gemini Cloud Assist explica los códigos de error, destaca la sintaxis de SQL problemática y sugiere pasos de corrección directamente en la Google Cloud consola. Para obtener más información, consulta Soluciona problemas de consultas con Gemini Cloud Assist.
Herramientas de diagnóstico automatizadas y de línea de comandos
Las siguientes herramientas pueden ayudarte a diagnosticar problemas de BigQuery desde una interfaz de línea de comandos.
- Herramienta de línea de comandos de bq. Inspecciona estructuras de error detalladas, IDs de solicitud y metadatos de trabajos con el
bq show -j <var>JOB_ID</var>comando o agregando la--format=prettyjsonmarca a los comandos de consulta. Para obtener más información, consulta Soluciona problemas de comandos de la CLI. - Herramienta
gcpdiag. Ejecuta diagnósticos automatizados desde la línea de comandos para detectar problemas de configuración Google Cloud comunes, incluidas las brechas de permisos de IAM , las restricciones de red y los errores de cuentas de servicio. Para obtener más información, consulta Soluciona problemas de fallas en las consultas congcpdiag.
Vistas de metadatos y telemetría
Las vistas de esquema de información te permiten consultar metadatos históricos y en tiempo real sobre trabajos, capacidad, transferencia de transmisión y conjuntos de datos con SQL estándar. Estas vistas incluyen lo siguiente:
- Telemetría de ejecución de trabajos. Consulta
INFORMATION_SCHEMA.JOBSyINFORMATION_SCHEMA.JOBS_TIMELINEpara analizar el consumo de ranuras-milisegundos, los bytes derramados, los tiempos de cola y los códigos de error en los trabajos. - Reservas y capacidad. Consulta
INFORMATION_SCHEMA.RESERVATIONSyINFORMATION_SCHEMA.CAPACITY_COMMITMENTSpara diagnosticar la asignación de ranuras, los límites de reserva y los comportamientos de ajuste de escala automático. - Transferencia y transmisión. Consulta
INFORMATION_SCHEMA.STREAMING_TIMELINEpara identificar la latencia de transferencia y los límites de frecuencia de transmisión. - Estado del almacenamiento y las particiones. Consulta
INFORMATION_SCHEMA.TABLE_STORAGEpara inspeccionar los tamaños de las tablas físicas, el almacenamiento activo en comparación con el almacenamiento a largo plazo y la distribución de particiones.
Para obtener más información, consulta
Introducción a BigQuery INFORMATION_SCHEMA.
Cloud Monitoring y Registros de auditoría de Cloud
- Registros de auditoría de Cloud. Revisa los registros de auditoría de actividad de administración y de acceso a los datos para hacer un seguimiento de quién inició operaciones específicas, inspeccionar las identidades de las llamadas y diagnosticar errores de
PERMISSION_DENIED. Para obtener más información, consulta Referencia del registro de auditoría de BigQuery. - Cloud Monitoring. Haz un seguimiento de métricas como el uso de ranuras, las duraciones de ejecución de consultas y los bytes subidos, y configura políticas de alertas para notificar a tu equipo cuando se superen los umbrales o las cuotas. Para obtener más información, consulta Supervisa BigQuery con Cloud Monitoring.
Funciones de SQL defensivas y sentencias de depuración
Para evitar que las consultas fallen de forma inesperada debido a errores de datos de tiempo de ejecución, usa lo siguiente:
- Expresiones seguras. Usa
SAFE_CAST(),SAFE_DIVIDE(),SAFE_OFFSET()ySAFE_ORDINAL()para mostrarNULLen lugar de generar errores de tiempo de ejecución cuando los tipos de datos o los límites de los arrays no coinciden. La mayoría de las funciones escalares admiten el prefijoSAFE.. Para obtener más información, consulta Funciones de depuración ySAFE.prefijo. - Aserciones de SQL. Usa la sentencia
ASSERTen transacciones o secuencias de comandos de varias sentencias para aplicar condiciones de validación de datos y fallar con mensajes de error personalizados antes de que se ejecuten las operaciones posteriores. Para obtener más información, consulta Sentencias de depuración.
Soluciona problemas por categoría
Selecciona una categoría de las siguientes secciones para ver códigos de error detallados, causas raíz y guías de resolución paso a paso.
Ejecución y rendimiento de las consultas
Diagnostica las consultas que no se ejecutan, agotan el tiempo de espera, encuentran restricciones de recursos o experimentan demoras inesperadas.
- Soluciona problemas de consultas. Resuelve errores de
resourcesExceeded, ejecución lenta de consultas, derrames de ordenamiento aleatorio, condiciones de memoria insuficiente y fallas en las consultas programadas. - Soluciona problemas de tiempos de espera prolongados en la cola de consultas. Diagnostica cuellos de botella de simultaneidad y consultas en cola debido a límites de cola interactivos o por lotes.
- Referencia de mensajes de error. Busca códigos de error HTTP específicos, cadenas de motivos de error y acciones recomendadas.
Identity and Access Management (IAM) y seguridad
Diagnostica fallas de control de acceso, asignaciones de roles faltantes y bloqueos de políticas de administración de datos.
- Soluciona problemas de permisos de IAM en BigQuery. Diagnostica errores de permisos denegados, otorga roles de IAM faltantes y usa el solucionador de problemas de políticas.
- Soluciona problemas de los Controles del servicio de VPC. Identifica y resuelve incumplimientos de política de perímetro y bloqueos de reglas de entrada o salida.
- Soluciona problemas de seguridad a nivel de la fila y de la columna. Resuelve problemas de acceso relacionados con políticas de datos, etiquetas de políticas y filtros de acceso a las filas.
Cuotas, límites de frecuencia y reservas
Resuelve problemas cuando las cargas de trabajo superan los límites de servicio o las asignaciones de capacidad de BigQuery.
- Soluciona problemas de cuota y de límite. Identifica las cuotas ajustables en comparación con las no ajustables, controla los límites de consultas simultáneas y resuelve los errores de límite de frecuencia de la API.
- Soluciona problemas con las reservas. Diagnostica la falta de ranuras, las discrepancias en la asignación de reservas y las deficiencias de capacidad de referencia.
Transferencia, transmisión y transferencia de datos
Diagnostica fallas cuando se cargan datos, se transmiten registros o se sincronizan fuentes externas.
- Soluciona problemas relacionados con la configuración de una transferencia.. Resuelve errores del Servicio de transferencia de datos de BigQuery en fuentes como Amazon S3, Salesforce, Google Ads y Cloud Storage.
- Soluciona problemas de inserciones de transmisión. Depura la API de Storage Write y las fallas de transferencia de transmisión heredadas, los errores de inserción a nivel de la fila y las cuotas de procesamiento.
- Soluciona problemas de carga de datos. Resuelve errores de análisis y delimitadores de esquemas CSV, JSON, Parquet o Avro.
Fuentes de datos externas y consultas federadas
Diagnostica errores de conectividad, autenticación y ejecución cuando se consultan datos fuera de BigQuery.
- Soluciona problemas de consultas federadas de Cloud SQL. Resuelve tiempos de espera agotados de conexión, problemas de configuración de instancias y fallas de credenciales.
Discrepancias en la facturación y los costos
Investiga los cargos inesperados y las discrepancias en la facturación en el procesamiento y el almacenamiento.
- Soluciona problemas de discrepancias en los costos de BigQuery. Identifica el origen de los cargos inesperados, analiza los bytes facturados según demanda y verifica el uso del compromiso de capacidad.
Mitigación de la pérdida de datos
Para recuperar datos históricos que se cambiaron o borraron, o para mantener la continuidad empresarial durante una interrupción regional, usa las siguientes herramientas de recuperación ante desastres y retención de datos:
- Restablece datos. Consulta o restablece los datos de la tabla que se cambiaron o borraron dentro del período de viaje en el tiempo. Para obtener más información, consulta Restablece datos.
- Viaje en el tiempo. Conserva los datos actualizados o borrados en un conjunto de datos durante un período de retención configurado para protegerlos contra modificaciones accidentales. Para obtener más información, consulta Viaje en el tiempo.
- Conmutación por error regional. Promueve una réplica secundaria al rol principal durante una interrupción regional cuando usas la recuperación ante desastres administrada por BigQuery. Para obtener más información, consulta Conmutación por error regional.
Uso de APIs
Cuando interactúas con BigQuery de forma programática, usa los siguientes recursos para optimizar la latencia de las solicitudes y administrar los flujos de trabajo de carga:
- Sugerencias sobre el rendimiento de la API. Sigue las prácticas recomendadas para realizar llamadas a la API, como administrar grupos de conexiones, usar operaciones por lotes y controlar reintentos. Para obtener más información, consulta Sugerencias sobre el rendimiento de la API.
- Cargas de la API. Soluciona problemas y administra la transferencia de datos con solicitudes de carga reanudables y de varias partes de la API de REST. Para obtener más información, consulta Cargas de la API.
¿Qué sigue?
- Obtén más información sobre la supervisión de BigQuery.
- Explora la referencia de BigQuery
INFORMATION_SCHEMA. - Comunícate con Atención al cliente de Cloud para obtener asistencia con problemas de producción persistentes o críticos.