Hogar Bases de datos Juego de rendimiento: diga adiós a la latencia

Juego de rendimiento: diga adiós a la latencia

Tabla de contenido:

Anonim

Por el personal de Techopedia, 9 de mayo de 2016

Para llevar: el presentador Eric Kavanagh entrevista a Mark Madsen, Dez Blanchfield y Bullett Manale sobre la latencia y el rendimiento.

Actualmente no has iniciado sesión. Inicia sesión o regístrate para ver el video.

Socio de contenido de Techopedia

El personal de Techopedia está afiliado a Bloor Group y puede contactarse usando las opciones a la derecha. Para obtener información sobre cómo trabajamos con socios de la industria, haga clic aquí.
  • Perfil
  • Sitio web

Eric Kavanagh: Damas y caballeros, ¡hola y bienvenidos nuevamente a Hot Technologies! Si, de hecho! Mi nombre es Eric Kavanagh, este es nuestro programa Hot Tech, una asociación con nuestros buenos amigos de Techopedia. Vaya en línea a Techopedia.com para obtener lo último en el amplio campo de la tecnología empresarial; ellos, por supuesto, también cubren cosas del consumidor. Nos centramos en la empresa aquí en nuestro programa, así que eso es lo que haremos hoy.

Hay un lugar sobre el tuyo verdaderamente y suficiente sobre mí, contáctame en Twitter @eric_kavanagh, me encanta el Twitter, me encanta ver esas cosas, es una excelente manera de mantenerte en contacto con la gente y tener buenas conversaciones, y uno a uno -una conversación

¿De qué estamos hablando? Este año es caluroso, este es todo un universo de oportunidades que vemos hoy en el mundo de la gestión de la información, y de lo que estamos hablando hoy serán consultas, acelerará las consultas.

Creo que olvidé mencionar el título, "Juego de rendimiento: decir adiós a la latencia". Bueno, ¿quién quiere latencia? Nadie quiere latencia, la latencia es cuando te sientas allí, haces clic en el botón y esperas a que suceda algo, y nadie quiere eso. A los niños no les gusta, no creen que sea genial, a los adultos tampoco les gusta. Todos hemos sido mimados por la velocidad de la web, y queremos cosas rápidamente, queremos cosas ahora, y vamos a hablar de eso hoy en nuestro programa.

El analista Mark Madsen nos acompaña hoy de Third Nature, uno de nuestros clientes habituales. Nuestro nuevo científico de datos, Dez Blanchfield, llamando desde Sydney, Australia. Y luego Bullett Manale, sí, ese es su nombre, en realidad se supone que son dos T's. Bullett Manale es nuestro invitado de Idera, una empresa muy, muy interesante, que hace muchas cosas. Ya sé sobre ellos, uno de los cuales compró una compañía llamada Precise hace un tiempo. Conocía a su CEO llamado Zohar Gilad, ¿cómo es eso para un nombre? Era un tipo muy inteligente.

Pero amigos, ustedes juegan un papel importante en este webcast en las preguntas que hacen, así que no sean tímidos, envíen sus preguntas en cualquier momento; podrían hacerlo usando el componente de preguntas y respuestas de la consola de webcast, eso está ahí abajo en el fondo en la esquina derecha. También puedes chatear conmigo y lo haré con los altavoces. Ya tenemos a alguien llamando desde Italia, así que, “Ciao, chao. ¿Venga, stai? Muy bien, con eso voy a empujar la primera línea de Mark, voy a pasarle la baraja a Mark. Mark, ahora tienes el WebEx. Llévatelo, el piso es tuyo.

Mark Madsen: Gracias Eric. Sin embargo, no voy a comenzar en el medio, comenzaré por el principio. Tan solo unos pocos comentarios para establecer la discusión con Dez e Idera, una especie de estado del estado con desarrollo, y bases de datos y operaciones. Y sabes, si miras esto, todavía tenemos este tipo de problemas de dos mundos en el mercado de bases de datos y aplicaciones, porque los desarrolladores ven a los DBA como las personas que los molestan. Tienes que construir modelos de datos, no puedes tener acceso a eso, no puedes crear esa cosa, no puedes poner un índice en cada columna de cada tabla en la base de datos para hacerlo más rápido. Y, por supuesto, ¿por qué necesitamos los modelos? Son solo estructuras de datos, si las cambiamos, ¿no puede simplemente escribirlas en forma serializada?

El problema es que los desarrolladores conocen el código y las aplicaciones, pero dos cosas que a menudo no saben, son la concurrencia, la programación concurrente y las bases de datos y los sistemas operativos subyacentes. Habiendo sido un desarrollador de kernel y sistemas operativos y bases de datos, puedo decir que la concurrencia y el paralelismo son realmente difíciles, por lo que muchas de las cosas que aprendes para obtener un buen rendimiento de tu código, realmente comienzan a desmoronarse cuando estás trabajando con una base de datos. Y el rendimiento se ve muy bien, el entorno de prueba se ve muy bien, y el entorno de preguntas y respuestas, y luego golpea el sistema real, y de repente no es tan bueno. Debido a que es multifacético, cómo funciona el código con la base de datos, cómo funciona con el entorno y las prácticas realmente simples pueden tener efectos drásticos dependiendo de la escala que esté ejecutando.

Y cuando comienzas a hablar de aplicaciones externas, por supuesto, las aplicaciones externas, las aplicaciones web pueden ser realmente difíciles porque las cosas son geniales hasta que de repente se aplacan y no lo son. Llegará a estas mesetas interesantes que requieren muchos matices para comprender.

La otra cara de las cosas es la vista DBA. El punto de vista del DBA es que hay operaciones, pasan la mayor parte de su tiempo, del 80 al 90 por ciento, en operaciones, y tal vez del 10 al 20 por ciento lidiando con las cosas de desarrollo que están ocurriendo por adelantado. Desde esta perspectiva, paga ahora o paga más tarde, y si pasa todo su tiempo por adelantado, tendrá una oportunidad mucho mejor más adelante, en comparación con el desarrollo que tiende a explorar una característica espacio, y tratando de descubrir la mejor manera de hacer las cosas. Y entonces tenemos problemas, y ahora tenemos metodologías que son incompatibles: implementación continua, despliegue de sus aplicaciones siempre que estén listas, empuje de código periódicamente, trabaje en una tienda que está practicando operaciones de desarrollo. Este tipo de cosas acelera el desarrollo, pero todas las prácticas en torno a la base de datos y lo que hacen los DBA y para qué se han capacitado los administradores de sistemas, las prácticas de operaciones de TI no han seguido el ritmo.

Si lo piensa, la mayoría de los DBA operan bajo un entorno de control de cambios frente a un entorno de implementación continua. Se trata de estabilidad y control, versus velocidad de cambio y reversibilidad. Implementación continua, si no puede retroceder el cambio, está en problemas, por lo que todo tiene que ser construido para ser fácilmente reversible y conmutable por código, que no es la forma en que la base de datos relacional, las prácticas de desarrollo y las prácticas de administración han funcionado. .

También se encuentra con estos problemas de tener que ser más proactivo si puede, como DBA, porque para cuando se entera de un problema, cientos de miles de personas están completando formularios de queja en su sitio web. Eso te hace necesitar algunas cosas nuevas que no sacas de tu antiguo entorno. Ya sabes, cosas como un mejor monitoreo y alertas. Al mismo tiempo, las bases de datos se han multiplicado, tenemos más aplicaciones que nunca para admitir más cosas que nunca, están dentro, están afuera, están por todas partes. Y más conjuntos independientes de datos para análisis, las personas están iniciando bases de datos porque, por supuesto, ahora es fácil, puedes configurar una máquina virtual. Si tiene un proveedor de la nube o una nube interna, puede abrir inmediatamente las cosas, y esto cambia su ruta de adquisición completa.

La antigua ruta de adquisición era: "Tengo tiempo para obtener un servidor, colocarlo en un estante, asignar espacio, obtener almacenamiento, instalar la base de datos y hacer cosas", frente a que alguien deslice una tarjeta de crédito y se vaya en cinco minutos. Si hace eso, ese entorno de desarrollo moderno está funcionando a un ritmo muy diferente, por lo que es fácil crear bases de datos, y eso solo crea este problema de proliferación, como nada que hayamos visto antes. Y esto ha estado sucediendo durante diez años, esto no es una novedad para nadie, pero también significa que los entornos operativos han crecido en complejidad.

Todo el entorno del servidor cliente realmente ha cambiado, porque ya no es un mundo de servidores cliente. En aquel entonces tenía un servidor, tenía una base de datos, si algo estaba mal, sabía a qué servidor ir, sabía cómo administrar los recursos en él porque la mejor práctica era una base de datos, un servidor. La virtualización comenzó a romper eso, la nube lo rompe aún más, porque lo que crees que es un servidor de base de datos, es solo software. Entonces el ambiente no es real. Es lo que contiene el entorno que es la realidad, y eso podría ser un estante de cuchillas o un gran servidor tallado en pedazos, realmente no lo sabes.

