EMC XtremIO Database Storage. Nuevos modos de eficiencia (es)

Questo post è anche disponibile in italiano

Uno de los casos más interesantes de utilización de XtremIO se relaciona con el ahorro de costes en el mundo de las bases de datos (DB).

Breve análisis de la situación actual: en muchos de los entornos IT  de hoy en día, con los storage  “tradicionales “,  las bases de datos muchas veces no funcionan  a pleno rendimiento y por lo tanto no ofrecen la relación coste / rendimiento que los clientes demandan.  Los requisitos de los DB actuales son: una baja latencia, rendimientos elevados  y un througput adecuado. Poder contar con un  ambiente de baja latencia es algo extremadamente ventajoso cuando se combina con otras características avanzadas importantes.

En este post se  analizarán aspectos como la clonación, la facilidad de uso, el licensing  y su significado para el ahorro de costes en el mundo de las bases de datos (DB).

 

EMC XtremIO Databases DB Challenges
EMC XtremIO Databases DB Challenges

Antes de empezar voy a introducir un par de conceptos que serán utiles para comprender mejor algunos de los argumentos del documento ; “service time” y “wall-clock-time”.

“Service time”: cuando un proceso (DB) debe esperar para interactuar con el storage, el “wall-clock-time” se desperdicia, esto significa pérdida de dinero y tiempo que no puede ser recuperado.

El “wall-clock-time ” se refiere al tiempo efectivo que un host necesita para completar una determinada tarea.  El “wall-clock-time” es la suma de tres términos;  tiempo de CPU, tiempo de I/O más el retardo de comunicación en el canal, por ejemplo, si los datos se transmiten a través de múltiples máquinas.  A diferencia del tiempo de CPU, que mide sólo el tiempo durante el cual el procesador está trabajando activamente en una tarea,  el “wall-clock-time ” mide el tiempo total para completar el proceso. La diferencia entre los dos es el tiempo debido a retrasos programados o en espera de recursos que tienen que estar disponibles, en nuestro caso, nos referimos al componente de almacenamiento de datos (storage).

Clonación / snaps: Una práctica habitual en el mundo DB es que a menudo hay muchas copias del mismo entorno.  Normalmente múltiples copias son requeridas para la producción, con el propósito de hacer copias de back-up, así como copias para entornos de prueba y desarrollo. En XtremIO la magia de la “reducción de datos de línea” (“data reduction”)  combinada con una técnica única que le permite realizar copias de la base de datos sin necesidad de utilizar espacio sobre los discos flash, es un aspecto clave cuando se refiere al ahorro de costes.  Poder configurar y soportar al mismo tiempo entornos de producción,  prueba y desarrollo en un mismo array es, con XtremIO,  mucho más fácil de lo que ha sido nunca antes. Con XtremIO es posible copiar (clonar) una base de datos a una velocidad vertiginosa, porque en realidad sólo es necesario mover metadatos (referencia en memoria a los bloques de datos de los SSDs).

EMC XtremIO Databases DB Cloning
EMC XtremIO Databases DB Cloning

 

Es importante notar que hacer copias del entorno del DB de producción para otros usos no implica un aumento de costes con la tecnología XtremIO. Para evitar de incurrir en mayores costos sobre el ambiente principal (normalmente más costoso) hoy en día muchos clientes se ven obligados a comprar otros entornos de almacenamiento donde instalar las bases de datos para pruebas y desarrollo. Este enfoque implica tener que introducir en estos ambientes servidores y licencias para el DB. La tecnología de “cloning” de  XtremIO combinada con la “data-reduction” en línea significa que los clientes pueden ahora utilizar las copias instantáneas (snap) para todos los DB (producción, pruebas, desarrollo) almacenados en el mismo storage con el subsecuente ahorro en la compra de otro storage, más capacidad de almacenamiento, nuevos servidores o licencias DB adicionales.

Facilidad de uso: XtremIO está inherentemente optimizado para dar el máximo rendimiento sin la necesidad de ningún tuning  específico. Es suficiente asignar una LUN al sistema para obtener el máximo rendimiento que el array puede ofrecer utilizando en modo uniforme todos  los controladores de todas las unidades flash. La eliminación de la complejidad de la configuración y puesta a punto (tuning) de una base de datos en XtremIO permiten una puesta en ejercicio (rollout) mucho más fácil, lo que facilita hacer frente a futuros cambios en la carga de trabajo. Si el número de usuarios aumenta, o si el modo de acceso (workload) cambia con el tiempo, XtremIO continuará a proporcionar un alto rendimiento sin ninguna intervención del administrador. Esta facilidad de instalación y gestión es un aspecto muy importante a considerar en el ahorro de costes.

EMC XtremIO Databases DB Management
EMC XtremIO Databases DB Management

En un sistema storage híbrido (discos FC y unidades de memoria flash), no todos los datos están en los dispositivos más veloces, de consecuencia, cuando se accede a los datos almacenados en los discos FC se obtienen tiempos de respuesta del orden algunos milisegundos. Contrariamente con XtremIO es posible garantizar siempre que los tiempos de repuesta serán en el rango de sub-milisegundos para todos los datos y para cualquier tipo de acceso.

