AWS Database Services Fundamentos
John Bulla
Posted on October 3, 2021
Nota: ✋ Este post se publicó originalmente en mi blog wiki-cloud.co
Una base de datos es una colección de información que está organizada de manera que se pueda acceder, administrar y actualizar fácilmente. Las bases de datos informáticas suelen contener conjuntos de registros o archivos de datos, que contienen información sobre transacciones de ventas o interacciones con clientes específicos. Las bases de datos son importantes sistemas de back-end que se utilizan para almacenar, administrar, actualizar y analizar datos para todo tipo de aplicaciones, desde pequeños sistemas de back-office hasta aplicaciones web móviles y de consumo con escala global. La mayoría de las bases de datos utilizan lenguaje de consulta estructurado (SQL) para escribir y consultar datos.
Las bases de datos han evolucionado dramáticamente desde su inicio a principios de los años sesenta. Las bases de datos de navegación, como la base de datos jerárquica (que se basaba en un modelo similar a un árbol y solo permitía una relación de uno a muchos), y la base de datos de red (un modelo más flexible que permitía múltiples relaciones), eran los sistemas originales utilizados para almacenar y manipular los datos. Aunque simples, estos primeros sistemas eran inflexibles. En la década de 1980, las bases de datos relacionales se hicieron populares, seguido de bases de datos orientadas a objetos en los años noventa. Más recientemente, surgieron las bases de datos NoSQL como respuesta al crecimiento de internet y la necesidad de una mayor velocidad y procesamiento de datos no estructurados. Hoy, las bases de datos en la nube y las bases de datos independientes están abriendo nuevos caminos en cuanto a cómo se recopilan, almacenan, administran y utilizan los datos.
De acuerdo a su tipo, las bases de datos se pueden clasificar como bases de datos relacionales y no relacionales. Las bases de datos relacionales se popularizaron en los años ochenta, los elementos de una base de datos relacional se organizan como un conjunto de tablas con columnas y filas. La tecnología de base de datos relacional proporciona la manera más eficiente y flexible de acceder a información estructurada. Las bases de datos NoSQL o no relacionales, permite que los datos no estructurados y semiestructurados se almacenen y manipulen, a diferencia de una base de datos relacional, que define cómo deben componerse todos los datos insertados en la base de datos. Las bases de datos NoSQL se hicieron populares a medida que las aplicaciones web se hacían más comunes y complejas.
Las bases de datos también se pueden clasificar de acuerdo a su tipo de carga de trabajo en bases de datos de tipo operacional (OLTP – Procesamiento de Transacciones en Línea) o bases de datos de tipo analítico (OLAP – Procesamiento Analítico en Línea). Los sistemas OLTP son bases de datos orientadas al procesamiento de transacciones. Una transacción genera un proceso atómico (que debe ser validado con un commit, o invalidado con un rollback), y que puede involucrar operaciones de inserción, modificación y borrado de datos. El proceso transaccional es típico de las bases de datos operacionales. Los sistemas OLAP son bases de datos orientadas al procesamiento analítico. Este análisis suele implicar, generalmente, la lectura de grandes cantidades de datos para llegar a extraer algún tipo de información útil que sirve para la toma de decisiones como por ejemplo tendencias de ventas, patrones de comportamiento de los consumidores, elaboración de informes complejos, etc.
AWS ofrece una amplia variedad de servicios de bases de datos personalizadas para implementar en sus casos de uso de aplicaciones específicas. Los servicios de bases de datos completamente administrados incluyen bases de datos relacionales para aplicaciones de transacciones, bases de datos no relaciones para aplicaciones de escala de Internet, un data warehouse para análisis, un almacén de datos en memoria para almacenamiento en caché y cargas de trabajo en tiempo real, y una base de datos de grafos para crear aplicaciones con datos fuertemente conectados. Con AWS Database Migration Service, migrar bases de datos existentes a AWS es fácil y rentable.
Las bases de datos de AWS se diseñaron desde cero para admitir las demandas de escala, rendimiento y disponibilidad de las aplicaciones modernas distribuidas a nivel mundial con arquitecturas de microservicios.
AWS ofrece 15 motores de base de datos y sigue creciendo, incluidos tipos relacionales y no relacionales para cada necesidad de aplicación. A continuación se describen los tipos de bases de datos de AWS:
Relacional
Descripción: Las bases de datos relacionales almacenan datos con esquemas predefinidos y relaciones entre ellos. Estas bases de datos están diseñadas para admitir transacciones ACID y mantener la integridad referencial y una fuerte consistencia de datos.
Casos de Usos: Aplicaciones tradicionales, ERP, CRM y e-commerce
Servicios de AWS: Amazon Aurora, Amazon RDS, Amazon Redshift
Clave Valor
Descripción: Las bases de datos de clave-valor están optimizadas para patrones de acceso comunes, generalmente para almacenar y recuperar grandes volúmenes de datos. Estas bases de datos ofrecen tiempos de respuesta rápidos, incluso en volúmenes extremos de solicitudes concurrentes.
Casos de Usos: Aplicaciones web de alto tráfico, sistemas de e-comercio, aplicaciones de juegos
Servicios de AWS: Amazon DynamoDB
En memoria
Descripción: Las bases de datos en memoria se utilizan en aplicaciones que requieren acceso en tiempo real a los datos. Al almacenar los datos directamente en la memoria, estas bases de datos proporcionan una latencia de microsegundos cuando la latencia de milisegundos no es suficiente.
Casos de Usos: Almacenamiento en caché, gestión de sesiones, marcadores de juegos, aplicaciones geoespaciales
Servicios de AWS: Amazon ElastiCache for Memcached, Amazon ElastiCache for Redis, Amazon MemoryDB for Redis
Documento
Desscripción: Una base de datos para documentos está diseñada para almacenar datos semiestructurados como documentos similares a JSON. Estas bases de datos ayudan a los desarrolladores a crear y actualizar aplicaciones rápidamente.
Casos de Usos: Gestión de contenidos, catálogos, perfiles de usuario
Servicios de AWS: Amazon DocumentDB (compatible con MongoDB)
Columna ancha
Descripción: Una base de datos de columna ancha es un tipo de base de datos NoSQL. Utiliza tablas, filas y columnas, pero a diferencia de una base de datos relacional, los nombres y formatos de las columnas puede variar de una fila a otra en la misma tabla.
Casos de Usos: Aplicaciones industriales de gran escala para el mantenimiento de equipos, la administración de flotas y la optimización de la ruta.
Servicios de AWS: Amazon Keyspaces (para Apache Cassandra)
Grafos
Descripción: Las bases de datos para grafos se utilizan en aplicaciones que deben permitir a millones de usuarios consultar las relaciones entre conjuntos de datos altamente conectados, así como navegar por ellas, con una latencia de milisegundos.
Casos de Usos: Detección de fraudes, redes sociales y motores de recomendaciones
Servicios de AWS: Amazon Neptune
Series temporales
Descripción: Las bases de datos de series temporales recopilan, sintetizan y derivan información de manera eficiente a partir de datos que cambian con el tiempo y con consultas que abarcan intervalos de tiempo.
Casos de Usos: Aplicaciones de IoT, DevOps y telemetría industrial
Servicios de AWS: Amazon Timestream
Contabilidad o Libro mayor
Descripción: Las bases de datos para contabilidad se utilizan cuando se necesita una autoridad centralizada de confianza para conservar un registro de transacciones escalable, completo y criptográficamente verificable.
Casos de Usos: Sistemas de registro, cadenas de suministros, registros y transacciones bancarias
Servicios de AWS: Amazon QLDB
Estrategia para seleccionar una base de datos
La solución de base de datos óptima para un sistema varía según los requisitos de disponibilidad, coherencia, tolerancia de partición, latencia, durabilidad, escalabilidad y capacidad de consulta. Muchos sistemas utilizan diferentes soluciones de bases de datos para varios subsistemas y permiten diferentes funciones para mejorar el rendimiento. Seleccionar la solución de base de datos y las funciones incorrectas para un sistema puede reducir la eficiencia del rendimiento.
Cuando vaya a seleccionar un servicio de base de datos, considere las dimensiones y elija la que mejor se adapte a cada uno de sus requerimientos y componentes de su aplicación y arquitectura.
AWS Líder en el nuevo cuadrante mágico de Gartner
La firma de analistas de la industria Gartner ha publicado un nuevo informe, el Cuadrante Mágico para sistemas de administración de bases de datos en la nube, que nombra a AWS como líder y coloca a AWS en el puesto más alto entre los 16 proveedores evaluados en “Capacidad de ejecución”. Este informe es el primer informe analítico y de base de datos de Gartner que evalúa exclusivamente los servicios basados en la nube, duplicando su afirmación en un informe de junio de 2019 de que “El futuro del mercado de DBMS es la nube”. Más información aquí.
Capa gratuita de base de datos de AWS
💡 La capa gratuita de AWS ofrece a los usuarios la oportunidad de explorar productos de forma gratuita, con ofertas que incluyen productos que siempre son gratuitos, gratuitos durante 12 meses y pruebas gratuitas a corto plazo. AWS ofrece la selección más amplia de bases de datos especialmente diseñadas, lo que le permite ahorrar, crecer e innovar más rápido.
💡 Cree soluciones de bases de datos utilizando estas ofertas de productos de la capa gratuita de AWS.
💡 Para obtener información actualizada de los servicios de base de datos de AWS los invito a seguir su página “AWS Databases & Analytics” en Linkedin.
Posteriomente se profundizaran sobre cada uno de los servicios de bases de datos de AWS. Espero esta información sea de utilidad !!
Síguenos:
👉Wiki Cloud | 👉Twitter | 👉LinkedIn | 👉Youtube
Posted on October 3, 2021
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.