Todo lo relacionado con la administración de la base de datos y la gestión del rendimiento, y qué bases de datos se han creado en torno a un control estricto con un servidor, o un puñado de servidores y un par de bases de datos, no puede controlar todo. Estás sentado en una máquina, pero los administradores virtuales no pueden dividir fácilmente el ancho de banda, por lo que todo puede estar bien con la memoria y la CPU, pero tienes un cuello de botella en algún recurso que no se puede tratar, y luego cuando intente solucionarlo, el modelo anterior hubiera estado trabajando duro, obteniendo un servidor más grande y haciendo algo así, ahora podría ser realmente simple, solo agregue un curso virtual, solo agregue memoria a la VM y está resuelto. Pero, ¿qué sucede si su VM está en un servidor superpoblado y necesita migrar? ¿O qué sucede si tiene el tamaño de un sistema AWS y se ha alcanzado el tamaño máximo, ahora a dónde va?

Entonces, tiene todos estos problemas en los que el entorno es parte de la base de datos ahora, empaqueta un entorno con una base de datos, todos los recursos especiales, todo en la aplicación es parte de la configuración, la configuración se implementa allí. Esto es del entorno de la base de datos, es mucho más difícil de administrar y controlar.

Si observa lo que han estado haciendo los centros de bases de datos, han estado sentados en sus manos, ¿verdad? Nos hemos alejado de esta idea de tratar las bases de datos y los servidores como mascotas. Los servidores tienen nombres, los tratas como si fueran cosas únicas e individuales, los tratas como ganado, está manejando un rebaño. Y el problema con el manejo de los rebaños es que si no los controlas, eventualmente pueden precipitarse, y una estampida no es algo bueno. Necesitamos mejores herramientas de monitoreo, necesitamos mejores formas de lidiar con estas cosas y saber qué se ha visto afectado. En el modelo anterior era más fácil porque sus operaciones y todos sus sistemas de control le decían, pero cuando el nombre de su servidor es un código UPC, es un poco difícil de resolver.

No puede permitirse el lujo de alertas falsas, no puede permitirse cosas que dicen: "Hay un problema con esta máquina, y esa máquina aloja 30 bases de datos". No puede permitirse que las cosas no le den historial. Las consolas de monitoreo son geniales cuando se encienden, pero si la luz roja se vuelve verde nuevamente y no sabes por qué, y no tienes ningún historial para volver a mirar qué fue lo que condujo a eso, y qué contexto fue, estás en problemas. Necesitamos sistemas que nos monitoreen, necesitamos un mejor monitoreo, que aborde los problemas cursivos intermitentes que mantienen ese historial de datos.

Cosas mejores y umbrales de métricas simples que nos dan métricas clave, pero no nos guían directamente a lo que es normal, lo que es anormal y con qué frecuencia ocurren estos problemas. De lo que realmente estamos hablando es de una combinación del entorno de monitoreo y del rendimiento, y los proveedores han estado en sus manos. No nos han dado mejores herramientas. Tenemos sistemas con más CPU y memoria de la que sabemos qué hacer con todo, y aún así confiamos en modelos de intervención manual, no hemos puesto la máquina a trabajar, para guiarnos, para llevarnos al punto de problemas., no hemos llegado a este nuevo estilo que es: "Hay un problema aquí, puedes hacer esto para solucionarlo" o "Hay un problema de rendimiento, en realidad es con esta declaración SQL específica, aquí hay tres cosas que podrías úselo para corregir esa declaración SQL ”. Aplicando heurística, aplicando modelos de aprendizaje automático que pueden observar los patrones de uso de su sistema para detectar problemas y evitar falsas alertas. Usar la máquina para hacer lo que mejor hace la máquina, aumentar el DBA o aumentar la persona que tiene que lidiar con problemas de rendimiento.

Esa es la nueva forma, a diferencia del viejo estilo. Hay un problema con esta base de datos, las cosas son lentas y, por lo tanto, tenemos nuevas técnicas, nuevas formas de hacerlo, y deberíamos aplicarlas, y ahí es donde se dirige el mercado. Está viendo que comienza a surgir, no con los grandes proveedores, sino con compañías de terceros, y esto refleja algo que sucedió hace 20 años cuando los proveedores de la base de datos no proporcionaron nada para ayudar a administrar los sistemas. Así que esa es la dirección del mercado, y con eso, me gustaría volver a Eric.

Eric Kavanagh: Muy bien, se lo voy a entregar a Dez. Y Dez, llévatelo, el piso es tuyo.

Dez Blanchfield: Gracias, Mark. Has hecho un trabajo fantástico al cubrir el componente técnico del mismo. Voy a abordarlo desde un ángulo ligeramente diferente para resaltar lo que sucedió en el resto del mundo, en lo que respecta al impacto en las empresas y las bases de datos a su alrededor. Déjame saltar a mi primer tobogán.

En la parte posterior de lo que acaba de cubrir desde el lado técnico de las cosas y el lado del desarrollador, veo que las empresas tienen que enfrentar el desafío de los datos y las bases de datos en particular, y obviamente hemos tenido este cambio significativo hacia Este concepto de big data, pero las bases de datos siguen siendo el corazón y el alma de donde las organizaciones retienen su información comercial, y es desde la puerta principal hasta la oficina administrativa. Cada parte de la organización es tocada por una base de datos de algún tipo, y es impulsada por una base de datos, y muy raramente entro en discusiones de proyectos o alguna forma de conversación estratégica innovadora en una organización donde el tema de la base de datos o el sistema de base de datos no surge, y siempre hay preguntas sobre los tipos de cosas que acabamos de escuchar, sobre el rendimiento y la seguridad y cómo el desarrollo llega a abordar este desafío, y dónde encajan las bases de datos, y si conocemos los entornos y las aplicaciones con qué entornos hablan, ¿qué pasa con los dispositivos y la movilidad?

Sigue siendo un tema muy, muy candente, y ha sido uno durante mucho, mucho tiempo en el gran esquema de cosas en lo que respecta a la tecnología moderna. Hasta ese punto, creo que es un hecho que casi todo lo que hacemos en nuestra vida cotidiana, es decir, en nuestra vida cotidiana, ahora está siendo respaldado por alguna forma de base de datos. Cuando pensamos en todas las cosas que nos rodean, ya sea una factura que se envía por correo todos los días por algún servicio que estamos comprando, inevitablemente la imprime un sistema que está hablando con una base de datos, y estamos allí. Nuestros teléfonos tienen bases de datos con los contactos y registros de llamadas, y otras cosas.

Dondequiera que vayamos, hay alguna forma de base de datos detrás de la charla y los sistemas que estamos usando, y la mayoría de las veces, son bastante transparentes para nosotros, pero el hecho es que están allí. Así que pensé en cubrir rápidamente por qué esto se ha convertido en un problema en un período de tiempo muy corto. Al principio, el concepto de base de datos vino de este encantador caballero, Edgar Codd. Mientras trabajaba en IBM, cambió el mundo en lo que respecta a la gestión de datos creando un concepto al que nos referimos ahora como una base de datos relacional.

Al principio, la base de datos era una base de datos y la vida era buena, era bastante sencillo tanto en columnas como en referencias, etc., y tablas, y el desarrollo de software era bastante sencillo, y el rendimiento no era realmente un problema tan grande. Era una nueva tecnología emocionante. Accedimos a las bases de datos a través de algún tipo de terminal, y solo se pueden crear tantos estragos al final de un terminal 3270 en un mainframe, e invariablemente aparecieron otros tipos de terminales, esos otros sistemas. Y en la mayoría de los casos, los terminales de estilo antiguo eran muy similares a los entornos web actuales, y es que rellenaría un formulario en la pantalla del terminal y presionaría Enter y fuera, iría. disparar como un paquete, como una solicitud, y el sistema de fondo se ocuparía de ello. Eso es esencialmente lo que sucede en un navegador web en estos días, cuando escribes un enlace en un navegador web y ese formulario generalmente no regresa en tiempo real al sistema, aunque con AJAX en estos días, eso no es del todo caso.

Pero luego sucedió algo, llegó el futuro, y más recientemente Internet, y casi ayer, en un segundo web 2.0, y a la vuelta de la esquina tenemos el Internet de las cosas. Y en el proceso del futuro, el mundo de la base de datos acaba de explotar, y las interacciones con las bases de datos se convirtieron en algo que todos hicimos por defecto, no era un caso que irías a algún lado para hacer algo, como comprar un boleto para un avión, y desea viajar al otro lado del planeta, alguien tuvo que escribir en la terminal todos sus datos e ingresar a una base de datos e imprimir un boleto.

Casi todo lo que hacemos ahora, ya sea llamar a un taxi en Google con una aplicación, ya sea saltar a la banca por Internet, todo lo que hacemos día a día, con algún tipo de sistema, funciona con una base de datos. Y cuando apareció Internet, fue un poco más fácil de brindarnos, nuestra vida cotidiana a través de un navegador web, y luego apareció la web 2.0 y las cosas se volvieron móviles, y la escala de las cosas simplemente explotó. De hecho, mi línea favorita en este tema es que, "Internet lo conectó todo, la web 2.0 lo hizo móvil y social, y las cosas se volvieron muy, muy grandes y ahora tenemos Internet y cosas y, ¡IoT … ¡Ay!" Ni siquiera hemos comenzado a imaginar el impacto de Internet de las cosas cuando se trata del mundo en los sistemas de bases de datos.

