Todos los productos
Search
Centro de documentos

ApsaraDB for OceanBase (Deprecated):Información básica de SQL

Última actualización: Sep 04, 2026

Este tema presenta la información básica sobre la página de SQL Insights, que incluye estadísticas de SQL, monitoreo de rendimiento, análisis de solicitudes a nivel de inquilino y lista de SQL.

Estadísticas del clúster

En la pestaña Statistics, puede consultar el número de sentencias SQL sospechosas y el número de SlowSQL en el clúster actual, así como las cifras correspondientes para cada inquilino. Haga clic en el nombre de un inquilino y el sistema mostrará los detalles de diagnóstico de dicho inquilino en las secciones inferiores de la página de SQL Insights.

image

Monitoreo de rendimiento del clúster

En la pestaña Performance Monitoring, puede consultar el rendimiento de SQL del clúster.

image

Análisis de solicitudes del inquilino

Haga clic en el botón View Request Analysis en la parte central de la página para consultar la Distribution of Elapsed Time y la Request Statistics List.image

Monitoreo de rendimiento del inquilino

Haga clic en View Performance Monitoring en la parte central de la página para consultar los datos de monitoreo de rendimiento de un inquilino.image

Información de diagnóstico del inquilino

Puede seleccionar un inquilino de la lista desplegable Tenant y consultar la información de diagnóstico sobre TopSQL, SlowSQL, SQL sospechoso, SQL de alto riesgo y SQL nuevo para ese inquilino. También puede realizar las siguientes operaciones:

Nota

Actualmente, el sistema tiene las siguientes restricciones para instancias de clúster Standard Edition (Key-Value):

  • Para instancias de clúster KV con números de versión mayores o iguales a 4.2.4 pero menores que 4.3.0, se puede mostrar la información de diagnóstico de TopSQL y SlowSQL.

  • Para instancias de clúster KV de otras versiones, solo se puede mostrar la información de diagnóstico de SlowSQL.

  • Filtre la información de diagnóstico de SQL por Database, Node, Duration, SQL ID, SQL Text o Quick Filter.

    • La opción Duration le permite consultar datos de los últimos 5 minutos, últimos 15 minutos, últimos 30 minutos, última hora, últimas 3 horas y últimas 6 horas. También puede personalizar la duración, pero tenga en cuenta las siguientes limitaciones:

      • Límite máximo de rango: El intervalo de tiempo seleccionado no debe exceder las 24 horas.

      • Límite mínimo de rango:

        • Para datos dentro de 3 días: El intervalo de tiempo seleccionado debe ser de 1 minuto como mínimo.

        • Para datos de 3 a 7 días: El intervalo de tiempo seleccionado debe ser de 5 minutos como mínimo.

        • Para datos posteriores a 7 días: El intervalo de tiempo seleccionado debe ser de 20 minutos como mínimo.

    • La opción Quick Filter admite Full Table Scan, Multi-partition Scan, Multiple Remote Executions, Hard Parsing, Error Executions y Retry Executions.

    • Si los filtros predeterminados no satisfacen sus necesidades, puede hacer clic en Add para agregar más condiciones.

  • Haga clic en el icono image.png de una columna para ordenar la lista por dicha columna.

  • Haga clic en image para seleccionar las columnas que se mostrarán en la lista.

  • Haga clic en image para descargar la lista.

  • Haga clic en una sentencia SQL para ir a su página de detalles. En la página Overview, puede consultar el texto SQL, los planes de ejecución física, el historial de ejecución de SQL, la información de tablas y la configuración avanzada de la sentencia SQL.

  • Aggregate in implica ignorar el número de parámetros constantes en la cláusula IN de las sentencias SQL y tratar cada cláusula IN como si tuviera un solo parámetro constante. Siguiendo esta regla, las sentencias SQL se parametrizan y se calcula el SQL ID; las sentencias SQL con el mismo SQL ID se consideran de la misma categoría y se agregan. Si la casilla está seleccionada, las sentencias SQL se mostrarán según Aggregation IN, pero esto no afecta los datos estadísticos.

TopSQL

