sql >> Base de Datos >  >> RDS >> Database

VISTA PREVIA:Extensión SentryOne Plan Explorer para Azure Data Studio

Actualizado el 15 de agosto de 2019 para 0.9.6.

El año pasado, me reuní con uno de mis equipos de desarrollo aquí, se hacen llamar SQL Injectors, para hablar sobre la posibilidad de replicar la funcionalidad SentryOne Plan Explorer dentro de Azure Data Studio. Después de un poco de discusión, llevamos el concepto al equipo de liderazgo y pusimos en marcha un plan.

Hubo algunas complicaciones, como te puedes imaginar; Plan Explorer está escrito utilizando tecnologías de escritorio y ADS es un mundo completamente nuevo. Tuvimos que convertir todo nuestro código de .NET Framework a .NET Core, cambiar nuestro código de interfaz de usuario a Node y React, y volver a trabajar en toda la implementación del diagrama del plan. Guardaré toda la historia de fondo para otra publicación, porque sucedieron muchas cosas divertidas en el camino y obtuvimos mucha ayuda de algunas personas excelentes en Microsoft:Karl Burtram, Alan Yu, Alan Ren, Charles Gagnon y Vicky Harp, para nombrar unos pocos. Por ahora, quiero centrarme en cómo obtener la vista previa, qué contiene hasta ahora (incluidas algunas capturas de pantalla) y los problemas conocidos.

Cómo se obtiene

Para acceder a la extensión Plan Explorer, debe crear una cuenta gratuita de SentryOne Cloud y aceptar nuestro EULA. La cuenta le da acceso a nuestro foro de soporte, y podemos mantenerlo actualizado sobre los próximos lanzamientos y nuevas funciones. Una vez que haya creado su cuenta, vaya a extensions.sentryone.com, donde debería ver el siguiente enlace para descargar la extensión:

Esto le dará un archivo VSIX que deberá "cargar lateralmente" en Azure Data Studio (Microsoft no admite el alojamiento completo para extensiones de terceros en ADS Marketplace, como lo hacen con VS Code).

Primero, asegúrese de cumplir con nuestros requisitos:

  • Azure Data Studio 1.9.0 o posterior (publicación del anuncio de julio)
  • .NET Core Runtime 2.1 o posterior (Windows | macOS | Linux)
  • Conectarse a SQL Server 2012 o superior, o Azure SQL Database

Y configuración recomendada del sistema:

  • Dos o más núcleos
  • 8 GB o más de memoria
  • Sistemas operativos:
    • Windows (8.1/Server 2012 R2 o superior)
    • macOS (10.13 o superior)
    • RedHat (7.6 o superior)
    • SuSE (12.0 o superior)
    • Ubuntu (18.04 o superior)

Luego, para instalar la extensión:

  • Abra Azure Data Studio.
  • Seleccione Archivo> Instalar extensión desde el paquete VSIX . No puede hacer doble clic en el archivo VSIX.
  • Ubique el archivo SentryOne Plan Explorer VSIX que descargó y haga clic en Instalar .
  • A menos que lo haya descartado antes, tendrá que responder que sí a un aviso sobre cómo confiar en las extensiones de terceros:

    Si no tiene una versión lo suficientemente nueva de Azure Data Studio (o está usando una compilación de Insiders con cambios que aún no hemos probado), es posible que algunas funciones no funcionen como se esperaba.

    Si no tiene una versión lo suficientemente nueva de .NET Core Runtime (o no se está ejecutando), recibirá este mensaje de error después de que la instalación se realice correctamente:

Qué contiene

Al igual que la aplicación de escritorio, la extensión Plan Explorer está diseñada para brindarle planes de ejecución gráficos más completos para sus consultas en tiempo real contra SQL Server. Se basa en un subconjunto modesto de funcionalidad; comenzamos solo con el diagrama del plan, una cuadrícula de declaraciones básicas, información sobre herramientas y acceso al XML (para que pueda abrir el plan en otras herramientas). Agregaremos más funciones a la extensión con el tiempo para intentar acercarlo lo más posible a la paridad total con el cliente de escritorio.

Para habilitar o deshabilitar la extensión

  • Haga clic en el Explorador de planes SentryOne elemento en la barra de estado:

  • O presione Mayús+Ctrl /⌘+P y busque Toggle SentryOne Plan Explorer :

  • O presione Mayús+Ctrl /⌘+F5 .

Para recopilar un plan de ejecución

  • Asegúrese de que la extensión esté habilitada.
  • En una nueva ventana de consulta, establezca una conexión con un servidor y escriba o pegue una consulta.
  • Para un estimado plan, use el Explicar en la barra de herramientas.
  • Para un real plan, use Ctrl /⌘+M .
  • Se abrirá un nuevo documento de nivel superior (titulado Plan Explorer ) que incluye una cuadrícula de declaraciones, una fila para cada declaración de generación de planes:

      Cuadrícula de declaraciones

    • Para ver el XML del plan subyacente, haga clic en Ver XML .
    • Para ver el diagrama del plan de cualquier declaración, haga clic en Ver plan .
    • Diagrama del plan con tema claro predeterminado

      Diagrama del plano con el tema Solarized Dark

    • Para ver la información sobre herramientas resumida de un operador, coloque el cursor sobre el operador. Para la versión ampliada, que incluye más información y se "pega" al lado derecho del panel, haga clic en el operador:
    • Información sobre herramientas condensada y ampliada

    • Para cambiar cualquiera de las propiedades del diagrama, como el nivel de zoom, alternar entre planes reales y estimados, mostrar costos solo por E/S o CPU, o cambiar los anchos de línea para que se representen por número de filas o tamaño de datos, haga clic derecho haga clic en cualquier parte del diagrama:
    • Menú contextual de opciones de diagrama

    • Cuando hay una recomendación de índice faltante, aparecerá una advertencia en la información sobre herramientas para el operador del nodo raíz, y una opción de menú contextual del botón derecho estará disponible en cualquier parte del diagrama (que abrirá la secuencia de comandos de índice(s) faltante(s) en una nueva ventana de consulta de nivel superior desconectada):

      Falta advertencia de información sobre herramientas de índice y opción de menú contextual

      Falta secuencia de comandos de índice

Nuevo en 0.9.6 – 15 de agosto de 2019

  • Opción de menú contextual agregada para cambiar el ancho de línea entre el número de filas y el tamaño de los datos
  • Opción de menú contextual agregada para mostrar las recomendaciones de índice que faltan en una nueva ventana de consulta
  • Puerto API predeterminado cambiado de 5000 a 5042 para reducir la posibilidad de conflicto
  • Se agregó una configuración para personalizar el número de puerto local en caso de conflicto:

  • Se movió el interruptor de activación/desactivación de la extensión a la barra de estado (¡gracias por la sugerencia, Drew Skwiers-Koballa!)
  • Diagnósticos adicionales en el panel Salida para ayudar a solucionar problemas:

  • Se actualizaron varios íconos de operadores (antiguo a la izquierda, nuevo a la derecha):Afirmar

    Eliminación de índice agrupado

    Combinación de índices agrupados

    Actualización de índice agrupado

    ColumnstoreIndexDelete

    Borrar

    EliminadoEscanear

    FetchQuery

    ForeignKeyRefCheck

    ÍndiceBorrar

    Actualización de índice

    InsertadoEscanear

    Búsqueda de clave

    Consulta de población

    Eliminación remota

    Consulta remota

    RIDBuscar

    Secuencia

    Cambiar

    Agregado de ventana

    Tenga en cuenta que los cambios en el icono de búsqueda de clave y RID ya ocurrieron en Plan Explorer 19.0.1 (explicación aquí); el resto de estos cambios aparecerán pronto en Plan Explorer.

Problemas conocidos

  • Cuando la extensión Plan Explorer está habilitada, también experimentará el Explain nativo funcionalidad proporcionada por Azure Data Studio (Dave Bland explica esa funcionalidad aquí).
  • Para los planes reales, las únicas métricas de tiempo de ejecución disponibles en las cuadrículas son Duración y CPU (con una versión lo suficientemente moderna de SQL Server). Otros datos aparecerán en versiones futuras, comenzando con Lecturas y Costo %.
  • Azure Data Studio actualmente trunca la salida XML del plan en 2 MB (consulte el problema n.º 6299). Entonces, para planes más grandes y/o lotes más grandes, es posible que no podamos mostrar todos los planes. Esto es más probable que suceda cuando se usa Explicar para generar planes estimados (así que diga no a los planes estimados ).
  • No tenemos acceso al menú Archivo, por lo que no podemos abrir ni guardar planes, y solo podemos abrir una única ventana de documento llamada Explorador de planes – lo que significa que, al menos por ahora, solo puede mostrar un diagrama de planta a la vez.
  • Índices faltantes , opciones de ancho de línea , y la funcionalidad de contracción del subárbol no están disponibles en la vista previa. Tampoco hay opciones de diseño, pero puede hacer zoom con la rueda del mouse o pellizcar el panel táctil, y puede desplazarse con el deslizamiento del panel táctil con dos dedos.
  • Cuando Azure Data Studio se abre con documentos recuperados de una sesión anterior, es posible que la habilitación de la extensión Plan Explorer no se aplique a esas ventanas, debido a un problema que enumera los documentos en ese estado. Hasta que Microsoft publique una solución, desactivar y volver a activar Plan Explorer debería funcionar.
  • La compatibilidad con temas es experimental en este momento:
    • No todos los colores de fondo se verán hermosos, y todos los enlaces son azules sin importar qué.
    • Se están trabajando iconos alternativos diseñados para temas oscuros.
    • Si cambia el tema de color después de renderizar un plano, actualmente no podemos capturar el evento. Interactúe con el diagrama (p. ej., haga clic con el botón derecho) para forzarlo a "ponerse al día".

Obtener más información; proporcionar comentarios

  • Página del producto
  • Documentación oficial del producto
  • Foro SentryOne Plan Explorer/Query Tuning
  • Anuncio de lanzamiento de julio del equipo de Azure Data Studio
  • Siempre me complace responder preguntas o recibir comentarios en [email protected]