Entonces, en términos modernos, lo que solíamos pensar como un terminal se ha convertido efectivamente en estas cosas, son los teléfonos móviles, son varios tipos de tabletas, ya sean tabletas personales de gran tamaño para consumidores o empresas, son computadoras portátiles y es el escritorio tradicional de alguna forma En esa imagen, puede ver casi todas las formas de interfaz que ahora estamos usando para hablar con los sistemas de bases de datos y las aplicaciones que funcionan con ellos, desde los pequeños dispositivos en nuestras manos que caminan y parece que estamos pegados, todo el camino a las versiones un poco más grandes, y iPads, y otras tabletas y superficies de Microsoft, a las computadoras portátiles de todos los días, que siempre son el caso en entornos profesionales, etc. Las personas tienden a tener una computadora portátil y no una computadora de escritorio fija, pero desde mi punto de vista son la terminal moderna y son parte de la razón por la cual las bases de datos están experimentando todo tipo de desafíos en la parte del desempeño de la gestión de nuestras vidas, y no solo en el desarrollo.

Por lo tanto, supongo que es uno de los mayores desafíos que las empresas aún enfrentan a diario. Todos pensaban que las bases de datos eran nuestros únicos problemas, no lo son. Entonces, ¿por qué tanto alboroto? Bueno, cuando pasamos de un extremo a otro con todo lo relacionado con las bases de datos, desde un sentido comercial, y Mark cubrió los componentes técnicos muy, muy bien, pero en el sentido comercial, como organización, pensamos en las bases de datos. Estamos lidiando con cosas desde el diseño básico y el front-end de desarrollo. Cuando comienza un negocio, pensarán en desarrollar aplicaciones, desarrollar una capacidad o incluso implementar una aplicación existente de alguna forma. Se debe realizar alguna forma de diseño y desarrollo y se debe pensar mucho en cómo se implementarán, respaldarán y administrarán estos sistemas de bases de datos, y se rastreará el rendimiento, etc.

La integración del entorno de la base de datos y las aplicaciones, y los tipos de API, los tipos de acceso que se proporcionan ahora son cada vez más desafiantes, más complejos. Administración diaria, soporte y copias de seguridad, nuevamente, estas son cosas que pensamos que se resolvieron, pero de repente la escala se hizo mucho más grande, y las cosas se movieron más rápido, y el volumen es mucho más grande; Debido al tamaño de los entornos, los sistemas de bases de datos tenían que soportar la velocidad a la que se movían las transacciones.

Piense en una base de datos en un entorno comercial de muy, muy alta frecuencia, simplemente no hay forma de que los humanos puedan seguir el rastro, es solo un grupo de máquinas que luchan contra otro grupo de máquinas para realizar operaciones, compras y ventas de alta frecuencia, y el volumen en que esas transacciones suceden. Piense en un escenario moderno, como un lanzamiento temprano de una película de Netflix donde no se habla de solo cientos o miles, o incluso cientos de miles, potencialmente millones de personas que desean ver esa película desde el momento en que se lanza. Toda esa información se captura, rastrea, registra y analiza en una plataforma de base de datos.

Y luego está el mundo siempre en el que vivimos ahora, 24/7, no solo sigue al Sol, sino que siempre hay alguien despierto a la medianoche que quiere hacer algo, y el horario comercial sigue al Sol en todo el mundo. Por lo tanto, el tiempo de actividad y la disponibilidad son, por defecto, un clima ahora, tener una interrupción realmente no es algo aceptable. Y redundancia, si hay un problema de rendimiento o si necesitamos una ventana de mantenimiento para hacer una actualización o un parche, o una seguridad, realmente, debemos poder cortar de un entorno de base de datos a otro y hacerlo de manera transparente y automática.

Seguridad y estándares y cumplimiento, hemos tenido algunas cosas bastante importantes que suceden en el mundo de los últimos tiempos, GFC en particular, por lo que tenemos una amplia gama de nuevos desafíos que cumplir en torno al cumplimiento, la seguridad y los estándares coincidentes, y necesitamos para poder informar sobre ellos en tiempo real, e idealmente en forma de panel de control. No queremos enviar un equipo de monos a un centro de datos tratando de encontrar cosas, necesitamos que el sistema nos lo diga de inmediato, en tiempo real.

Y los dos grandes y divertidos de los que casi nadie habla, generalmente los empujamos debajo de la alfombra y esperamos que nunca levanten la cabeza fea, sino la recuperación ante desastres y la continuidad del negocio: estas son cosas que también deberían, por En su mayor parte, suceda automáticamente, si surge la necesidad.

Podríamos pasar días hablando sobre los tipos de cosas que pueden salir mal en entornos de bases de datos, y que los humanos generalmente han respondido, pero ahora necesitamos sistemas y herramientas para hacer eso por nosotros. Un ejemplo es una violación de datos y, por lo tanto, cuando pensamos en las bases de datos, y hago esta pregunta abiertamente en varias formas: ¿qué sucede con las bases de datos cuando quitamos los ojos de la pelota y algo crítico sale mal? Particularmente si no hay un sistema que observe el rendimiento y la seguridad y otros aspectos importantes de la ejecución de bases de datos.

Bueno, lo que podría suceder es esto, esta es una captura de pantalla de algunas de las brechas recientes en los últimos dos o tres años. Invariablemente, todos estos provienen de un sistema de base de datos, e invariablemente, ha habido algún problema de seguridad o control, o acceso, y en la esquina superior izquierda estamos viendo 152 millones de cuentas de Adobe, donde cada detalle de esos clientes fue violado. Y si fuera el caso de las herramientas apropiadas que podrían haber estado en su lugar para rastrear y capturar el incidente y controlar la seguridad, podríamos haber evitado algunos de ellos, los primeros doscientos registros robados podrían habernos alertado, y habríamos paró los siguientes ciento cincuenta millones.

Luego llegamos al punto clave de todo este viaje, que nos llevó, es decir: ¿por qué necesitamos mejores sistemas? ¿Por qué no podemos simplemente arrojar más cuerpos a esta cosa, que hemos cruzado bien y realmente el punto de inflexión en mi opinión, y ciertamente creo que hay un caso que ha sido evidencia reciente, que arroja más DBA, administradores y más personas en Esto no soluciona el problema. Necesitamos un mejor conjunto de herramientas y un mejor conjunto de sistemas.

Estas son mis cinco razones principales por las que creo que respaldan esto, y están clasificadas en orden de importancia, según lo que estoy viendo en estas empresas privadas y estados que son entornos gobernados, los desafíos que enfrentan con entornos de bases de datos, y gestionarlos.

Seguridad y cumplimiento: número uno. Ya sabes, controlar quién tiene acceso, dónde tienen acceso, cuándo tienen acceso, con qué frecuencia tienen acceso, desde dónde lo han accedido. Potencialmente, los dispositivos que realmente han tocado y los tipos de cosas que han visto, y el cumplimiento que eso implica. Hacer que los seres humanos ejecuten informes 30 días después para decirnos si las cosas están bien, ya no es apropiado, tiene que suceder en tiempo real.

Rendimiento y monitoreo: parece obvio, pero invariablemente no lo es. Ya sea que usemos herramientas de código abierto o algunas herramientas comerciales de terceros, invariablemente no nos hemos perdido el barco, en muchos sentidos, con los tipos de monitoreo de rendimiento que se requieren y los detalles que, y la capacidad de responder a tiempo .

Detección y respuesta a incidentes: tiene que ser algo instantáneo en tiempo real, e invariablemente necesitamos un sistema que lo haga por nosotros, o al menos nos avise rápidamente para que podamos solucionarlo, de modo que se solucionen los pocos problemas que surgen. con rapidez, y no caigas fuera de control.

Administración y administración: nuevamente, creemos que estos problemas están resueltos, no lo están. El objetivo de los problemas que enfrentan los equipos de bases de datos, en particular los DBA, donde un sistema debería ocuparse de las cosas por nosotros, aún no hemos resuelto ese problema, todavía es algo real.

Y desde el principio con el diseño y el desarrollo, cuando comenzamos a construir estas herramientas, construimos los entornos de la base de datos, podemos lanzar las herramientas apropiadas para el desarrollo y las pruebas, y las plataformas de integración. Todavía no es algo fácil para nosotros, y todo este viaje, nos lleva al mismo mensaje, que en mi opinión necesitamos mejores sistemas y mejores herramientas para ayudarnos a entregar los resultados que necesitamos. nuestro entorno de base de datos, por lo que las empresas que generan valor a nuestros clientes. No podemos seguir lanzando más cuerpos y más DBA, la escala es demasiado grande, la velocidad es demasiado rápida y el volumen es demasiado alto. Con eso, Eric, podría devolverte el mensaje.

Eric Kavanagh: Me encanta, tenemos mucho terreno cubierto, mucha gente potencial, y seguimos adelante y le entregamos las llaves a Bullett en solo un segundo.

Bullett Manale: Muy bien.

Eric Kavanagh: Oh, llevémoslo y Bullett, ahora te lo estoy entregando, y el piso es tuyo.

Bullett Manale: Muy bien, gracias. Creo que se han hecho muchos puntos buenos. Solo quería hablar rápidamente por un segundo sobre Idera, quiénes somos, y luego saltaremos. Voy a hablar sobre la herramienta de la que creo que estamos hablando de muchas de estas cosas, podemos tipo de conjunto y tipo de discusión sobre algunas de las áreas donde se alinean, con esta herramienta, el producto de Diagnostic Manager.

Ahora, lo que quiero hacer primero es darles un poco de antecedentes sobre quién es Idera; hemos existido desde aproximadamente 2003, por lo que comenzamos con solo herramientas de SQL Server, y eso es en lo que nos vamos a centrar hoy es en el producto Diagnostic Manager. Pero puede ver todos los cubos de cosas que tenemos aquí, y recientemente, como se mencionó anteriormente, adquirimos Precise y, mediante la adquisición, también tenemos Embarcadero, por lo que tenemos una cartera de productos bastante buena.

En términos de supervisión del rendimiento, en términos de SQL Server, el producto del que quiero hablar, que alinea estos temas que estamos discutiendo, es el Administrador de diagnósticos. Ahora, este es un producto que existe desde muy cerca del comienzo de los días de Idera, y he tenido la suerte de ser parte de eso desde aproximadamente 2005. Y he visto muchos de los cambios en términos de SQL Server, los cambios de lo físico a lo virtual, todo ese tipo de cosas que sucedieron, y también las necesidades de los DBA a medida que crecen los entornos y ese tipo de cosas.

Con lo que comencé fue que el usuario típico de nuestro producto es el DBA, por lo que cuando hablamos con personas por primera vez, clientes potenciales, estamos hablando principalmente de los DBA. No estamos hablando con los gerentes de TI o los directores, en algún momento puede llegar a ese nivel, pero el inicio inicial es que el DBA tiene un problema, el DBA intenta solucionar el problema, y ​​muchas veces nosotros Iré a descargar y probar el producto como parte de eso. Usted obtiene el administrador de datos o el DBA o el DBA en funciones, el tipo que tiene la suerte de ser el más técnico en la sala, en algunos casos. Ahora, cuando llegue a los entornos empresariales más grandes, obviamente, obtendrá los DBA completos, generalmente serán los que usen la herramienta. Y seguí adelante y acabo de agregar un pequeño comentario aquí de Wikipedia. En cierto modo, pasa por encima de las responsabilidades del DBA como dice Wikipedia, eso es lo que hacen.

Si revisa la lista aquí, muchas de estas cosas, no las leeré, pero obtendrá muchas de las cosas típicas en las que pensaría, y luego, en una de ellas, tendrá monitoreo y optimizando el rendimiento de la base de datos, y eso es bastante grande. Y lo que es interesante es que cuando hablas con el DBA, siempre son los culpables primero, cuando se trata de problemas, y puede que no sea realmente su culpa, pero cuando hay un problema de rendimiento, generalmente con una aplicación que está vinculado a una base de datos DBA, ellos son los que tienen la culpa, por lo que siempre están buscando las razones por las cuales no es su culpa. En muchos casos, para eso pueden usar esta herramienta, Diagnostic Manager, para ayudarlos a hacerlo.

Pero al final del día, también, si la base de datos no está funcionando, entonces muchas de estas otras cosas realmente no importan, sus aplicaciones no funcionan, entonces realmente no importa para muchas de estas cosas. En primer lugar, queremos asegurarnos de que el usuario experimente la forma en que lo conocemos, no disminuya, es algo por lo que los DBA siempre se esfuerzan. Y creo que, si observan las razones por las cuales las personas generalmente compran y usan el producto SQL Diagnostic Manager, una de las primeras razones, probablemente no la más importante, ni la última ni la menos importante, pero es igual en todos los ámbitos, y dependiendo de con quién hables, estas razones, casi una o dos de ellas son siempre, hay algún tipo de necesidad.

Pero el primero es poder tener esa vista centralizada de las instancias como un SQL que están administrando. Y lo curioso es que, en muchos casos, si le preguntas a un DBA, "¿Cuántas instancias administras?" El número cambia con tanta frecuencia, que en algunos casos no están realmente seguros. Por lo tanto, necesita algo más que simplemente poder arrojar todo en la pantalla. Desea obtener esa información, quiere darle sentido y, por lo tanto, esa es una de las cosas en las que Diagnostic Manager definitivamente puede ayudar, es poder brindarle ese tipo de visión del entorno.

Y no es solo una vista del entorno, sino que es una vista con la que el DBA, el administrador de la base de datos, se siente cómodo y es una consola centrada en DBA, por así decirlo. Está hecho para un administrador de base de datos. Hay muchas herramientas de monitoreo, hay muchas herramientas de rendimiento, pero como dije, al final del día, el DBA quiere una herramienta diseñada para un DBA, porque hay muchas cosas específicas para lo que hacen. en su día a día.

Y dicho esto, tienes SCOM, tienes HPF, tienes todas estas otras tecnologías, pero quieren algo que sea particular de lo que están haciendo. Creo que podemos ayudar en esa área con este producto, ya lo verán cuando entremos en un segundo. La otra cosa que vemos con el DBA que definitivamente es una de las cosas que mencionamos anteriormente, es que necesitan poder ver lo que está sucediendo, obviamente, y deben poder mirar a través de toda la empresa. y tener tranquilidad para saber lo que está sucediendo. Pero al mismo tiempo, no están sentados mirando las consolas.

¿Recuerdas todos esos puntos que viste en esa lista, que acabo de sacar? También tienen que hacer esas otras cosas, por lo que no se trata solo de esperar a que se apaguen los incendios. En muchos casos habrá reuniones, o muchas de las ventanas de mantenimiento relacionadas con el administrador de la base de datos se están ejecutando en medio de la noche cuando están durmiendo, por lo que deben tener la capacidad de regresar y ver qué sucedió. . En muchos casos, si no detecta algo cuando está sucediendo, una vez que el problema ha desaparecido, o al menos con SQL Server, se convierte en un problema en el que está lidiando con la situación en la que no tener restos de ese problema nunca más. Y esos problemas desaparecen, y también lo hacen los remanentes, lo que significa que tiene menos problemas para solucionar y tiene menos información para trabajar.

Dicho esto, esa es definitivamente una de las cosas con las que puede ayudar Diagnostic Manager, es darle esa visión del pasado para consultar la información del pasado, "¿Tuve una alerta con el bloqueo, tuve problemas con el bloqueo, ¿Teníamos cosas que estaban sucediendo en términos de nuestros recursos? ”Puedo regresar y consultar esa información. Puedo profundizar en puntos específicos en el tiempo. Podría hacer todas esas cosas directamente desde la herramienta.

Todas esas cosas, a pesar de si es o no una aplicación interna o externa, el DBA quiere saber, porque quieren poder ver qué está causando el problema. Realmente no importa si fue alguien dentro de la organización, o alguien fuera de la organización que escribió el código; todavía quieren poder aislarlo, para que sepan que el problema está sucediendo y sepan de dónde viene.

Por lo tanto, el rendimiento y la responsabilidad son una parte clave de lo que hace nuestro producto. Podemos proporcionar todos esos detalles, y lo que es bueno, es que tiene la capacidad de profundizar. Si hay un cuello de botella, puede correlacionarlo con la aplicación, el usuario, la base de datos y la consulta. Y una vez más, es una especie de arma humeante. Obtiene una correlación directa entre cuando se ejecuta esta consulta, ¿qué está haciendo? Y no se trata solo de la consulta en sí, en términos de que se ejecute en sí misma, sino que también la consulta con el tiempo empeora. Y esas cosas también se pueden responder, con el producto, que definitivamente es algo que si estás tratando de ser proactivo, es bueno poder decir: "Oye, aquí hay una consulta que funcionó mal, pero mira eso a medida que avanza, podemos ver que funciona aún peor y peor, puedo hacer algo al respecto ".

Si vamos a la siguiente área aquí; y esto es probablemente, diría que este es uno de los grandes. Una de las preguntas que hago, cuando muestro nuestro producto es, siempre le preguntaré al administrador de la base de datos: "¿Cómo se entera de un problema relacionado con las bases de datos de SQL Server?" Y es muy divertido, porque la mayoría de las veces, ahora otorgado, la mayoría de las veces están mirando nuestro producto, porque en muchos casos están tratando de resolver una necesidad particular. Pero es interesante escuchar el tipo inicial de cosas, al menos con SQL Server, es que fue algo así como, ya sabes, en los primeros días de SQL Server tenías SQL Server y luego tenías Oracle. Y todos tenían Oracle, y SQL Server era algo así como, por falta de una mejor expresión, el hijastro pelirrojo de las bases de datos, cuando comenzó.

