Contactos

Análisis de consulta utilizando SQL Profiler. SQL Profiler resuelve problemas

¿Qué aprendes de este artículo?

  • Propósito de la herramienta de trazado SQL Profiler
  • Cómo realizar un seguimiento del texto de la solicitud al DBMS en el que se transmite 1C QUERY
  • Configuración de filtro de rastreo
  • Cómo cumplir personal configuración de SQL Perfilador

A menudo, surge la situación cuando una solicitud en 1C por alguna razón funciona lentamente, pero el análisis de texto de consulta no nos dice ningún problema.

En este caso, tiene que estudiar este problema en un nivel inferior. Para hacer esto, debemos ver la consulta SQL y el plan de solicitud. Para hacer esto, puedes usar SQL Profiler.

SQL Profiler - Propósito

SQL Profiler es un programa que incluye MS SQL Server, que está diseñado para ver todos los eventos que se producen en el servidor SQL. En otras palabras, se necesita para grabar rastro.

¿En qué casos esta herramienta puede ser útil para programador 1C? En primer lugar, puede obtener el texto de la consulta en lenguaje SQL Y mira su plan. También se puede hacer en la revista tecnológica (TZH), pero el plan de consulta en el TH no es tan conveniente y requiere algunas habilidades y habilidades. Además, el perfilador puede ver no solo un texto, sino también un plan gráfico para realizar una consulta, que es más conveniente.

Además, el perfilador le permite descubrir:

  • las solicitudes son más largas que un cierto tiempo.
  • solicitudes de una tabla específica
  • expectativas sobre las cerraduras
  • taimáuts
  • entrelazado, etc.

Análisis de consultas usando SQL Profiler

A menudo, el perfilador se aplica específicamente para analizar las solicitudes. Y al mismo tiempo que necesita analizar no todas las solicitudes ejecutables, sino cierta solicitud En el idioma 1C se transmite en SQL y preste atención a su plan de ejecución.

En particular, es necesario comprender por qué la solicitud se realiza lentamente. O cuando se construyen una solicitud grande y compleja, debe asegurarse de que la consulta SQL no contenga conexiones con una subconsulta.

Para rastrear la consulta en el rastreo, realice los siguientes pasos:

1. Ejecute SQL Profiler: Inicio - Todos los programas - Microsoft SQL Server 2008 R2 - Medios de rendimiento - SQLProfiler.

2. Crea un nuevo rastro: Archivo - Crear trace (Ctrl + N).

3. Indique el servidor DBMS en el que se encuentra nuestra base de datos y haga clic en Conectar:

Nada nos impide realizar el rastreo del servidor DBMS, ubicado en cualquier otra computadora.

4. En la ventana que aparece. Propiedades de seguimiento Cambiar al marcador Selección de eventos.:

Como necesitamos consultas y solicitamos planes, debe habilitar los eventos apropiados. Para mostrar lista llena Propiedades y eventos incluyen banderas. Mostrar todos los eventos y Mostrar todas las columnas. Ahora necesita seleccionar solo los eventos que se muestran en la siguiente figura, el resto, desea deshabilitar:

Descripción de estos eventos:

  • ShowPlanstatisticsProfile- Plan de ejecución de texto
  • ShowPlanxMlStatisticsProfile- Plan de ejecución gráfica
  • RPC: Texto de consulta completado si se ejecuta como un procedimiento (si la solicitud 1C se ejecuta con parámetros)
  • SQL: Texto de consulta por lotes: Si se ejecuta como una consulta regular (si la solicitud 1C está satisfecha sin parámetros)

6. En esta etapa, debe configurar el filtro para eventos seleccionados. Si el filtro no está instalado, veremos solicitudes de todas las bases de datos ubicadas en este servidor DBMS. Por el botón Filtros de columna, instale el filtro de la base de datos:

Ahora vemos en seguimiento solo solicitudes a la base de datos "TestBase_8_2".

También puede poner un filtro y otros campos, más interesantes de ellos:

  • Duración
  • TextData (generalmente este es el texto de la consulta)
  • RowCounts (número de filas devueltas por la solicitud)

Supongamos que necesitamos "capturar" todas las solicitudes a la tabla "_INFORG4312" con una duración de más de 3 segundos en la base de datos "TestBase_8_2". Para esto necesitas:

a) Instale el filtro de la base de datos (ver arriba)
b) Instale el filtro de duración (instalado en milisegundos):

c) Instale el filtro por el texto del texto:

Para configurar el filtro por el texto del texto, use la máscara. Si necesita rastrear las solicitudes que se ponen en contacto con varias tablas, varios elementos se crean en la sección "Parece". Las condiciones de filtro llamadas trabajan juntas.

7. Ahora ejecuta la traza usando el botón Correr en la ventana Propiedades de seguimiento Y vemos los eventos que caen en los filtros instalados, cuya visualización se configuró.

Los botones del panel de comando sirven para controlar la traza:

Propósito de los botones:

  • Borrador - Borra la ventana de rastreo
  • Comienzo - corre rastre
  • Pausa - Pone un rastro por pausa, cuando presiona el inicio, se renueva el trazado
  • Detener - Deja de rastrear

8. La ventana de seguimiento consta de dos partes. En la parte superior hay eventos y sus propiedades, en la parte inferior, información dependiendo del tipo de eventos. Para nuestro ejemplo, el texto de la consulta se mostrará aquí, o su plan.

9. Iniciaremos una solicitud en la consola de preguntas 1C y veremos cómo afecta al perfilador:

Según el comportamiento del rastreo, se puede ver que las solicitudes al final resultan varias, y solo una de ellas es interesante. Las solicitudes restantes son el servicio.

10. Las propiedades de los eventos permiten evaluar:

  • ¿Cuántos segundos se cumplen (duración)?
  • ¿Cuántas lecturas lógicas (lecturas)
  • cuántas filas se devolvió una solicitud como resultado (RowCounts), etc.

En nuestro caso, la solicitud se realizó 2 milisegundos, realizó 4 lecturas lógicas y devolvió 1 cadena.

11. Si observa un evento anterior, puede ver un plan de solicitud en forma gráfica:

Desde el plan se puede ver que la búsqueda se realiza en el índice de precios, este plan no se puede llamar perfecto, ya que el índice no está cubiertas, los campos de campo y el nombre se obtienen utilizando Keylookup, que toma el 50% del tiempo .

Usando el menú contextual, el plan de consulta gráfica resultante se puede guardar en archivo separado con * .sqlplan extensión y ábralo en un perfilador en otra computadora o usando programas SQL Sentry Plan Explorer, que es más avanzado.

12. Si se eleva aún más, veremos el mismo plan de consulta, pero ya en el formulario de texto. Es este plan el que se muestra en el TJ, la PC y otros medios para controlar el rendimiento de 1C.

  • En el formato del perfil en sí, es decir, con la extensión * .TRC
  • En formato XML
  • Haz una plantilla de plantilla (ver el siguiente artículo)
  • Trace duro en forma de tabla de base de datos. Esta es una forma muy conveniente cuando, por ejemplo, necesitas encontrar lo más solicitud lenta En peticiones de rastreo o filtro para cualquier parámetro.

Luego, seleccione la base de datos en el servidor especificado, especifique el nombre de la tabla donde se guardará la traza. Puede ser usado tabla existente, o dale un nuevo nombre, y luego se creará automáticamente esta tabla.

Ahora es posible crear consultas de cualquier complejidad a nuestra tabla: por ejemplo, busque las solicitudes de mayor administración.

También debe recordarse que la duración se almacena en una tabla en el millón de dólares de segundo, y cuando se deriva el resultado, es necesario traducir un valor a milisegundos. También en la tabla hay una columna de Rownumber que muestra el número de esta cadena en seguimiento.

14. Cuando se utiliza un perfilador para analizar las solicitudes, la configuración constante de los eventos y filtros deseados se quitará constantemente.

En este caso, las plantillas de seguimiento nos ayudarán, donde configuramos los filtros que necesitamos y el orden de las columnas, y luego simplemente use una plantilla existente al crear una nueva traza.

Para crear una plantilla, use el menú. Archivo - Plantillas - Nueva plantilla:

En la primera pestaña, especifique el tipo de servidor, el nombre de la plantilla y, si es necesario, configure el indicador para usar esta plantilla predeterminada.

En la segunda pestaña, realizamos la elección de los eventos necesarios y configuramos los filtros (como se muestra arriba).

Al crear una nueva traza, podemos especificar la plantilla deseada, y luego en la segunda pestaña, todos los filtros y los eventos se llenarán automáticamente por la plantilla creada.

Andrey Burmistrov

Al desarrollar módulos de aplicación del sistema Lexema.RU, la necesidad de un análisis de las solicitudes de la base de datos se produce periódicamente al operar formularios, consultas, informes, procedimientos almacenados y otros objetos almacenados para diagnosticar problemas. Para resolver tales tareas, se destinan las herramientas de perfiles de la consulta SQL. Ellos permiten:

  • eventos de pista diferentes tipos En el servidor de la base de datos (ejecución de solicitudes, procedimientos almacenados, etc.)
  • filtrar eventos en varios criterios (nombre de BD, inicio de sesión de usuario, etc.)
  • registre la secuencia de acciones en forma de seguimiento de eventos. Posteriormente, se puede analizar el rastreo, así como almacenado en un archivo o en la base de datos.
  • analizar el rendimiento (velocidad de ejecución) solicitudes de búsqueda y eliminación del sistema "cuellos de botella"
  • etc.

Este artículo discute dos herramientas:

  • Lexema SQL Profiler, integrado en el modelo de aplicación
  • MS SQL Server Profiler, que forma parte de MS SQL Server

Lexema SQL Profiler

Esta herramienta está diseñada para analizar las solicitudes al servidor de la base de datos, iniciado por el programa MODULOR - para desarrollar configuraciones de la aplicación. Con él, puede explorar la estructura de la base de datos de lógica aplicada y sus objetos.

Para usar Lexema SQL Profiler, ejecute el modelo de aplicación. Haga clic en el botón con la imagen del barril en la izquierda. esquina superior ventana:

Para comenzar a grabar la traza de SQL Modeller, solicita el servidor de la base de datos, haga clic en el botón Ejecutar en la barra de herramientas.

Realice las acciones en el modulador para las que desea explorar las solicitudes de la base de datos. Por ejemplo, después de abrir una lista de modelos, se creará un seguimiento de varias solicitudes:

La tabla desde arriba contiene una lista de eventos (consultas SQL), el campo en la parte inferior: el contenido (código SQL)

Campos de mesa:

  • Eventclass
  • Textdata.
  • Duración.
  • Hora de inicio
  • Hora de finalización
  • Nombre de la aplicación.
  • Lee.
  • Escribe.
  • Transacción.

Por ejemplo, desde la traza de eventos al abrir una lista de modelos, puede sacar las siguientes conclusiones: se solicitan datos de tres tablas (L8_Model, L8_Modelproperty y L8_Namespace); La consulta más larga se realiza a la tabla L8_ModelProperty (242 ms).

MS SQL Server Profiler

MS SQL Server Profiler es una herramienta incluida en el paquete MS SQL Server que le permite interceptar los eventos del servidor de la base de datos. Los eventos se pueden guardar en el archivo de seguimiento o en la base de datos para un análisis o uso posteriores para repetir una serie específica de pasos para reproducir un problema para sus diagnósticos. Escenarios de horario usando SQL Server Profiler:

  • control de rendimiento de instancia de SQL Base de datos del servidor. Motor
  • depuración de instrucciones TRANSACT-SQL y procedimientos almacenados
  • análisis de rendimiento identificando las solicitudes de trabajo lentamente.
  • realización de pruebas de estrés y control de calidad jugando trazas.
  • jugando un rastro de uno o más usuarios
  • verifique las instrucciones de TRANSACT-SQL y los procedimientos almacenados en la etapa de desarrollo del proyecto en el modo paso a paso para garantizar la ejecución correcta del código
  • problemas de solución de problemas en SQL Server por interceptación de eventos en el sistema de producción (versión del producto) y reproducirlos en la depuración ( versión de prueba). Esta es una oportunidad muy útil porque permite durante el control o la depuración para continuar utilizando el sistema de producción.
  • auditoría y seguimiento de acciones que se presentan en la instancia de SQL Server. Esta característica le permite al administrador de seguridad ver cualquier evento de auditoría, en particular intentos exitosos y fallidos de iniciar sesión en el sistema y acceder a las autoridades y los objetos.
  • guardar los resultados de rastreo en formato XML, que proporciona una estructura de almacenamiento jerárquica estandarizada de los resultados de rastreo. Esto le permite realizar cambios en las huellas existentes o crearlas manualmente para la reproducción posterior.
  • análisis estadístico de los resultados de rastreo, lo que permite producir y analizar clases similares de eventos. Los resultados contienen medidores obtenidos sobre la base de agrupar una columna.
  • proporcionando la posibilidad de crear usuarios de trazado que no son administradores.
  • configuración de plantillas de seguimiento, que se pueden usar para rastros posteriores.

Ejecutar y conectarse al servidor

Puede ejecutar MS SQL Server Profiler desde el menú OS Menú de Windows ("Inicio") o desde el menú Programa del programa MS SQL Server Management Studio (Punto de servicio "" SECUITER SQL Server "). Después de comenzar, debe iniciar sesión en el servidor: ingrese la dirección del servidor, nombre cuenta y contraseña:

Configuración de parámetros de rastreo

Luego, antes del inicio de la traza, es necesario establecer sus propiedades:

  • Nombre de trazado: es recomendable establecer en el caso de que esté planeado ser guardado
  • Utilice la plantilla: define la configuración de seguimiento predeterminada. A saber, incluye las clases de eventos que deben ser monitoreados a SQL Server Profiler. Por ejemplo, puede crear una plantilla que especifique los eventos utilizados, las columnas de datos y los filtros. Los ensamblajes no se ejecutan, pero se guardan en archivos con la extensión TDF. Después de guardar la plantilla controla la captura de datos si se basa en esta plantilla. empieza.
  • Guardar en el archivo para volver a abrir y analizar
  • Guarde en la tabla: en este caso, la traza se guardará en la base de datos y será posible analizar las herramientas SQL.
  • Encienda el tiempo de parada de rastreo: es necesario en caso de observaciones a largo plazo

Selección de tipos de eventos y sus atributos.

Una etapa importante de establecer el seguimiento es la elección de los eventos (debe ir a la pestaña correspondiente). La pestaña "Seleccionar evento" contiene una tabla de cuadrícula: una tabla que contiene cada una de las clases de eventos disponibles para el rastreo. En cada clase de eventos en la tabla cuentan con una línea. Las clases de eventos pueden variar ligeramente dependiendo del tipo y la versión del servidor al que están conectados. Las clases de eventos se identifican en la columna de eventos de la cuadrícula y se agrupan por categorías de eventos. Las columnas restantes enumeran las columnas de datos que se pueden devolver para cada clase de eventos. Para habilitar los eventos en el rastreo, marque la casilla en la columna de eventos.

Defecto esta lista Contiene solo algunas categorías y tipos de eventos de acuerdo con la plantilla seleccionada (ver arriba). No todas las columnas también se muestran. Para más configuraciones detalladas Se recomienda poner las casillas de verificación "Mostrar todos los eventos" y "Mostrar todas las columnas".

Si se realiza el rastreo para rastrear las solicitudes producidas por la aplicación Lexema.RU, será suficiente para mencionar 3 tipos de eventos en 2 grupos:

  • Procedimientos almacenados (procedimientos almacenados)
    • RPC: terminado - se produce cuando se completa la llamada remota (RPC)
    • SP: terminado - se produce cuando se completa el procedimiento almacenado
  • TSQL - Seguimiento de la ejecución de las instrucciones TRANSACTSQL transmitidas por los clientes al servidor de la base de datos
    • SQL: BatchCompleted - Ocurre al ejecutar la ejecución de la instrucción TRANSACTSQL

Nota: La casilla de verificación en la columna Eventos puede estar en tres estados:

  • no hay checkbox - un evento no es rastreado
  • se instala una garrapata negra: se seleccionan todas las columnas de datos: todos los datos posibles se recopilarán para el evento seleccionado.
  • se instala una garrapata gris: solo se seleccionan algunas columnas de datos: solo se recopilarán algunos datos para el evento seleccionado de acuerdo con los sellos en columnas.

De forma predeterminada, no todas las columnas se seleccionan para algunos eventos (vale la pena una garrapata gris). Para seleccionar todas las columnas, debe eliminar la marca de verificación e instalarlo nuevamente. En este caso, las garrapatas se instalarán para todas las columnas de datos visibles.

A continuación se muestran otras categorías útiles y tipos de eventos:

  • Auditoría de seguridad.

Configuración de los parámetros de filtrado.

Los filtros limitan la acumulación de eventos en trace. Si el filtro no está instalado, entonces todos los eventos de las clases de eventos seleccionados se devuelven a la salida de trazado. La configuración del filtro de rastreo es opcional, pero el filtro minimiza los costos de los recursos durante el rastreo. Los filtros para las definiciones de rastreo se agregan en la pestaña "Selección de eventos" en el cuadro de diálogo "Propiedades de seguimiento" o "Propiedades de la plantilla de seguimiento".

Al rastrear los eventos que tienen lugar cuando se usa la interfaz web Lexema.ru con un usuario específico, es recomendable instalar el filtro "ApplicationName" parece<логин_пользователя>+ & 1, por ejemplo, "Petrovan & 1", donde Petrovan - usuario de usuario:

Con esta configuración del filtro, solo los eventos generados por el usuario especificado caerán en seguimiento.

Eventos de seguimiento

Supongamos que después de la configuración descrita anteriormente y lanzando rastreo, usuario con inicio de sesión " airat " Entra en el sistema y abre el registro de las categorías de ingresos y gastos del módulo de contabilidad de la vivienda, y luego abre uno de los documentos (como ejemplo):

Como resultado, se mostrará una lista de eventos en el trazado de perfiles de SQL Server:

Analizar una lista de eventos de rastreo se puede ver que una de las solicitudes más largas fue la siguiente:

eXEC SP_EXECUSTUSQL N. "Seleccione como, como, como, como, como, al igual que, como, como, como, como, como, como, como, como, como De ", n "@PrimaryKeyBoundary Bigint, @ topcount bigint", @ Primariokeyboundary \u003d , @ topcount \u003d null

A juzgar por el nombre del objeto (VTransactionCategory), esta es una solicitud para seleccionar una lista de categorías de transacciones. Tipo de este evento - RPC: completado (finalización de la ejecución del procedimiento remoto).

También en la lista puede ver eventos de tipo SQL: BatchCompleted:

Este es el resultado de la consulta (QuerySource) Lexema.RU.

Para buscar en el texto de las solicitudes seguidas en el rastreo, debe hacer clic en el botón "Encontrar una cadena" (con el icono binocular) en la barra de herramientas o haga clic en la combinación de teclas CTRL + F:

Luego, debe ingresar el texto deseado y seleccionar una columna de búsqueda (el texto de la consulta está contenido en la columna TEXTDATA). Después de hacer clic en el botón "Siguiente", el cursor se colocará en la cadena de eventos que contenga el texto deseado.

Para los datos de prueba y depuración, estas solicitudes se pueden re-realizar manualmente. Para hacer esto, debe copiar su texto, abra el estudio de administración de SQL Server, conéctese al servidor correspondiente, seleccione la base de datos, cree una consulta, inserte texto y ejecute.

El producto de software de SQL Server Profiler es un shell gráfico destinado a crear trazas y analizar los resultados de trazas. Los eventos se guardan en el archivo de seguimiento, que luego se pueden analizar o usar para reproducir ciertas secuencias de pasos para identificar los problemas que han surgido.

Para seguir los pasos que se ejecutan en este momentoDebe ejecutar MS SQL Profiler, crear una nueva pista y configurar el análisis de los indicadores:

En la pestaña General, debe especificar el nombre de la traza. Especifique dónde se guardará los datos de la ruta eliminada, al archivo y / o en la tabla de la base de datos.

De gran interés es la pestaña "Selección de eventos":

Esta página indica los eventos que deben ser monitoreados. En este ejemplo, especifique los datos que necesita para rastrear los planes de consulta.

Obtenga 267 tutoriales de video para 1C gratis:

De forma predeterminada, el rastreo pasa a través de todos los eventos específicos en todas las bases de datos. Para aplicar seleccionado a los datos obtenidos, debe hacer clic en el botón "Filtros de columna ...":

Por ejemplo, configure la selección por identificador. base de información (Puede encontrar la ID de base usando seleccione Solicitud Db_id (n'imyabase ')).

Rastreo en funcionamiento en Profiler para 1C

Después de que se realicen todas las configuraciones, queda por ejecutar el seguimiento, ya que debe hacer clic en "Ejecutar" (Ejecutar). A partir de ahora, todas las acciones especificadas en el filtro se remontan a partir de este punto.

Por ejemplo, inicie la pista para el momento del documento "Recibo de bienes y servicios" para rastrear los costos más laborales.

Después de obtener el rastreo, es necesario analizarlo.

Análisis de datos de Profiler

Para analizar la traza, puede guardar a un archivo o en la tabla. Guardaremos la tabla de la base de datos:

Una de mis herramientas favoritas es el perfilador de SQL Server, que a menudo se llama simplemente Profiler. Esta utilidad muestra datos en cualquier número de eventos de SQL Server detallados. Estos eventos del servidor se pueden ver en la ventana Propiedades de seguimiento (Fig. 49.3), así como escribir a un archivo o tabla para el análisis posterior. Para registrar todos los eventos o sus subconjuntos seleccionados, puede instalar filtros.

PUC. 49.2. EN este ejemplo El protocolo de contador registrará información.

acerca de rendimiento SQL Servidor en el catálogo con: \\ PERF Logs

SQL Server Profiler Utility se puede iniciar desde el menú Programas de herramientas Estudio de gestión o directamente de la carpeta SQL Server 2005 menu del sistema Comienzo. Para ver las acciones, debe definir un nuevo rastro, o usar el archivo existente.

¡Con la salida del paquete de actualización de PROFILER SP1 SQL Server, ha recibido la oportunidad! Rastreando grandes matrices de datos en computadoras grandes.

Además, antes, al monitorear el servicio de análisis, se mostró el tiempo en unidades de tiempo sincronizadas universales (UTC). Ahora usado local hora del sistema. Anteriormente, los eventos reproducidos con éxito se calcularon incorrectamente, como resultado, el usuario recibió estadísticas incorrectas. Este problema fue eliminado.

Definiendo un nuevo rastro

Cuando se crea una nueva traza (usando el archivo ^ el nuevo Menú de seguimiento, o usando la nueva barra de herramientas del botón de rastreo), también se crea una nueva conexión a SQL Server y se abre el cuadro de diálogo Propiedades de seguimiento (Fig. 49.4). En la pestaña General de esta ventana, el rastreo (en particular, el nombre, la ubicación del archivo, etc.) está configurado, y en la pestaña Selección de eventos, se definen los eventos, datos y filtros grabables. Si el rastreo se está ejecutando, estos parámetros se pueden ver, pero no cambiar. La configuración de seguimiento se puede guardar como una plantilla para facilitar la creación de nuevas huellas en el futuro.

Higo. 49.4. La pestaña Selección de eventos de las propiedades de seguimiento de Windows le permite seleccionar eventos Seguimiento de la utilidad del perfilador

El rastreo se puede ver en tiempo real, pero estos datos se pueden grabar simultáneamente a un archivo o tabla de sql Servidor. Esto es útil para un análisis inteligente posterior, comparaciones con los contadores de monitores de datos o para las importaciones en la utilidad del asesor de sintonización del motor de la base de datos.

Cuando las lecturas se escriben en un archivo, para aumentar la productividad, se combinan en una cadena de 128 kb; De manera similar, al grabar en la tabla, los datos se agrupan por varias líneas.

Para guardar los datos obtenidos por Profiler Program, para el análisis posterior, use un método de archivo de alto rendimiento, así como un trazado de servidor (lo hablaremos más adelante). Si desea analizar los datos usando las instrucciones de T-SQL, use exactamente el mismo enfoque, pero después de que se complete la sesión de rastreo, abra el archivo recibido en la utilidad del perfilador y seleccione el archivo ^ GUARDE AS ^ Comando en el menú.

Selección de eventos.

La pestaña Selección de eventos determina la composición de las acciones realizadas por el servidor de la base de datos que se registrará por la utilidad del perfilador. Al igual que un monitor de rendimiento, Profiler puede rastrear una variedad de eventos clave de SQL Server. Para simplificar la configuración de selección, puede usar las plantillas predeterminadas.

I SQL BATCH TEAD TEXT EVENT se basa en paquetes T-SQL

SVS en general (separados por terminadores de paquetes), y no instrucciones individuales.

| * Basado en esto, Profiler registra los datos de un solo evento, independiente

SIMO desde la longitud del paquete. Para registrar instrucciones individuales.

DML Use el evento completo de la declaración SQL.

No todos los eventos se pueden usar para jugar a rastro. Por ejemplo, se puede reproducir el evento SQL BATCH START, y el evento completo del lote SQL no lo es.

Dependiendo de los eventos para el rastreo, los datos diferentes están disponibles. A pesar del hecho de que la columna de datos de SPID parece opcional, esta impresión es engañosa: es obligatorio.

Eventos de filtrado

El programa Profiler puede recopilar para usted, una cantidad de información que puede completar fácilmente el parpadeo dispositivo de disco. Afortunadamente, el programa ofrecido por el programa (Fig. 49.5) le ayudará a limitar esta matriz solo por los datos que le interesan.

Higo. 49.6. La utilidad de SQL Server Profiler puede integrar los datos del monitor de rendimiento y sincronizarlos con eventos rastreados.

Usando SQL. Rastro

El programa SQL Profiler se usa normalmente de forma interactiva, y es suficiente para la recopilación de datos no permanente. Sin embargo, las huellas a largo plazo pueden acumular fácilmente cientos de miles de registros, lo que puede causar problemas bastante específicos en puesto de trabajocorrer rastreando. La solución se reduce a la creación de registro de seguimiento directamente en el servidor. Dicha rastreo causará una pequeña carga adicional en el servidor; Al mismo tiempo, los archivos serán grabados por bloques de 128 KB.

En sistemas industriales comprometidos al rastrear en el lado del servidor, los datos de registro en el archivo en el servidor son mejor manera Colección de información

sobre el rendimiento al minimizar la carga adicional en el servidor.

El rastreo que se ejecuta en el servidor se puede definir e implementar utilizando un conjunto de procedimientos almacenados del sistema. Código de programa Puede escribir independientemente o usar el programa de perfiles de SQL Server.

Cuando el rastreo está configurado y probado a SQL Server Profiler, seleccione el archivo ^ Exportar ^ Definición de rastreo ^ Para SQL Server 2005 en el menú para generar el script T-SQL capaz de rastrear en el lado del servidor.

Para averiguar qué trazas se ejecutan en el servidor, realice una solicitud para

SVS Presentación náónica de la gestión de sistemas de sistemas. Cuando miras a I * los resultados de esta solicitud, verá una traza adicional. El primer * número siempre tiene la llamada seguimiento predeterminado que recopila datos para los registros de SQL Server, es imposible detenerlo.

Para detener el rastreo del servidor, use el procedimiento almacenado del sistema SP_TRace_SetStatus. El primer argumento (trazeid) es un identificador de seguimiento, y el segundo determina la naturaleza de la acción. El valor cero del parámetro de la acción conduce a una parada de rastreo, uno a su lanzamiento, y una extracción de dos a fin. El siguiente código deja de rastrear con el número 2.

En esta conferencia, continuaremos estudiando los procedimientos almacenados que comenzaron en "Creación de procedimientos y gestión almacenados de estos procedimientos". Aprenderá cómo analizar los procedimientos almacenados y otras declaraciones de T-SQL utilizando el analizador de consultas de consultas de consultas SQL Server Microsoft Server y el perfil del perfilador SQL Server. Desde este análisis, puede determinar cómo son los operadores T-SQL efectivos. Una solicitud de SQL Server efectiva utiliza una secuencia adecuada de operaciones y índices adecuados para reducir la cantidad de fila procesada y minimizando el número de operaciones de E / S.

Uso del analizador de consultas, puede ver el plan de ejecución seleccionado para el operador T-SQL optimizador de solicitudes. Servidor SQL. Optimizador de consulta - Este es un módulo interno que está buscando. mejor plan Ejecuciones para cada operador T-SQL. Optimizador de consulta Analiza cada declaración T-SQL, analiza una serie de posibles planes de ejecución y evalúa el "costo" de cada plan desde el punto de vista de los recursos y el tiempo de procesamiento requeridos. El plan se selecciona con el costo más pequeño. El costo de cada plan se determina en función de las estadísticas existentes, que se recopila por el sistema y puede estar desactualizada. Como puede saber más sobre su base de datos y sus datos que optimizador de consultaEs posible que pueda crear un plan que sea mejor que el optimizador de consulta. Usando la información que proporciona el analizador de consulta, puede determinar si el plan optimizador de consulta será efectivo para cierto operadorY si no, entonces puedes intentar optimizar este operadorModificándolo o usando la punta de SQL. En esta conferencia, aprenderá cómo optimizar las declaraciones T-SQL, que será una adición al estudio del uso del analizador de consultas.

Usando Profiler, puede analizar las operaciones dentro de su sistema SQL Server para determinar qué SQL y los procedimientos almacenados se utilizan innecesarios recursos del sistema. Poseer esta información, puede enfocar sus esfuerzos de afinación principalmente a estos operadores y procedimientos almacenados. Además de la descripción de cómo usar Profiler, esta conferencia también muestra cómo usar la información obtenida con Profiler.

Usando SQL QUERY ANYSENZER

La utilidad del analizador de consultas viene con Microsoft SQL Server 2000 a cambio



¿Te gustó el artículo? Compártelo