Inicio Noticias Obtenga su DBMS AutoTweaks con la ayuda de ML

Obtenga su DBMS AutoTweaks con la ayuda de ML

OtterTune es una herramienta impulsada por la tecnología DBMS autónoma procedente de la investigación y el desarrollo de la Universidad Carnegie Mellon que tiene como objetivo aliviar las dificultades fundamentales de configurar un DBMS.

Y todos sabemos lo difícil que es. Es porque hay una plétora de opciones o “perillas” (como tamaño de búfer, políticas de almacenamiento en caché, optimización de ajuste) con una perilla que afecta a la otra, que deben tenerse en cuenta al hacer un plan. La esperanza es que, posiblemente a lo largo de numerosas iteraciones, los ajustes acumulados conduzcan a un mejor rendimiento.

Obviamente, cuanto más sofisticados se vuelven sus DBMS, más sofisticadas también deberían ser sus estimaciones. Es por eso que Oracle, por ejemplo, se está moviendo hacia productos independientes.

Oracle Autonomous Database es una tecnología basada en la nube diseñada para automatizar muchas de las tareas rutinarias necesarias para administrar las bases de datos de Oracle, que Oracle cree que puede permitir a los administradores de bases de datos (DBA) realizar un trabajo más estratégico y de mayor nivel.

La tarea se vuelve aún más difícil cuando tiene varios servidores DBMS trabajando juntos, lo que hacen la mayoría de las empresas. Incluso si decide adoptar un plan de mejora del rendimiento eficaz, debe aplicarlo a cada uno de ellos individualmente. Eso es mucho dolor, sin mencionar cuán propenso a errores también es.

Por lo tanto, OtterTune tiene la intención de hacer que todo este esfuerzo manual y las preocupaciones asociadas sean cosa del pasado. Según su definición:

OtterTune es un servicio de supervisión y optimización de la configuración del sistema de gestión de bases de datos que utiliza el aprendizaje automático para optimizar automáticamente la configuración de las perillas del DBMS para mejorar el rendimiento y reducir los costos de hardware / software.

Las palabras mágicas aquí son “Machine Learning”, ML. ¿Cómo lo usa OtterTune?

Un agente llamado Controller se instala junto con el DBMS en cuestión. El controlador lo monitorea y mientras las transacciones se realizan normalmente, el recopilador … recopila varios contadores de métricas / rendimiento actuales, configuraciones y perfiles de perillas.

Luego, estos datos se envían al Tuning Manager, que los utiliza para entrenar modelos estadísticos que predicen cómo el rendimiento de la base de datos de destino se ve afectado por los cambios en la configuración. Luego genera los valores óptimos que se aplican a la base de datos a través del controlador.

Ottertune-arch

Obviamente, como con todo lo que tiene que ver con ML, cuantos más datos se proporcionen, más preciso será el modelo, con el tiempo y con cada iteración, los valores de configuración se vuelven más efectivos.

No hace falta decir cuán rentable es esta solución, ya que los administradores de bases de datos no tienen que depender de largos ensayos de ajuste y errores o ajustes de configuración estándar que pueden dejar las bases de datos muy por debajo del rendimiento óptimo. Actualmente se estima que el 40% de las bases de datos en la nube están sobreaprovisionadas, lo que da como resultado que cientos de millones de dólares en gastos de infraestructura de TI se desperdicien en toda la industria por año.

En la práctica, esto se traduce en una reducción de los costes de las licencias de software, la compra de hardware para escalar, la costosa formación del personal en optimización y, por supuesto, el coste a largo plazo del vínculo con el proveedor.

Dicho esto, el servicio OtterTune funciona para implementaciones de bases de datos locales y en la nube y es compatible con PostgreSQL, MySQL y Amazon RDS. También habrá soporte para Oracle. Me comuniqué al respecto y con un par de preguntas más, Andy Pavlo, profesor asociado de base de datos en Carnegie Mellon y cofundador de OtterTune:

El lanzamiento inicial de la versión comercial de OtterTune admitirá Postgres / MySQL Amazon RDS. En marzo, publicamos un artículo en VLDB sobre la ejecución de la versión académica de OtterTune en Oracle:

https://db.cs.cmu.edu/papers/2021/p1241-aken.pdf

Aún no hemos trasladado el soporte para Oracle a la nueva versión SaaS de OtterTune, pero planeamos hacerlo este verano una vez que un cliente lo solicite. No tenemos que cambiar los algoritmos de ML. Es solo una cuestión de ampliar la interfaz del controlador para que sea compatible con Oracle.

¿Y cuál es la diferencia con la base de datos independiente de Oracle y por qué elegir OtterTune en lugar de ella?

La oferta de base de datos independiente de Oracle cubre muchos más aspectos del mantenimiento de la base de datos de los que OtterTune admite actualmente (por ejemplo, indexación, seguridad, respaldo). Todas sus herramientas automatizadas, sin embargo, solo son compatibles con Oracle DBMS. Los algoritmos principales de OtterTune son independientes del DBMS y no requieren ninguna modificación en la implementación del DBMS en sí. Apoyamos Postgres y MySQL y creemos que todavía existe una gran necesidad de herramientas automatizadas para estas bases de datos. Es poco probable que Oracle admita estos sistemas con su tecnología de base de datos independiente.

¿Este sistema hace que el DBA sea obsoleto?

¡Para nada! Los DBA son tan sutiles. Optimizar la configuración es una actividad importante pero no tienen tiempo para dedicarle. Creemos que OtterTune ayuda a los administradores de bases de datos asumiendo la gestión de la configuración. Hay muchas otras actividades que debe manejar un DBA que requieren un juicio de valor humano que no puede ser reemplazado fácilmente por el aprendizaje automático. Por lo tanto, OtterTune permite a los administradores de bases de datos dedicar más tiempo a realizar esas otras tareas más satisfactorias en sus trabajos.

¿El sistema está optimizado en tiempo real o hay algún tiempo de inactividad hasta que se actualizan los nuevos valores de configuración?

Hay algunas perillas de configuración que surten efecto inmediatamente sin tener que reiniciar el DBMS (MySQL las llama “perillas dinámicas” https://dev.mysql.com/doc/refman/8.0/en/dynamic-system-variables.html). OtterTune puede administrar estos botones sin tener que reiniciar el DBMS e incurrir en tiempo de inactividad. Sin embargo, hay otras perillas que no tienen ningún efecto hasta que se reinicia el DBMS (las llamamos “perillas estáticas”).

Desafortunadamente, todos los DBMS tienen botones estáticos. La buena noticia es que OtterTune aún puede obtener mejoras significativas sin tener que ajustarlas. Por ejemplo, vemos una mejora doble en el rendimiento (o una reducción de costos del 50%) cuando optimizamos solo las perillas dinámicas para el punto de referencia TPC-C en Postgres que se ejecuta en Amazon RDS.

Cuando configura OtterTune, se le indica si desea reiniciar el DBMS o no. Con base en esta selección, OtterTune sabe si está permitido ajustar las perillas que requieren un reinicio o si solo es necesario ajustar las perillas dinámicas.

Parece prometedor. La herramienta se lanzó oficialmente el 12 de mayo.

ottertunesq

Marc Gomez
Vine a por tabaco y ya me quedé aquí. Cuando no estoy en el sótano de Tecnopasion suelo pasear por las calles de Barcelona.
RELATED ARTICLES

Dejar respuesta

Please enter your comment!
Please enter your name here