Y luego, a medida que Microsoft le agregó más funciones, se convirtió en un poco más una herramienta empresarial. Y obviamente, ha recorrido un largo camino desde entonces. Pero el punto es que, una vez, podría argumentar que las bases de datos no se consideraban críticas en el pasado. Y eso ha cambiado con el tiempo. Ahora, debido a eso, en muchos casos las personas están tratando de entenderlo y diciendo: “¿Sabes qué? Tengo todas estas bases de datos de SQL Server, estoy tratando de manejarlo ". Y en lugar de escuchar sobre problemas de la mesa de ayuda, o escuchar sobre problemas de personas específicas que, como los propios usuarios, ellos ' están buscando formas de evitarlo, están buscando formas de ser conscientes de esas situaciones antes de que sucedan.

Y así, con Diagnostic Manager, esa es una de las cosas que también estamos tratando de hacer, al menos poder hacer que el DBA sea el primero en saber sobre esas situaciones o esos problemas, para que puedan hacerlo algo al respecto, ya sea justo cuando suceden, o para ir un paso más allá, para analizar estos sistemas que está monitoreando. Y para poder darle consejos proactivos que mejorarán el rendimiento de esa instancia, y poder hacerlo de forma regular. Por ejemplo, necesitamos agregar un índice, basado en la carga de trabajo; ese tipo de cosas, las herramientas capaces de hacer también. Así que veremos mucho de eso en la herramienta.

Lo otro y lo último que está en esta lista, que es más bien una descripción general, pero definitivamente es algo que vale la pena señalar. Y especialmente, a medida que ingresa a los tipos de situaciones de nivel empresarial más grandes, donde tiene muchas instancias, siempre habrá algo oscuro que querré monitorear, si soy el administrador de la base de datos, para ejemplo. Entonces, lo que intentamos hacer es anticiparnos en términos de lo que el DBA típico querrá monitorear.

Dicho esto, también podría hacerlo en términos de: siempre habrá algo nuevo. Por lo tanto, le proporcionamos una forma de agregar las métricas que necesita para monitorear y administrar después de que se pueda agregar el punto de instalación. Entonces, cualquier contador de PerfMon, contador de WMI, objetos de contador de SQL Server; todos esos pueden ser incorporados a la herramienta. Tiene la capacidad de agregar consultas adicionales que se pueden incorporar a sus intervalos de sondeo.

Y, lo último que también vale la pena señalar es que podemos agregar y realmente comunicarnos tanto con vCenter como con Hyper-V para poder extraer las métricas de esos entornos. Debido a que una de las cosas que hemos identificado con el DBA es que generalmente no forman parte de las operaciones específicamente. Y no necesariamente tienen, ya sabes, el entorno vCenter, disponible para ellos, o ese tipo de cosas disponibles para ellos.

Entonces, el problema es que si se trata de una instancia de SQL Server y se les han asignado recursos, pero esa instancia está virtualizada, puede parecer que tienen todos los recursos del mundo, cuando solo están monitoreando lo que en el sistema operativo invitado. La realidad es que, en el host, puede haber 30, o 40, o 50 o 100 otras máquinas virtuales a las que intentan acceder, y tener contención de esos mismos recursos. Y la única forma de ver eso es comunicarnos con esos otros entornos y con esas interfaces, en este caso, lo que hacemos.

Tiene la capacidad de agregar esos otros tipos de contadores a la herramienta. Ahora no se trata solo de poder monitorear esos contadores, sino de poder hacer esos nuevos contadores, que usted introduce al producto, los hace parte de la herramienta, como si fueran una métrica lista para usar . Una cosa lista para usar que desearía monitorear; eso significa poder incorporarlos en sus paneles. Significa poder agregarlos a sus propios informes personalizados, poder establecer obviamente umbrales y alertar sobre ellos, pero también establecer una línea de base y poder establecer los umbrales con cierto conocimiento, de dónde establecerlos en función de cosas como su líneas de base y lo que es normal. Entonces, tienes muchos de esos tipos de cosas que también están en el producto.

Lo que te he proporcionado es lo que llamo "los entregables principales para el Administrador de diagnósticos", y puedo seguir adelante y darte una pequeña probada al ingresar al producto. Lo que voy a hacer es comparto mi pantalla, está bien, y solo voy a arrastrar esto. Entonces, lo que van a ver, esta es la consola de Diagnostic Manager. Y como mencioné antes, ir a ese primer entregable central, poder mirar cosas desde una especie de vista de nivel empresarial. Hay muchos ejemplos diferentes de eso dentro de la herramienta. Tenemos una especie de vista en miniatura; tenemos más de una vista de cuadrícula. También tenemos, en términos de flexibilidad, tener una consola basada en la web también. La consola basada en la web tiene otras vistas disponibles para usted, como mapas clave y cosas así. Pero el punto es que tiene la capacidad de mirar y ver cosas en un nivel alto. Pero a medida que surgen problemas, profundizarás un poco más en la herramienta y verás el problema específico Lems, y tener alguna manera de entender y saber lo que está sucediendo. Y obviamente eso es muy importante.

Ahora, en términos de poder ver realmente lo que sucedió en el pasado; Si estoy viendo un problema que ocurrió ayer, o hace una semana, entonces, en esa situación, vas a tener la necesidad de poder salir a una instancia particular de SQL. Y la buena noticia es que si sabe a qué hora ocurrió ese problema dentro del producto, puede ir directamente al navegador de historial. Y puedo señalar un momento específico del día; podría ser de hace un par de semanas, podría ser de ayer. Pero cualquier día que elija en el calendario, se me presentarán los diferentes intervalos de votación. En cuyo caso ahora, estoy viendo efectivamente lo que habría visto si hubiera estado viendo la consola el 20 de abril a las 1:37 p.m.

Así que puedo retroceder en el tiempo, y una vez que lo haga, todas las pestañas diferentes que vemos aquí reflejarán ese punto específico en el tiempo, incluidas las consultas que podrían haberse estado ejecutando mal, incluso si Tuve sesiones con bloqueo. Todo ese tipo de cosas aparecería en la herramienta, y obviamente me permitirá aprovechar esa información histórica para poder, ya sabes, solucionar el problema. Ahora en esa nota, cuando estamos hablando de la historia, la otra cosa que vale la pena señalar aquí es que no es solo usar la historia para solucionar problemas. Esa historia es muy valiosa, obviamente, por otras razones. Y uno de los grandes es poder tomar decisiones de manera eficiente y poder tomar decisiones rápidamente, con la información correcta. Entonces, toda esa historia, toda la información que estamos recopilando, podemos informar en contra.

Si alguien viene a mí y me dice: "Tengo esta nueva aplicación realmente genial. Va a cambiar el mundo tal como lo conocemos. Oh, por cierto va a requerir una base de datos, y por cierto va a vincular realmente el mundo E / S en la máquina donde está esa base de datos ". Si sé eso al respecto, entonces puedo aprovechar esa información para poder proporcionar una clasificación de todos mis servidores de producción, basada quizás en los últimos siete días de recopilación. Y podría llegar rápidamente a la conclusión de qué instancias tiene más sentido emplear esa base de datos. Entonces, ese tipo de información histórica también es obviamente muy valioso.

En cuanto a las consultas mismas; En términos de mirar las consultas, tenemos muchas formas diferentes de hacerlo en la herramienta. Y la que me gusta mirar es la Vista de consulta de espera, porque la Vista de consulta de espera es muy útil en términos de poder evaluar. Si tengo un cuello de botella, para poder identificar esencialmente todas las diferentes áreas que afectan esa consulta específica y particular; no solo la consulta en sí y cuál es el impacto de esa consulta, sino también, ya sabes, de qué aplicación proviene, de qué sesión proviene, qué usuario la llamó y todo eso, puedo ver eso, obviamente, información en tiempo real, pero también tengo la capacidad de ver esos datos del pasado. Y esa es una de las cosas aquí, y comencé un guión, pero tengo que esperar a que aparezca.

Mientras esperamos eso, quiero hacerlo, y sé que tenemos poco tiempo, así que quería hablar un poco también sobre alertar que la notificación es proactiva. Y cuando estás hablando de ese tipo de cosas, como dije, siendo la parte proactiva, hay muchas herramientas que hacen alertas. La parte difícil es no enviar un correo electrónico. La parte difícil es no escribir en el registro de eventos o generar una captura SNMP. La parte difícil es saber cuándo enviar esa alerta en los momentos apropiados. Y con eso viene tener que hacer algunos cálculos, tener que entender: "¿Qué tiene esa instancia en particular y qué es normal en lo que respecta a esa instancia?"

Y así, para todas las métricas que tienen sentido hacerlo, basamos esas métricas. De hecho, le mostramos la línea de base, le mostraremos el umbral en el que está configurado actualmente. Y luego, la otra cosa buena al respecto, es que digamos, establecí mis umbrales en este caso seis y diez solo para este ejemplo. Seis semanas a partir de ahora, si vuelvo a esta instancia, esta línea de base puede cambiar completamente, porque una de las cosas que estamos haciendo cuando calculamos la línea de base, por defecto, es un cálculo continuo de siete días. Por lo tanto, siempre me da una versión actualizada de la línea de base. ¿Y qué sucede si esa línea de base se eleva a mis umbrales? En este caso, puedo ver y alertar recomendaciones que básicamente dicen: "Oye, tienes un umbral que probablemente esté configurado incorrectamente, específico de dónde vemos que está el umbral, y obviamente dónde está la línea de base, probablemente vas a estar recibiendo una alerta por algo que es normal ".

Y así, en lugar de tratar un síntoma de algo que es normal, puedo identificar ese tipo de situación en la que el umbral real se establece incorrectamente. Y lo que eso me permite hacer, obviamente, es establecer los umbrales de acuerdo a dónde voy a recibir una alerta. Es algo que sé que es más un llamado a la acción que una investigación para ver si realmente es un problema. Y creo que parte de la herramienta es realmente útil en términos de la línea de base en sí misma y de poder calcular.

Ahora, con este producto tiene la capacidad de tener múltiples líneas de base; puede configurarlos para diferentes períodos de tiempo, y puede ajustar dinámicamente los umbrales en función de sus líneas de base, que también es una parte muy importante de la adaptación a los cambios que ocurren diariamente en sus instancias de SQL Server . Ahora, en este caso aquí, cubrimos muchos de los ajustes de los umbrales y le mostramos las líneas de base. Pero en lo que respecta a las alertas reales, la notificación en sí, lo bueno de Diagnostic Manager, es que le proporciona múltiples perfiles de alerta. Entonces, si tiene, por ejemplo, un perfil de guardia que es de 2:00 a.m. a 5:00 a.m., entonces puedo tener un perfil específico para ese rango de tiempo, y puedo establecer todas las condiciones y la configuración adecuada aquí por mi respuesta

Ahora, lo que pasa con la respuesta es que, en algunos casos, sí, puedo enviar un correo electrónico, o puedo disparar y generar una trampa SNMP, o escribir en el registro de eventos. Hay muchas otras cosas que podemos hacer, pero mientras hablo con los DBA, lo que realmente les gusta es el hecho de que, en la mayoría de los casos, gran parte del trabajo que se realiza es repetitivo. Son cosas que saben exactamente cuando está ocurriendo el problema, qué hacer para solucionarlo. Solo tienen que ir e intervenir. Y a medida que crece su entorno, a medida que tiene más instancias, eso se vuelve mucho más difícil de hacer. Entonces, una de las cosas que puede hacer dentro de la herramienta que creo que vale la pena señalar, es que tiene la capacidad de configurar una condición, pero en función de esa condición para poder establecer una respuesta para ejecutar un script, ejecutar un trabajo, para ejecutar un ejecutable. Y el punto es que si decide ejecutar un script, puedo usar parámetros, dentro de ese script que estarán en tiempo de ejecución, poblados con la información real.

Entonces, si hay problemas con una base de datos específica, el script estará diseñado para ejecutarse solo en la base de datos donde está ocurriendo el problema. Por lo tanto, puede abordar los problemas de forma dinámica de forma automatizada, y aún así puedo recibir un correo electrónico para volver y decirme: "Oye, hubo un problema, pero por cierto, se solucionó". El script se ejecutó y, como DBA, lo sabes, pero en realidad no tienes que entrar e intervenir. Ahora, en la misma nota sobre ser proactivo, obviamente también tenemos otra característica aquí que es la función "Analizar". Y, lo que esto hará es que realizará una verificación regular, contra la instancia de SQL. Y, en algunos casos, hará una inmersión más profunda en términos de lo que está buscando. Se realizarán análisis hipotéticos del índice. ¿Añado un índice? ¿Elimino un índice? Y, obviamente, todo ese tipo de cosas va a ayudar con mi desempeño, pero una vez más, se trata de ser proactivo. Se trata de poder tomar decisiones antes de que se rompan las cosas y hacer que funcione mejor. Y, en muchos casos, eso es realmente lo que estamos tratando de hacer aquí.

Volviendo a Query Waits del que hablábamos antes; Como puede ver, hay un gran pico aquí. Ejecuté un script anteriormente que solo causó cierta actividad de espera, y como mencioné antes, tenemos una forma realmente única de profundizar en esta información. Si quiero ver qué aplicación era; Puedo ver que venía de la aplicación NoSQL. Podríamos ver la base de datos a la que estaba vinculada, la sesión, el usuario, y luego, si quiero, puedo clasificar esto, en términos de mis esperas, también. Entonces, puedo decir, de todas las esperas que sucedieron en esa ventana de tiempo, ¿cuáles sucedieron más? Y si veo que cuando sucedió más, lo realmente bueno es que puedo profundizar en ese tipo de espera y puedo ver todos los comandos. Si miras aquí, estaban haciendo que esa espera ocurriera. Y también puedo ver principalmente, qué aplicación era, que estaba haciendo que esa espera ocurriera.

Entonces sobresale como un pulgar dolorido. Inmediatamente puedo ir y decir: "Esta es la aplicación que está causando mi cuello de botella. ¿Cuál fue la consulta que se ejecutó? ¿Qué usuario la ejecutó? ¿Con qué base de datos se ejecutó?", Y así sucesivamente. Espero que tenga sentido, y también ayuda en términos de asegurarse de que no tenga la latencia dentro de su entorno, ya que se relaciona con sus bases de datos. Espero que esto sea útil. Voy a seguir adelante en este punto y pasarlo de regreso, y supongo podemos continuar desde allí.

Eric Kavanagh: Claro que sí. Por lo tanto, supongo que lo lanzaré a nuestros expertos del día. Mark, quizás primero quieras comentar y hacer un par de preguntas. Entonces Dez, puedes intervenir.

Mark Madsen: Sí, gracias, realmente disfruté viendo algo de esto. Es un monitoreo mucho más inteligente de lo que estoy acostumbrado a ver. Tengo curiosidad con el manejo de los datos detrás de esto; manejo de las métricas que puede rastrear, y ya sabe, buscar cosas como el cambio de líneas de base en particular, que es uno de mis puntos débiles para mascotas, con tableros. ¿Cómo manejas esos datos? Y la segunda parte de eso es, ya sabes, las métricas de referencia, como un tipo de cambio: ¿tienes la capacidad de cambiar automáticamente los umbrales también, para que no tenga que hacerlo? volver a entrar y restablecer los umbrales a mano, cuando cambia una línea de base?

Bullett Manale: Sí, y lo bueno de esto es que puedes decidir eso. Puedes hacer cualquiera. Puedo establecer un umbral y convertirlo en una configuración estática, o puedo marcar la casilla para decir: "Haga que este sea un umbral dinámico, que cambiará a medida que cambien mis líneas de base". Y tengo la capacidad y la herramienta para establecer una ventana predeterminada de tiempo para mi línea de base. Pero si lo necesito, podría tener una ventana de línea de base separada, por ejemplo, desde mi ventana de mantenimiento desde las 2:00 a.m., digamos hasta las 5:00 a.m., porque voy a pagar impuestos a mi CPU, mis discos y todo lo demás porque es cuando hacemos todo nuestro mantenimiento. Entonces, automáticamente, si lo seleccionase para hacerlo, ajustaría automáticamente mis umbrales para estar fuera de donde sea lo que sea normal para esas métricas que Elijo hacer eso. Me permitiría hacerlo. Básicamente, usted tiene la capacidad dentro de la herramienta de establecer ventanas de tiempo, que son sus ventanas de referencia, y cada ventana puede tratarse como una entidad separada, en términos de ajuste de línea de base dinámico que se puede hacer. Y puede agregar tantas ventanas de su línea de base como usted Necesitas, si eso tiene sentido. Podría tener una ventana de fin de semana, un día de la semana durante las horas de trabajo, una ventana de mantenimiento que ocurre en el medio de la noche y así sucesivamente.

Mark Madsen: Gracias.

Bullett Manale: Creo que volviendo a la primera parte de la pregunta, sí tenemos, y recopilamos toda esta información. Realmente no hablé sobre la arquitectura, pero tenemos un repositorio de back-end, que tiene un control completo sobre la retención de esos datos, pero también tenemos un servicio que se ejecuta en medio de la noche que funciona y funciona. todos nuestros cálculos de referencia y toma esos datos, los recopila y les da sentido. Y obviamente, junto con eso, también tiene numerosos informes que podemos usar para informar contra sus líneas de base, para métricas específicas. E incluso tiene la capacidad de comparar sus líneas de base del mismo servidor, para la misma métrica por diferentes períodos de tiempo. Puede ver si se han producido diferencias o cuál es el delta. También hay muchos de esos tipos de opciones.

Eric Kavanagh: Dez.

Dez Blanchfield: Una pregunta rápida que tengo para ti: hay un amplio espectro de lo que esta herramienta puede hacer. ¿Está viendo una aceptación en su uso en la etapa inicial de desarrollo ahora, o sigue siendo principalmente una herramienta de entorno de producción? En otras palabras, ¿los desarrolladores obtienen acceso y lo utilizan a través de su desarrollo inicial y luego prueban la fase de integración? ¿O todavía se usa predominantemente en entornos de producción?

Bullett Manale: Yo diría que, la mayoría de las veces lo vemos en entornos de producción. Depende de las situaciones, pero en su mayor parte diría principalmente producción y lo hacemos, y también, ya sabes, es justo mencionar que tenemos diferentes precios para entornos de desarrollo y prueba, por lo que es un poco más atractivo. Vemos personas que lo usan para esos entornos, pero yo diría que si tuviera que responder de una manera u otra, diría que todavía son principalmente entornos de producción donde vemos que las personas hacen una inversión para este producto .

Dez Blanchfield: Claro, sí, y fue interesante escuchar que tienes diferentes puntos de fijación de precios, porque obviamente hay diferentes cargas de trabajo, y cuanto más pesados ​​sean los trabajos donde se está haciendo todo el trabajo real. Pero estoy viendo muchas organizaciones, particularmente en el gobierno, y ciertamente en defensa, donde el desarrollo ahora está obteniendo el mismo nivel de inversión en herramientas y sistemas que los entornos de producción, porque están haciendo muchas más pruebas iniciales. En defensa, por ejemplo, hay equipos que ejecutan miles de millones de pruebas, cientos de miles de millones de pruebas en aplicaciones, sistemas y herramientas, y las supervisan incluso antes de que entren en pruebas de integración, porque quieren asegurarse de que haya un código construido y la base de datos Está sentado debajo. Llega a la iteración de ciento un millón o algo así, mientras estás en el campo disparando a alguien, no suena "explosivo".

Bullett Manale: Claro.

Dez Blanchfield: En mi experiencia en el mundo de las bases de datos de la vieja escuela, pensar que el entorno de la base de datos es algo que acaba de dejar en los datos y algunos de ustedes saben, rara vez se ven, y muy rara vez se habla de ellas, así que cuando lleguemos al punto donde las herramientas se están desarrollando aplicaciones, particularmente con plataformas analíticas, ahora están en nuestros teléfonos y en nuestros dispositivos. ¿Está viendo que los clientes traen la conversación sobre el rendimiento de la base de datos y la gestión de la base de datos en una discusión más cotidiana en lugar de solo tecnólogos? Y sé que mencionaste antes que predominantemente estás hablando con los DBA, pero ¿hay una tendencia ahora en el vocabulario general, estás viendo personas donde están discutiendo estos temas, en lugar de solo los geeks?

Bullett Manale: Bueno, es difícil de decir. Quiero decir, como dije en su mayor parte, las personas con las que tratamos en términos del proceso de venta de todos modos son los profesionales, que son los DBA. Entonces, en términos de su pregunta, ¿simplemente está diciendo: "En términos generales, las personas dentro de la organización de TI se están volviendo más conscientes de la base de datos?" Creo que es la pregunta y probablemente diría que la respuesta es "sí". Probablemente no lo veo tanto, en función de dónde estoy, en el día a día, pero creo que si entiendo su pregunta, supongo que esa sería mi respuesta.

Dez Blanchfield: Sí, está bien. Probablemente sea una pregunta cargada, lo siento, porque obviamente sus intereses predominantes, en su mundo, son el lado técnico de las cosas. Tengo curiosidad porque en mis actividades diarias, veo que las organizaciones comienzan a traer esto a la conversación muy temprano. Entonces, cuando hablan de nuevas iniciativas, nuevos proyectos, nuevos programas de trabajo, una de las cosas que vienen de inmediato es: "¿Cómo lo estamos monitoreando, cómo lo estamos rastreando, cómo estamos lidiando con los problemas a medida que surgen? en lugar de lanzar, ir en vivo?

Bullett Manale: Yo diría que …

Dez Blanchfield: Lo siento, adelante.

Bullett Manale: Iba a decir que sí veo una tendencia, creo que debería decir, ya sabes, muchas veces en el pasado obtendría: "Tuvimos un problema y ahora necesitamos una herramienta". " Y creo que estamos viendo un poco más de aceptación al tener la herramienta en su lugar antes de que ocurra el problema, si eso tiene sentido. Entonces, diría que definitivamente se está volviendo más normal, ya sabes, "Oye, necesitamos una herramienta de monitoreo, necesitamos algo". Y la gente definitivamente está viendo el valor de este producto, porque como dijiste antes, solo agregas DBA y agregando nuevas instancias, necesita algo que lo gestione. Necesita algo que ayude con la gestión de eso, y es por eso que también estamos viendo mucha aceptación en este producto, o lo hemos hecho.

Dez Blanchfield: Pregunta rápida. ¿Dónde necesita vivir esto? ¿Tiene que estar justo en la parte posterior de la LAN, dentro del centro de datos, lo más cerca posible de los entornos de la base de datos, o se encuentra cómodo en algún lugar, potencialmente fuera de la nube, una nube de terceros con algún tipo de ¿Túnel VPN o acceso remoto a varios entornos? ¿Dónde debe sentarse eso, en lo que respecta a los entornos y el monitoreo?

Bullett Manale: En términos de arquitectura, hay un repositorio de back-end, y esa es una base de datos de SQL Server. Tenemos la consola que puede ser un cliente gordo o un cliente ligero; Te damos la opción de ambos. Y también tenemos un cliente ligero que está orientado específicamente a dispositivos móviles. Pero en términos de dónde esto realmente puede sentarse; puede permanecer en un entorno, realmente la parte más complicada es que, a partir de la gran cantidad de información que necesitamos recopilar, requiere derechos administrativos, en algunos casos o en muchos casos. Ahora no te obligamos a hacer eso; si lo desea, puede recopilar datos y solo por las cosas que no podemos recopilar, porque no tenemos derechos de administrador, simplemente le dejaremos que no vea esa información, si esa es la elección que hace.

Dependiendo del sabor, como si se trata de AWS, algunos entornos funcionan mejor que otros, pero en lo que respecta al entorno real en sí, normalmente es necesario usar la autenticación SA para recopilar los datos en las instancias. O si es un dominio que no es de confianza, generalmente es cuando quieres hacer eso, pero múltiples dominios; Mientras haya confianza entre ellos, podemos cobrar contra ellos. Realmente no importa si está en una LAN o en la WAN, la recopilación en sí misma es bastante insignificante en términos de la cantidad de datos que estamos recopilando. Si tenemos una conexión WAN de tamaño suficiente, no es un problema. He visto entornos donde tienen sucursales donde tienen servidores SQL en todo Estados Unidos. Y es un servidor en cada una de esas ubicaciones diferentes, y lo monitorean centralmente. La parte difícil es asegurarse de que tienes una buena cantidad de conectividad para hacerlo. Con suerte, eso responde a su pregunta, estaba en todo el mapa.

Dez Blanchfield: Sí, absolutamente. Gracias. Entonces, dos preguntas rápidas que han recibido los asistentes esta mañana; una es: cuál es el impacto de: a menudo vemos que las herramientas de monitoreo del sistema generan carga por sí mismas simplemente monitoreando cosas, por lo que la pregunta era, perdón, ahora se desplazó de mi pantalla, pero parafraseando; por monitoreo estamos generando carga nosotros mismos? ¿Hay un impacto medible de la herramienta, solo mirando el medio ambiente, o es un impacto insignificante?

Bullett Manale: Siempre habrá un pequeño impacto porque tiene que consultar la instancia de SQL Server para recuperar los datos. La pregunta como usted dijo es: "¿Es insignificante o es significativo?" Fuera de la caja que estás señalando a una instancia, es insignificante. Hemos estado haciendo esto por, como dije, bastante tiempo. Tenemos más de 20, 000 clientes, y puedo asegurarle que si causa un impacto significativo en el rendimiento, no estaríamos en el negocio. Dicho esto, también permitimos que el usuario decida qué quiere que quiera monitorear. Así que creo que es algo importante que mencionar, es que cada entorno es un poco diferente.

Un ejemplo sería, con el componente de monitoreo de consultas, una de las cosas que tenemos la capacidad de hacer, es establecer el umbral de lo que usted considera su límite de normalidad. Por lo tanto, podría basarse en el tiempo de ejecución de la consulta. Podría basarse en la CPU, E / S, pero como ejemplo, digamos que configuré mi tiempo de ejecución en cero milisegundos. Efectivamente, lo que le digo a la herramienta que haga es que recopile todas las consultas que se ejecutaron desde el último intervalo de extracción y que también forme parte de mi colección histórica.

Ahora, cuando hagamos eso, vamos a recopilar cualquier cantidad de consultas que ejecutamos en la caja desde la última encuesta. Ahora eso es electivo, y el usuario tiene la capacidad de hacerlo. ¿Decimos: "Eso es lo que debe hacer"? No. Pero también le damos la opción de hacerlo en caso de que desee una muestra de datos que le permita recopilar esa información. En términos generales, tiene los medios dentro del herramienta para configurarlo y ajustarlo exactamente como desee en función de lo que le resulte cómodo, pero tiene la capacidad de abrirlo realmente si lo desea y recopilar mucha información adicional que no necesariamente necesariamente recoger, si eso tiene sentido.

Dez Blanchfield: Sí, absolutamente. Sé que nos estamos quedando un poco largos, pero hay dos preguntas realmente buenas que quiero hacerte antes de terminar. Ambos vienen directamente a mí, pero creo que es mejor si les respondes. La pregunta en general era: "¿Cuál es el alcance del alcance de la herramienta en cuanto al conocimiento de los sistemas existentes?" Entonces, ¿podemos conectar esto y hacer que detecte automáticamente la plataforma que está allí, y saber qué es normal para esa plataforma e inmediatamente? retomar como Mark estaba hablando anteriormente? Algunos de los conocimientos básicos de las plataformas al poner, ya sabes, no sé, podría ser Microsoft Dynamics. ¿Cuál es el alcance del conocimiento de la plataforma con lo que es normal y en algunas de las herramientas actuales que se utilizan en los negocios?

Bullett Manale: Diría que, en general, cuando comenzamos a recopilar datos en la instancia de SQL, para empezar, trabajamos con las mejores prácticas, en términos de nuestros umbrales y dónde están configurados. Dicho esto, también reconocemos que con quien sea que esté hablando, en términos de mejores prácticas, cada entorno es diferente. Lo que haremos inicialmente es que solo recopilamos los datos, y lo que recomendamos que hagan las personas, puede probar el producto durante 14 días más si lo necesita. Pero después de aproximadamente dos días, comenzará a ver los datos de línea de base poblados. Una vez que tenga suficiente información de muestra para trabajar, comenzará a proporcionarle el contexto en términos de la línea de base, dónde está el rango y todo ese tipo de cosas. Luego, desde allí, si lo desea, puede establecer automáticamente sus umbrales a partir de la información que se ha recopilado. Se necesita un poco de recolección y sondeo iniciales para poder comenzar a determinar qué es normal, de modo que pueda comenzar a cambiar sus umbrales.

Pero lo que creo que vale la pena señalar también es que, cuando cambias esos umbrales, puedes hacerlo grupo por grupo de tus instancias. Puede ser específico para una instancia o puede hacerlo en todas sus instancias, así como la capacidad de crear elementos como plantillas, para que pueda decir: "Esta es una instancia de producción, pero esta es la plantilla que quiero para asignarle ". Entonces, cuando una nueva instancia de producción entra en línea, automáticamente le aplicamos esos umbrales, ya que tiene el mismo tipo de hardware y, por lo general, tiene las mismas cargas de trabajo, por lo que también podríamos hacerlo de esa manera. Esperemos que eso ayude en términos de la pregunta.

Dez Blanchfield: Sí, absolutamente. De hecho, en realidad respondiste otra pregunta que me llegó, y fue, "¿Hay una descarga de prueba?" Hay, puedo responder eso, lo sé. Estoy seguro de que confirmarás que hay una descarga gratuita, y creo que dijiste que eran 14 días desde el sitio web. Puedes descargarlo y jugar con él. Sin embargo, supongo que rápidamente con eso, "¿Qué tipo de entorno necesito para poder ejecutar la versión de prueba? ¿Puedo ejecutarlo en mi computadora portátil y jugar con él o realmente necesito un servidor?"

Bullett Manale: Lo principal que necesita es un repositorio, una base de datos de SQL Server que sea 2005 o superior. Aparte de eso, hay algunos requisitos mínimos de recursos, un requisito de .NET, y eso es todo. Entonces, es solo cuestión de instalar el producto y crear una base de datos.

Dez Blanchfield: Perfecto. Una última pregunta que le haré, porque ahora estamos fuera de tiempo, pero rápidamente, unas dos o tres personas me preguntaron: "¿Necesito ser un DBA para poder ponerme en marcha con esto, y jugar con eso?

Bullett Manale: No. Diría que, si usted es un DBA, tendrá diferentes usos de la herramienta. Quiero decir, probablemente habrá un poco más de valor si eres un DBA experimentado. Verá mucha más profundidad en la herramienta de la que podría aprovechar. Pero también como un nuevo DBA, o incluso una persona que, eso no es un DBA, tenemos muchas recomendaciones, y ahora estoy en esa página. Estas recomendaciones aparecerán de manera regular, y lo realmente bueno de las recomendaciones es que le brindan las razones por las cuales se hacen las recomendaciones. Pero además de eso, también tendrán enlaces a contenido externo que describen más detalladamente las razones por las cuales esas recomendaciones también se están haciendo. De modo que se vinculará a sitios web externos de Microsoft, blogs y todo tipo de cosas como esa, eso es externo.

Pero para responder a su pregunta, es una especie de, ya sabes, si usted es un DBA senior, habrá cosas aquí, probablemente aprovechará, que probablemente no haría como un DBA novato. Pero al mismo tiempo, también es una especie de herramienta de aprendizaje, porque a medida que siga estas recomendaciones, comenzará a aprender algunas de estas cosas por sí solo mediante el uso de las recomendaciones.

Dez Blanchfield: Fantástico. Gracias. Realmente disfruté la parte de demostración. La presentación fue genial. La demostración fue fantástica. Rápidamente de memoria, hay un centro de recursos completo en su sitio web que recomiendo que las personas también echen un vistazo. Recuerdo haber pasado por eso anoche para obtener algunos detalles. Tienes toda una gama de cosas, desde tus blogs y datos y conversaciones hasta, desde la memoria, también tienes la mayor parte de la documentación de tu producto en línea, ¿sí?

Bullett Manale: Sí, eso es correcto, y creo que el formulario al que hace referencia es el sitio web community.idera.com. Y luego, una cosa que mencionaría también, antes había preguntado: "¿Va a reconocer el medio ambiente?" En términos de nuevas instancias o agregar instancias, hay otra herramienta que tenemos que hace el descubrimiento de instancias. Y se trata de inventario y gestión de su inventario. Simplemente te diría en esa dirección, en términos de descubrir realmente las instancias. Pero en lo que respecta al rendimiento y la supervisión, todo ese tipo de cosas de las que hablamos, ahí es donde entraría en juego el Administrador de diagnósticos.

Dez Blanchfield: Fantástico. Mira, gran cobertura. Realmente disfruté tu presentación. Me encantó la demostración en vivo y eso es todo de mí esta mañana, ya que sé que hemos ido probablemente 10 minutos con el tiempo. Eric, te lo voy a devolver.

Eric Kavanagh: Muy bien. Me encantó la demo. Me alegro de que hayas hecho la demostración. Me alegro de que hayamos tenido una buena mirada al respecto al pasar por las preguntas y respuestas.

Bullett Manale: Genial.

Eric Kavanagh: Porque esto le da a la gente una idea de lo que estás viendo, y realmente me sorprende pensar que todavía estamos aprendiendo sobre cómo hablar con estas computadoras, en el fondo. Quiero decir, este nivel de diagnóstico es bastante sofisticado y mejora cada día. Estamos obteniendo mucha más información sobre lo que realmente está sucediendo. Pero realmente necesitas una persona que pase por alto estas cosas, que las lea, que ponga esa capacidad cognitiva detrás de lo que estás haciendo, ¿verdad?

Bullett Manale: Sí, quiero decir en muchos casos, me gustaría poder decirte que este es un DBA en la caja, pero hay demasiadas cosas que están sucediendo. Quiero decir, brindamos orientación y ayudamos, pero al final del día, se requiere que las personas tomen decisiones sobre los datos que presentamos. No creo que eso vaya a cambiar en el corto plazo.

Eric Kavanagh: Bueno, esas son buenas noticias para la gente real, amigos.

Bullett Manale: Eso es correcto.

Eric Kavanagh: Querrás tener a alguien viendo esto, un equipo viendo esto, y aprenderás, como has escuchado de Bullett aquí, al observar estas recomendaciones, vas a ver lo que está sucediendo. Y supongo que a partir de esa historia, y creo que has tocado esto, Bullett, pero muy rápidamente, esa historia te permite reconocer patrones significativos y, por lo tanto, ser capaz de identificarlos cuando sucedan en el futuro, ¿verdad?

Bullett Manale: Eso es correcto. Una de las cosas que podemos hacer es rastrear el rendimiento de una consulta a lo largo del tiempo. Obviamente, también podemos mirar otras cosas, como líneas de base y verlas cambiar, y obviamente recibir alertas y cosas así cuando eso suceda, por lo que definitivamente tiene esa capacidad.

Eric Kavanagh: Eso suena bien, amigos. No hubiéramos pasado mucho tiempo aquí, pero quería llegar a esas preguntas. Muchas gracias por su tiempo y atención. Archivamos todos estos webcasts. Vaya en línea a Techopedia.com o InsideAnalysis.com, verá enlaces desde ambos lugares.

Y con eso, nos despedimos. Gracias de nuevo, amigos, nos pondremos en contacto con usted la próxima semana, tres transmisiones web más la próxima semana, martes, miércoles y jueves. Hablaremos con ustedes la próxima semana, amigos. Cuídate. Adiós.

Socio de contenido de Techopedia

El personal de Techopedia está afiliado a Bloor Group y puede contactarse usando las opciones a la derecha. Para obtener información sobre cómo trabajamos con socios de la industria, haga clic aquí.
  • Perfil
  • Sitio web
Juego de rendimiento: diga adiós a la latencia