TopSQL se refiere a las sentencias SQL con el tiempo de respuesta total más largo dentro del intervalo de tiempo seleccionado. Puede realizar las siguientes operaciones relacionadas con TopSQL:

  • Filtre TopSQL mediante filtros rápidos, como Full Table Scan, Multi-partition Scan y Multiple Remote Executions para localizar rápidamente las sentencias SQL que necesitan optimización.

  • Haga clic en View Samples en la columna Operation para ver la sentencia SQL.

  • En la columna Operation de una sentencia SQL específica, haga clic en image y seleccione Set Throttling. Puede marcar varias sentencias SQL para configurar el estrangulamiento en lotes.

  • Haga clic en el signo más (+) delante del texto SQL para ver el último error y el resumen de errores durante el período estadístico.

  • Marque Aggregate in en la esquina superior derecha de la lista para mostrar las sentencias SQL según Aggregation IN, pero esto no afectará los datos estadísticos. Puede seleccionar varias sentencias SQL (incluidas aquellas con Aggregation IN) para configurar el estrangulamiento en lotes.

  • Haga clic en View Optimization Recommendation en la esquina superior derecha de la lista para ir al centro de optimización y consultar las sugerencias de optimización.

  • Haga clic en TopSQL Comparison en la esquina superior derecha de la lista para comparar la ejecución de la misma sentencia SQL durante diferentes períodos en el mismo nodo, o durante el mismo período en diferentes nodos, así como la ejecución de una sola sentencia SQL durante diferentes períodos o en diferentes nodos.

    • Comparación de diferentes períodos: Especifique el período base y el período de comparación. Haga clic en Comparative Analysis para consultar la Comparison of Details y la Comparison of Performance Trends.

    • Comparación de diferentes nodos: Especifique el nodo base y el nodo de comparación. Haga clic en Comparative Analysis para consultar la Comparison of Details y la Comparison of Response Time Trends.

    • Comparación de una sola SQL en diferentes períodos: Compare y analice la ejecución de SQL individuales o agregadas durante los períodos base y de comparación, y luego revise el Total Database Time Consumption y las Total Executions.

    • Comparación de una sola SQL en diferentes nodos: Compare y analice la ejecución de SQL individuales o agregadas en diferentes nodos de análisis, y luego revise el Total Database Time Consumption y las Total Executions.

      Nota
      • Dos sentencias SQL con el mismo SQL ID en la misma base de datos se consideran idénticas.

      • La comparación de diferentes nodos se realiza únicamente cuando la misma sentencia SQL se ejecuta en distintos nodos. De lo contrario, no se mostrará ningún resultado de comparación.

      • Para realizar un análisis comparativo de una sola SQL en diferentes períodos o en diferentes nodos, también puede introducir primero el SQL ID y luego seleccionar ... > Single SQL Comparison en la columna Operation para la SQL correspondiente.

  • Haga clic en Customize Column en la esquina superior derecha de la lista para personalizar otras métricas que necesite.

    1. En la ventana emergente, establezca la Column Expression, por ejemplo (@avgCpuTime * @avgDiskReads) / 2.

    2. Introduzca el Column Name.

    3. Haga clic en OK.

  • Puede diagnosticar el TopSQL de un inquilino específico o de todos los inquilinos en un clúster.image

  • Cuando la utilización de CPU de un host es demasiado alta, puede filtrar el TopSQL por base de datos y nodo, y luego ordenar estas sentencias SQL por tiempo de CPU en orden descendente para localizar las sentencias SQL que más necesitan optimización.

    image

SlowSQL

SlowSQL se refiere a sentencias SQL cuyo tiempo de ejecución supera los 500 ms. Puede realizar las siguientes operaciones relacionadas con SlowSQL:

  • Filtre SlowSQL mediante filtros rápidos, como Full Table Scan, Multi-partition scan y Multiple Remote Executions.

  • Haga clic en View Samples en la columna Operation para ver la sentencia SQL.

  • En la columna Operation de una sentencia SQL específica, haga clic en image y seleccione Set Throttling. Puede marcar varias sentencias SQL para configurar el estrangulamiento en lotes.

  • Marque Aggregate in en la esquina superior derecha de la lista para mostrar las sentencias SQL según Aggregation IN, pero esto no afectará los datos estadísticos. Puede seleccionar varias sentencias SQL (incluidas aquellas con Aggregation IN) para configurar el estrangulamiento en lotes.

  • Para personalizar el umbral de SQL lento, seleccione ... > Modify Slow SQL Threshold en la esquina superior derecha de la lista. En la ventana emergente, ajuste el umbral de SQL lento y luego haga clic en OK.

SQL sospechoso

La pestaña Suspicious SQL muestra SQL Text, SQL ID, Database, Diagnostic Results, entre otros. SQL sospechoso se refiere a sentencias SQL que pueden causar problemas de rendimiento y se filtran según reglas y algoritmos. La siguiente tabla enumera resultados de diagnóstico comunes y sugerencias de solución de problemas.

Resultado del diagnóstico

Sugerencia de solución de problemas

Hint sin efecto

Indica una sentencia SQL anómala que requiere que el administrador de bases de datos (DBA) determine si debe corregir el plan de ejecución mediante un outline.

Escaneo completo de tabla con bajo rendimiento

Analice el plan de ejecución y la estructura de la tabla para asegurar que la SQL tenga índices adecuados disponibles.

Bajo rendimiento a pesar del uso de índices

Compruebe si el rendimiento es aceptable en sus escenarios de negocio. De no ser así, mejore la lógica de negocio u optimice los índices.

Degradación del rendimiento

Revise cambios en la distribución de datos, aumentos repentinos de solicitudes y modificaciones en el plan de ejecución.

Cambio de plan acompañado de degradación del rendimiento

Consulte con el DBA. Puede usar un outline para fijar el plan de ejecución y verificar si la sentencia SQL es anómala.

Picos de ejecución

Revise el volumen de negocio. Un pico en el número de ejecuciones de una sentencia SQL puede provocar una disminución del rendimiento general.

Carga de CPU excesivamente alta

Revise sus escenarios de negocio, cambios en la distribución de datos, incrementos de solicitudes y modificaciones en el plan de ejecución.

Sospecha de conflicto de bloqueos

La SQL se está reintentando, lo cual puede deberse a un conflicto de bloqueos. Investigue la lógica de negocio para determinar si existe un escenario de conflicto de bloqueos.

La sentencia DML accede a demasiadas particiones

Reescriba la sentencia SQL para que admita la poda de particiones.

Sospecha de tabla búfer

Compruebe si la tabla relacionada se actualiza con frecuencia.

Posible existencia de cuentas grandes y pequeñas

Compruebe si existe un problema de sesgo de datos.

Inestabilidad del plan de ejecución

Compruebe si existen problemas de regresión del plan.

Tiempo de generación del plan demasiado largo

Compruebe si existen problemas como una baja tasa de aciertos del plan.

SQL de alto riesgo

La pestaña High-risk SQL muestra SQL Text, Database, Cause of Risk, entre otros. SQL de alto riesgo se refiere a sentencias SQL que pueden dañar el rendimiento del sistema, la seguridad y los datos.

La siguiente tabla describe los tipos de SQL de alto riesgo que se pueden identificar.

Operación

Ejemplos

Tipo de riesgo

Descripción

Agregar o eliminar una columna

  • alter table test drop column id

  • alter table test add new_id int not null comment 'New ID'

Cambio de esquema: Se agregan o eliminan columnas

-

Eliminar una tabla o base de datos

  • drop table test

  • drop database test

Se elimina una tabla o base de datos

-

Vaciar una tabla

truncate table test

Se borra una tabla de datos

-

Actualización sin condiciones

update test set new_id =1

Actualización sin condiciones

-

Actualización con condición permanentemente verdadera

update test set new_id =1 where 1 = 1

Actualización con condición permanentemente verdadera

-

Eliminación sin condiciones

delete from test

Eliminación sin condiciones

-

Eliminación con condición permanentemente verdadera

delete from test where 1=1

Eliminación con condición permanentemente verdadera

-

Demasiadas filas devueltas

max_return_rows >= 50000

Demasiadas filas devueltas

El parámetro max_return_rows especifica el número máximo de filas devueltas permitido para una sentencia SQL. Si el número de filas devueltas supera este valor, la sentencia SQL se considera de alto riesgo.

Demasiadas filas afectadas

max_affected_rows >= 50000

Demasiadas filas afectadas

El parámetro max_affected_rows especifica el número máximo de filas afectadas permitido para una sentencia SQL. Si el número de filas afectadas supera este valor, la sentencia SQL se considera de alto riesgo.

Demasiadas particiones involucradas

max_partition_cnt >2000

Demasiadas particiones involucradas

El parámetro max_partition_cnt especifica el número máximo de particiones involucradas permitido en una sentencia SQL. Si el número de particiones involucradas supera este valor, la sentencia SQL se considera de alto riesgo.

Demasiadas condiciones IN

where id in (1,2,3,4,5.....)

Demasiadas condiciones IN

-

Cambio de índice

drop index idx2 on test_high_risk2

Cambio de alto riesgo: Cambio de índice

-

SQL nuevo

SQL nuevo se refiere a sentencias SQL que no se han ejecutado durante un período de tiempo (7 días de forma predeterminada) antes del intervalo de consulta, pero que tienen registros de ejecución dentro de dicho intervalo.

La pestaña Add SQL muestra SQL Text, SQL ID, Database, Total Executions, entre otros.