Al elegir una base de datos para gestionar tu organización, se deben tener en cuenta muchos factores. ¿Proporciona el rendimiento, la escala y la disponibilidad necesarios? ¿Proporciona flexibilidad y eficiencia al admitir todas las cargas de trabajo empresariales? ¿Permite la innovación con herramientas integradas de aprendizaje automático, análisis avanzado y desarrollo de aplicaciones?
Las organizaciones requieren un amplio conjunto de capacidades en sus aplicaciones para ofrecer el nivel de servicio que tus clientes esperan en un entorno empresarial en constante cambio. Decidir dónde implementar las bases de datos que admiten una cartera de aplicaciones es crucial, ya que hay ventajas y desventajas para cada opción de implementación.
A la hora de decidir dónde ubicar las bases de datos que necesita tu organización, es importante tener en cuenta el tipo de aplicaciones que admite cada base de datos, los flujos de datos entre las bases de datos y las aplicaciones y el nivel de criticidad de cada base de datos. Las principales aplicaciones empresariales necesitan mayores niveles de rendimiento, escalabilidad, disponibilidad y seguridad. Independientemente de la ubicación en la que se ejecuten estas bases de datos, deben proporcionar capacidades clave, entre las que se incluyen las siguientes:
Además de estas funciones básicas de la base de datos, la plataforma de implementación permite o restringe su uso. Sin embargo, las bases de datos empresariales deben tener una alta disponibilidad incorporada a nivel de software y hardware para soportar operaciones 24/7. La recuperación en caso de catástrofe también es fundamental, sobre todo cuando nos enfrentamos a organizaciones dispersas geográficamente y a amenazas de ransomware. Y, aunque muchas personas lo pase por alto, el alto rendimiento es crucial, ya que permite a las aplicaciones críticas para el negocio admitir las transacciones de gran volumen y los análisis necesarios para respaldar el crecimiento.
Por ejemplo, una empresa minorista que necesita permitir muchas transacciones de clientes y ejecutar informes casi en tiempo real con los datos actuales puede optar por una solución de base de datos convergente en la nube, mientras que un banco que requiere el máximo nivel de seguridad y residencia de datos puede necesitar una solución que se ejecute en su propio centro de datos.
Las empresas deben estudiar no sólo qué bases de datos se adaptan mejor a sus necesidades, sino también dónde implementarlas. Estas opciones están interrelacionadas, porque puede que una base de datos concreta sólo funcione en una ubicación, o que la plataforma en la que se ejecuta en una ubicación sea muy superior a la plataforma disponible en otra ubicación. Una forma sencilla de combinarlas es ver si la base de datos preferida puede ejecutarse en la ubicación o ubicaciones deseadas, por ejemplo, en la nube pública, en un centro de datos privado, en una nube dentro del centro de datos o en un entorno periférico.
La implementación de bases de datos en centros de datos de clientes ofrece varias ventajas. Las bases de datos están físicamente cerca de otros sistemas, aplicaciones, recursos de datos y usuarios, por lo que se puede acceder a los datos con baja latencia. En un centro de datos local, las bases de datos y la infraestructura están totalmente bajo el control del cliente, lo que satisface los requisitos de residencia de datos, así como muchas de las mejores prácticas del sector. Algunas prácticas empresariales también requieren el uso de un modelo financiero de gastos de capital (CapEx), que se facilita con la implementación de recursos en los centros de datos de los clientes. Este enfoque requiere un administrador de base de datos (DBA) para gestionar la infraestructura de hardware subyacente, así como la base de datos.
Este planteamiento tiene dos vertientes:
Para muchas organizaciones, ejecutar sus bases de datos en una nube pública es una opción atractiva. Tiene la ventaja de ser rápido de aplicar, sin necesidad de capital inicial. Las nubes públicas también ofrecen cierto nivel de infraestructura y gestión de software. La implementación en una nube pública no requiere ninguna inversión en espacio de centro de datos, maquinaria o personal de operaciones de hardware, lo que puede reducir los costos. Además, los usuarios pueden crear bases de datos en cuestión de minutos, ya que no es necesario instalar y gestionar por separado todos los componentes de hardware y software para ejecutar la base de datos. El enfoque de nube pública permite a los clientes aprovechar fácilmente recursos adicionales o diferentes con el tiempo a medida que evolucionan las cargas de trabajo.
A la hora de utilizar una nube pública, las organizaciones pueden adoptar distintos enfoques y hacer concesiones en cada uno de ellos. Estas diferentes aproximaciones son la implementación en Infrastructure-as-a-Service (IaaS), Platform as-a-Service (PaaS), entornos multicloud, nubes públicas en centros de datos de clientes y nubes privadas.
Uno de los enfoques consiste en crear un entorno de base de datos en la nube sobre una infraestructura virtualizada o «bare-metal» y, a continuación, gestionar esa infraestructura como si estuviera en las instalaciones. Esto permite adaptar la infraestructura exactamente como se desee y elimina la necesidad de gestionar hardware y, potencialmente, software de virtualización. Para gestionar esta implementación de forma continuada se necesita un tiempo considerable del DBA y experiencia en gestión de sistemas.
Existen razones específicas para elegir este enfoque:
La implementación de bases de datos en entornos IaaS puede ser la mejor opción para las organizaciones que utilizan bases de datos muy especializadas, en particular para las que son pequeñas, tienen pocas probabilidades de crecer y están estrechamente integradas con las aplicaciones.
También conocido como base de datos como servicio (DBaaS), este tipo de servicio en nube proporciona el software de cálculo, almacenamiento y base de datos que los clientes necesitan para ejecutar una base de datos. Algunos de estos servicios eliminan la necesidad de que los administradores de bases de datos instalen o gestionen hardware físico, instalen software o configuren la base de datos. Un entorno DBaaS permite a los usuarios aprovisionar bases de datos en cuestión de minutos, elimina el trabajo de gestión del sistema y, a menudo, reduce la cantidad de administración de bases de datos necesaria. Existen varias opciones para la implementación de bases de datos en un entorno DBaaS:
Dentro de los enfoques de base de datos convergente y base de datos autónoma, las organizaciones pueden utilizar varios tipos diferentes de infraestructura:
Más allá de la elección de la implementación, las opciones de bases de datos convergentes y autónomas pueden ajustarse para soportar tipos específicos de cargas de trabajo sin dejar de admitir el resto de cargas de trabajo. Algunos de estos tipos de carga de trabajo incluyen:
La implementación de bases de datos en entornos PaaS puede ser lo mejor para las organizaciones que desean minimizar las operaciones de infraestructura y gestión de bases de datos o que buscan reducir los costos generales consolidando la infraestructura para cientos o miles de bases de datos. Las bases de datos autónomas en entornos PaaS aportan la ventaja añadida de eliminar prácticamente la gestión de bases de datos en sí, lo que permite a los equipos de gestión de datos centrarse en los esquemas, los datos y los usuarios en lugar del software de base de datos subyacente.
Las grandes empresas que necesitan ejecutar cientos de aplicaciones han descubierto que lo mejor es utilizar varias nubes. Para algunas necesidades empresariales, la solución que proporciona la mayor funcionalidad, el mayor rendimiento y el menor coste puede requerir la distribución de la pila de aplicaciones y bases de datos en varias nubes en lo que se conoce como entorno multicloud.
En los entornos multicloud, es habitual que el nivel de aplicación se ejecute en una nube (posiblemente porque sólo se ejecuta allí) mientras que el nivel de base de datos se ejecuta en una nube diferente que ofrece mayor rendimiento, mayor escala o menores costos que la nube en la que se ejecuta el nivel de aplicación. En estos entornos, es fundamental que los centros de datos en la nube de cada proveedor estén situados relativamente cerca unos de otros para minimizar la latencia que puede reducir el desempeño de las aplicaciones.
También es importante que los diferentes proveedores de nube utilizados en una arquitectura multinube tengan una relación estratégica con políticas de soporte comunes para identificar y resolver cualquier problema que surja y minimizar los costos de salida de datos para cada nube.
La implementación de bases de datos en un entorno multicloud puede ser lo mejor para las organizaciones que necesitan una base de datos empresarial (o quizá autónoma) de alto rendimiento y deben poder utilizar aplicaciones que no están fácilmente disponibles en la misma nube.
Muchos requisitos empresariales o normativas gubernamentales exigen que los datos de una empresa residan dentro de su centro de datos o dentro de los límites geográficos del país en el que reside. Para lograr estos objetivos, las organizaciones pueden implementar recursos de nube pública dentro de su centro de datos con el proveedor de la nube gestionando la infraestructura y, dependiendo del servicio, las bases de datos. Este enfoque proporciona el valor y las ventajas de la nube, incluido un servicio basado en suscripción a la nube pública que cumple los requisitos de residencia, seguridad y residencia de datos. Este modelo de nube local como suscripción (LCaaS) ofrece la gestión automatizada que proporciona la nube, el alto rendimiento de la infraestructura dedicada y los beneficios de eficiencia de la consolidación. Los clientes pueden aumentar o reducir su consumo según cambien las cargas de trabajo durante el día o a lo largo del tiempo. La implementación en un servicio de nube pública en los centros de datos del cliente ofrece muchas ventajas, entre ellas las siguientes:
Algunas de estas soluciones permiten la implementación de una base de datos autónoma en recursos de nube pública en centros de datos de clientes, lo que a su vez permite a las organizaciones beneficiarse de la ampliación, el aprovisionamiento, la aplicación de parches y la gestión de fallas automatizadas que proporcionan esas bases de datos. Estas avanzadas capacidades de automatización aumentan la disponibilidad y la seguridad de los datos al eliminar los errores humanos, al tiempo que reducen los costes con una economía de consumo de pago por uso.
La implementación de bases de datos en recursos de nubes públicas en los centros de datos de los clientes es lo mejor para las organizaciones que tienen requisitos de residencia y seguridad de los datos que no se pueden cumplir en las regiones de nubes públicas. Este enfoque también puede ser el mejor para las empresas que desean beneficiarse de la automatización de la nube y de los precios de las bases de datos de pago por uso, sin dejar de ejecutar las aplicaciones en los recursos existentes en sus centros de datos.
Históricamente, las bases de datos se implementaban en una infraestructura compartida en centros de datos de clientes. Esta infraestructura ejecutaba aplicaciones, middleware y bases de datos en una infraestructura diseñada para ofrecer un buen rendimiento y disponibilidad, pero era costosa y no ofrecía ninguna optimización del rendimiento específica para las bases de datos.
Más recientemente, este enfoque compartido ha dado paso al concepto de una nube de base de datos privada en la que la infraestructura local dedicada se ajusta específicamente para ejecutar bases de datos de forma ideal. Estas nubes privadas de bases de datos son propiedad de la empresa que las utiliza y están gestionadas por ella, lo que tiene la ventaja de permitir niveles extremadamente altos de consolidación de bases de datos con múltiples versiones de bases de datos funcionando en la misma infraestructura. Estas plataformas cuentan con altos niveles de automatización integrada para garantizar que cada base de datos obtiene los recursos que necesita para cumplir los SLA de rendimiento, al tiempo que priorizan las actividades sensibles a la latencia de las aplicaciones cruciales para ayudar a garantizar que se ejecutan con el mayor desempeño posible.
Ejecutar bases de datos en una nube privada puede ser el mejor enfoque para organizaciones con altos niveles de personalización e interconexión de bases de datos y aplicaciones. Para la mayoría de las aplicaciones, las nubes de bases de datos privadas parecen indistinguibles de las implementaciones de bases de datos locales heredadas, por lo que adoptarlas puede ser el enfoque más sencillo para empezar a migrar a la nube.
En la mayoría de las organizaciones, no se trata de elegir entre implementar las bases de datos en la nube o en sus propios centros de datos: hacen ambas cosas y necesitan que los dos entornos funcionen juntos. Hay muchos casos en los que los clientes tendrán que implementar en entornos de nube híbrida. Por ejemplo, muchas compañías desarrollan aplicaciones en un lugar y las implementan en otro. O una empresa puede tener aplicaciones que soporten operaciones remotas ejecutándose en la nube pública mientras que las operaciones centralizadas se ejecutan en sus centros de datos.
Para minimizar la carga de trabajo de TI, uno de los requisitos clave para la implementación de bases de datos en entornos de nube híbrida es que el software de la base de datos y el hardware en el que se ejecuta ofrezcan las mismas capacidades, gestión y seguridad en todos los entornos. Los entornos con altos niveles de idoneidad reducen el esfuerzo necesario para trasladar las bases de datos y las aplicaciones a diferentes ubicaciones y gestionarlas de forma coherente.
Las organizaciones deben seleccionar un proveedor en la nube que ofrezca una solución completa e integrada, con un amplio conjunto de capacidades de base de datos convergentes y altos niveles de idéntica infraestructura que permitan la implementación siempre que sea necesaria. Una solución de este tipo ayuda a garantizar que puedan cumplir los requisitos de flexibilidad, escalabilidad y crecimiento al tiempo que mantienen costos bajos.