EMC XtremIO Databases DB Performance
EMC XtremIO Databases DB Performance

En los entornos de almacenamiento (storage) tradicionales, el provisioninig de una base de datos requiere una cuidadosa planificación en la colocación de las LUN en base a las características de acceso. Se debe tener en cuenta las LUN para los datos, las LUN para los log, las LUN para el área temporal, y así sucesivamente. El gran ancho de banda y la baja latencia XtremIO para cualquier tipo de acceso hacen independiente  el posicionamiento de las LUN de las características de I/O, lo que simplifica radicalmente las tareas de aprovisionamiento que se pueden hacer en solo tres sencillos pasos.

Todos los DB tienen una mezcla diferente de tipos de I/O, por ejemplo, en los DB de tipo OLTP (transactional) se efectúa un gran número de I/O utilizando bloques pequeños mientras que en los DB de tipo DWH/DSS (analytics) se observa un I/O con bloques más grandes. Estas diferentes características hacen que los administradores de las bases de datos tengan que continuamente analizar en modo detallado cual tipo de LUN utilizar para cada objeto del DB. La cosa es todavía más complicada porque el comportamiento del DB, en lo que se refiere al tipo de acceso, puede cambiar con el tiempo. Muchas veces esta actividad lleva a una distribución inadecuada de los datos.

Además de esto, generalmente es muy difícil identificar las cargas de trabajo que son puramente OLTP. Por ejemplo, en casi todos los entornos OLTP hay también necesidad de hacer reporting, actividad más orientada al análisis que a la transacción. Consideremos un dispositivo con un rendimiento predecible y consistente en el tiempo como XtremIO, con una baja latencia y un alto ancho de banda se pueden realizar diferentes tipos de carga de trabajo, OLTP o DWH al mismo tiempo, sin las restricciones impuestas por las características de I/O.

Ahora pensemos en una nueva aplicación que estamos desarrollando y que después de un tiempo que decidimos de ponerla en producción termina por ser una aplicación “mission critical”. En este caso la aplicación será cada vez más utilizada y aumentará el número de accesos. El “sizing” inicial al que habíamos pensado no podrá garantir el rendimiento deseado. Ahora el elevado número de usuarios se convierte en un cuello de botella para la aplicación y es necesario revisar la arquitectura.

 

EMC XtremIO Databases DB Advantages
EMC XtremIO Databases DB Advantages

En los storage convencionales este escenario tiene dos aspectos a tener en cuenta:

  1. A veces los datos pueden estar muy dispersos (distribuidos en diferentes puntos del back-end)
  2. Los datos pueden ser muy densos (es decir, concentrados en unas pocas áreas del back-end).

En el primer caso habrá mucho “tiempo de búsqueda” (seek time) en los discos, mientras que en el segundo caso, se crearán “puntos calientes (hot spot).

XtremIO es inmune a estos problemas ya que tiene una arquitectura que se basa en el conocimiento de contenido (“content awareness”)  y por esta razón los datos se almacenan y se distribuye en el array de una manera simétrica y equilibrada. Digamos que no es el hecho de tener discos flash en un entorno lo que soluciona el problema, es XtremIO que hace esto posible.

Examinemos en la parte final de este post come ahorrar en costes para entornos de DB; o sea hablemos del licensing,  un aspecto importante  a tener en cuenta.

XtremIO realmente puede ayudar disminuir los costos de licencias de base de datos. La forma en la cual XtremIO puede hacer esto es a través de su extraordinario rendimiento. Cuando se utiliza un dispositivo de almacenamiento convencional se obtienen latencias mucho más altas en comparación a las que pueden ser obtenidas con XtremIO. Los servidores de la base de datos a menudo “esperan” una respuesta de I/O del storage y este tiempo de espera no es un tiempo productivo. En estos casos, por lo tanto, es necesario disponer de un elevado número de CPU y “core” para compensar este tiempo de inactividad.
Con XtremIO el tiempo de respuesta es tan rápido que las CPU no permanecen en espera y el tiempo de inactividad de la CPU se reduce considerablemente. Esto significa que puede hacer la misma cantidad de trabajo con menos CPU core.

Muchas empresas hacen pagar su base de datos en base al número de core en los que se está ejecutando el software. Gracias a XtremIO es posible contar con un menor número de core para realizar el mismo trabajo con el consiguiente ahorro de licencias de base de datos.

Siempre es importante recordar que en los cálculos de baja latencia, los ciclos de procesamiento principal son un aspecto que tenemos que mantener bajo control. Utilizar ciclos de CPU para actividades como la extracción de datos o para crear copias significa un costo. La licencias de base de datos deberían  ser utilizados sólo para tareas transaccionales y no para extraer los datos.

Por supuesto, tener las CPU inactivas no mejora el rendimiento y es un desperdicio de dinero.

 

EMC XtremIO Databases DB Big Picture
EMC XtremIO Databases DB Big Picture

Concluyendo: Con XtremIO, sin necesidad de ningún “tuning” particular al DB, es posible transformar completamente los ambientes de base de datos, tanto desde el punto de vista del rendimiento y facilidad de uso, como del punto de vista de los costes.

 


Para mayor información:

Database Storage. XtremIO All Flash Array


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *