Configuración, copia de seguridad y conmutación por error de bases de datos
Muchas aplicaciones web contienen algún tipo de persistencia, generalmente en forma de base de datos
Tabla 1: Soluciones de bases de datos relacionales y no relacionales
Soluciones de bases de datos relacionales | Soluciones NoSQL | |
---|---|---|
Servicio de base de datos administrada |
Amazon RDS for MySQL |
Amazon DynamoDB |
Autoadministrada | Alojamiento de un sistema de administración de bases de datos relacionales (DBMS) en una instancia de Amazon EC2 |
Alojamiento de una solución de base de datos no relacional en una instancia de EC2 |
Amazon RDS
Amazon Relational Database Service
Las implementaciones Multi-AZ de Amazon RDS aumentan la disponibilidad de la base de datos y la protegen contra interrupciones imprevistas. Las réplicas de lectura de Amazon RDS proporcionan réplicas de solo lectura de su base de datos, por lo que puede escalarlas horizontalmente más allá de la capacidad de implementación de una base de datos única para cargas de trabajo de bases de datos con operaciones de lectura intensiva. Al igual que en todos los servicios de AWS, no es necesario realizar inversiones iniciales y solo se pagan los recursos que se utilizan.
Alojamiento de un sistema de administración de bases de datos relacionales (RDBMS) en una instancia de Amazon EC2
Además de la oferta administrada de Amazon RDS, puede instalar la RDBMS que elija (por ejemplo, MySQL, Oracle, SQL Server o DB2) en una instancia de EC2 y administrarla usted mismo. Los clientes de AWS que alojan una base de datos en Amazon EC2 utilizan de forma eficaz una gran variedad de modelos de replicación y primarios/en espera, incluida la duplicación para copias de solo lectura y el envío de registros para esclavos pasivos que siempre están preparados.
Al administrar su propio software de base de datos directamente en Amazon EC2, también debe tener en cuenta la disponibilidad de almacenamiento persistente y tolerante a errores. Para ello, recomendamos que las bases de datos que se ejecutan en Amazon EC2 utilicen volúmenes de Amazon Elastic Block Store
Para las instancias de EC2 que ejecutan una base de datos, debe colocar todos los datos y registros de la base de datos en volúmenes de EBS. Seguirán estando disponibles aunque el host de la base de datos falle. Esta configuración sirve en un escenario de conmutación por error sencillo, en el que se puede lanzar una nueva instancia de EC2 si se produce un error en un host y los volúmenes de EBS existentes se pueden conectar a la nueva instancia. La base de datos puede continuar donde se quedó.
Los volúmenes de EBS proporcionan redundancia de forma automática dentro de la zona de disponibilidad. Si el rendimiento de un solo volumen de EBS no es suficiente para las necesidades de sus bases de datos, los volúmenes se pueden fragmentar para aumentar el rendimiento de las operaciones de entrada/salida por segundo (IOPS) de su base de datos.
Para cargas de trabajo exigentes, también puede usar IOPS aprovisionadas de EBS, donde especifica las IOPS que necesita. Si usa Amazon RDS, el servicio administra su propio almacenamiento para que pueda concentrarse en administrar sus datos.
Bases de datos no relacionales
Además de admitir bases de datos relacionales, AWS también ofrece varias bases de datos no relacionales administradas:
-
Amazon DynamoDB
es un servicio de base de datos NoSQL completamente administrado que ofrece un rendimiento rápido y predecible, así como una escalabilidad perfecta. Con la AWS Management Console o la API de DynamoDB, puede aumentar o reducir la capacidad sin ningún tiempo de inactividad ni una degradación del rendimiento. Dado que DynamoDB se encarga de las cargas administrativas que suponen operar y escalar bases de datos distribuidas en AWS, no tiene que preocuparse por el aprovisionamiento, la instalación y la configuración del hardware, la replicación, la aplicación de revisiones de software o el escalado de clústeres. -
Amazon DocumentDB
(compatible con MongoDB ) es un servicio de base de datos creado específicamente para la administración de datos JSON a escala, completamente administrado, que se ejecuta con AWS y que está preparado para empresas con alta durabilidad. -
Amazon Keyspaces
(para Apache Cassandra ) es un servicio de base de datos administrado, de alta disponibilidad y escalable compatible con Apache Cassandra. Con Amazon Keyspaces, puede ejecutar las cargas de trabajo de Cassandra en AWS con las mismas herramientas para desarrolladores y el mismo código de aplicación de Cassandra que utiliza en la actualidad. -
Amazon Neptune
es un servicio de base de datos de grafos rápido, fiable y completamente administrado que le permite crear y ejecutar fácilmente aplicaciones que funcionen con conjuntos de datos fuertemente conectados. El núcleo de Amazon Neptune es un motor de bases de datos de grafos de alto rendimiento diseñado expresamente y optimizado para almacenar miles de millones de relaciones y consultar gráficos con una latencia de milisegundos. -
Amazon Quantum Ledger Database (Amazon QLDB)
es una base de datos de libro mayor completamente administrada que ofrece un registro de transacciones transparente e inmutable, que se puede verificar de manera criptográfica y que es propiedad de una autoridad central de confianza. QLDB puede utilizarse para registrar cada uno de los cambios que se producen en los datos de las aplicaciones y mantener un historial completo y verificable. -
Amazon Timestream
es un servicio de bases de datos de serie temporal rápido, escalable y sin servidor para aplicaciones operativas y de IoT que facilita el almacenamiento y el análisis de billones de eventos al día hasta 1000 veces más rápido y por tan solo una décima parte del coste que las bases de datos relacionales.
Además, puede utilizar Amazon EC2 para alojar otras tecnologías de bases de datos no relacionales con las que esté trabajando.