

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# ¿Qué es MemoryDB?
<a name="what-is-memorydb"></a>

MemoryDB es un servicio de base de datos en memoria duradero que ofrece un rendimiento ultrarrápido. Está diseñado específicamente para aplicaciones modernas con arquitecturas de microservicios. 

Amazon MemoryDB es compatible los populares almacenes de datos de código abierto Valkey y Redis OSS, por lo que le permite crear aplicaciones rápidamente utilizando las mismas estructuras de datos, API y comandos flexibles y fáciles de usar que ya se utilizan. Con MemoryDB, todos sus datos se almacenan en la memoria, lo que le permite lograr una latencia de lectura de microsegundos y una latencia de escritura de milisegundos de un solo dígito y un alto rendimiento. MemoryDB también almacena los datos de forma duradera en varias zonas de disponibilidad (AZ) mediante un registro transaccional multizona para permitir una rápida conmutación por error, la recuperación de la base de datos y el reinicio de los nodos. 

 MemoryDB, que ofrece un rendimiento en memoria y una durabilidad en zonas de disponibilidad múltiples, se puede utilizar como base de datos principal de alto rendimiento para sus aplicaciones de microservicios, lo que elimina la necesidad de gestionar por separado tanto la caché como la base de datos duradera. 

**Topics**
+ [Características de MemoryDB](servicename-feature-overview.md)
+ [Componentes principales de MemoryDB](components.md)
+ [Servicios relacionados](related-services-choose-between-memorydb-and-redis.md)
+ [Elección de regiones y zonas de disponibilidad](regionsandazs.md)
+ [Acceso a MemoryDB](nodes-connecting.md)
+ [Seguridad de MemoryDB](memorydb-security.md)

# Características de MemoryDB
<a name="servicename-feature-overview"></a>

MemoryDB es un servicio de base de datos en memoria duradero que ofrece un rendimiento ultrarrápido. Las características de MemoryDB incluyen: 
+ Consistencia sólida para los nodos principales y consistencia final garantizada para los nodos de réplica. Para obtener más información, consulte [Coherencia](consistency.md).
+ Latencias de lectura de microsegundos y de escritura de milisegundos de un solo dígito con hasta 160 millones de TPS por clúster.
+ API y estructuras de datos flexibles y fáciles de usar de Valkey y Redis OSS. Cree nuevas aplicaciones o migre fácilmente las aplicaciones de Valkey y Redis OSS existentes prácticamente sin necesidad de modificarlas.
+ Durabilidad de los datos mediante un registro transaccional Multi-AZ que proporciona una recuperación y un reinicio rápidos de la base de datos.
+ Disponibilidad en zonas de disponibilidad múltiples (Multi-AZ) con conmutación por error automática y detección y recuperación de los fallos de los nodos. 
+ Escale fácilmente horizontalmente añadiendo y eliminando nodos o verticalmente desplazándose a tipos de nodos más grandes o más pequeños. Puede escalar el rendimiento de escritura añadiendo particiones y escalar el rendimiento de lectura añadiendo réplicas. 
+ Coherencia de lectura tras escritura para los nodos principales y coherencia final garantizada para los nodos de réplica.
+ MemoryDB admite el cifrado en tránsito, el cifrado en reposo y la autenticación de usuarios mediante [Autenticación de usuarios con listas de control de acceso () ACLs](clusters.acls.md). 
+ Instantáneas automáticas en Amazon S3 con retención de hasta 35 días.
+ Support para hasta 500 nodos y más de 100 TB de almacenamiento por clúster (con 1 réplica por partición).
+ Cifrado en tránsito con TLS y cifrado en reposo con claves de AWS KMS.
+ Autenticación y autorización de usuarios con [Autenticación de usuarios con listas de control de acceso () ACLs](clusters.acls.md) de Valkey y Redis OSS.
+ Support para tipos de instancias de AWS Graviton2. 
+ Integración con otros servicios de AWS como CloudWatch, Amazon VPC, CloudTrail y Amazon SNS para la supervisión, la seguridad y las notificaciones. 
+ Actualizaciones y parches de software totalmente gestionados. 
+ Integración de AWS Identity and Access Management (IAM) y control de acceso basado en etiquetas para API de administración. 

# Componentes principales de MemoryDB
<a name="components"></a>

A continuación encontrará información general sobre los componentes principales de una implementación de MemoryDB.

**Topics**
+ [Clústeres](#whatis.clusters)
+ [Nodos](#whatis.components.nodes)
+ [Particiones](#whatis.components.Shards)
+ [Grupos de parámetros](#whatis.components.parametergroups)
+ [Grupos de subredes](#whatis.components.subnetgroups)
+ [Listas de control de acceso](#whatis.components.acls)
+ [Users](#whatis.components.user)

## Clústeres
<a name="whatis.clusters"></a>

Un clúster es una colección de uno o varios nodos que sirven a un conjunto de datos único. Un conjunto de datos de MemoryDB se divide en particiones y cada partición tiene un nodo principal y hasta 5 nodos de réplica opcionales. Un nodo principal atiende solicitudes de lectura y escritura, mientras que una réplica solo atiende solicitudes de lectura. Un nodo principal puede realizar una conmutación por error a un nodo de réplica, lo que permite pasar esa réplica al nuevo nodo principal de esa partición. MemoryDB ejecuta Valkey o Redis OSS como motor de base de datos y, cuando se crea un clúster, se especifica la versión del motor del clúster. Puede crear y modificar un clúster mediante la AWS CLI API MemoryDB o la. Consola de administración de AWS

Cada clúster de MemoryDB ejecuta una versión del motor de Valkey o Redis OSS. Cada versión del motor tiene sus propias características compatibles. Además, cada versión del motor tiene un conjunto de parámetros en un grupo de parámetros que controla el comportamiento de los clústeres que administra.

La capacidad de cómputo y de memoria de un clúster se determina mediante su tipo de nodo. Puede seleccionar el tipo de nodo que mejor se adapte a sus necesidades. Si sus necesidades cambian con el tiempo, puede cambiar los tipos de nodo. Para obtener información, consulte [Tipos de nodos compatibles](nodes.supportedtypes.md).

**nota**  
Para obtener información sobre los precios de los tipos de nodos de MemoryDB, consulte [Precios de MemoryDB](https://aws.amazon.com/memorydb/pricing/).

El clúster se ejecuta en una nube privada virtual (VPC) mediante el servicio Amazon Virtual Private Cloud (Amazon VPC). Cuando utilice una VPC, puede controlar todos los aspectos del entorno de red virtual. Puede elegir su propio rango de direcciones IP, crear subredes y configurar listas de enrutamiento y control de acceso. MemoryDB administra las instantáneas, la aplicación de parches de software, la detección automática de errores y la recuperación. Es posible ejecutar el clúster en una VPC sin costo adicional. Para obtener más información acerca del uso de Amazon VPC con MemoryDB, consulte [MemoryDB y Amazon VPC](vpcs.md).

Muchas operaciones de MemoryDB están destinadas a los clústeres:
+ creación de un clúster
+ Modificación de un clúster
+ Tomar instantáneas de un clúster
+ Eliminación de un clúster
+ Visualización de elementos de un clúster
+ Adición o eliminación de etiquetas de asignación de costos en un clúster

Para obtener información más detallada, consulte los siguientes temas relacionados:
+ [Administración de clústeres](clusters.md) y [Administración de nodos](nodes.md)

  Información acerca de los clústeres, nodos, y operaciones relacionadas.
+ [Resiliencia en MemoryDB](disaster-recovery-resiliency.md)

  Información sobre la mejora de la tolerancia a errores de los clústeres.

## Nodos
<a name="whatis.components.nodes"></a>

Un *nodo* es el componente básico más pequeño de una implementación de MemoryDB y se ejecuta mediante una instancia de Amazon EC2. Cada nodo ejecuta la versión del motor que se eligió al crear el clúster. Un nodo pertenece a una partición que pertenece a un clúster.

Cada nodo ejecuta una instancia del motor con la versión elegida al crear el clúster. Si es necesario, puede escalar o reducir verticalmente los nodos de un clúster a un tipo diferente. Para obtener más información, consulte [Escalado](scaling.md).

Todos los nodos contenidos en un clúster son del mismo tipo. Se admiten varios tipos de nodos, cada uno con cantidades diferentes de memoria. Para ver una lista de los tipos de nodos admitidos, consulte [Tipos de nodos compatibles](nodes.supportedtypes.md).

Para obtener más información sobre los nodos, consulte [Administración de nodos](nodes.md).

## Particiones
<a name="whatis.components.Shards"></a>

Una partición es una agrupación de uno a 6 nodos, uno de los cuales actúa como nodo de escritura principal y los otros 5 como réplicas de lectura. Un clúster de MemoryDB siempre tiene al menos una partición.

Los clústeres de MemoryDB pueden tener hasta 500 particiones, con sus datos particionados en las particiones. Por ejemplo, puede elegir configurar un clúster de 500 nodos que oscila entre 83 particiones (uno primario y 5 réplicas por partición) y 500 particiones (único primario y sin réplicas). Asegúrese de que hay suficientes direcciones IP disponibles para acomodar el aumento. Algunos problemas comunes incluyen que las subredes del grupo de subredes tienen un rango CIDR demasiado pequeño o que otros clústeres comparten y utilizan considerablemente las subredes. 

Una *partición de varios nodos* implementa la reproducción al tener un nodo principal de lectura/escritura y 1 a 5 nodos de réplica. Para obtener más información, consulte [Descripción de cómo replicar en MemoryDB](replication.md).

Para obtener más información acerca de las particiones, consulte [Uso de particiones](shards.md).

## Grupos de parámetros
<a name="whatis.components.parametergroups"></a>

Los grupos de parámetros son una forma sencilla de administrar la configuración del tiempo de ejecución del motor en el clúster. Los parámetros se utilizan para controlar el uso de la memoria, los tamaños de elementos y mucho más. Un grupo de parámetros de MemoryDB es un conjunto denominado de parámetros específicos del motor que se pueden aplicar a un clúster y todos los nodos de ese clúster se configuran exactamente de la misma forma. 

Para obtener información más detallada acerca de los grupos de parámetros de MemoryDB, consulte [Configuración de los parámetros de motor mediante los grupos de parámetros](parametergroups.md).

## Grupos de subredes
<a name="whatis.components.subnetgroups"></a>

Un *grupo de subredes* es una colección de subredes (que suelen ser privadas) que puede designar para los clústeres que se ejecutan en un entorno de Amazon Virtual Private Cloud (VPC).

Al crear un clúster en una Amazon VPC, pueden especificar un grupo de subredes o utilizar el grupo predeterminado que se proporciona. MemoryDB usa dicho grupo de subredes para elegir una subred y direcciones IP pertenecientes a dicha subred para asociarlas a sus nodos.

Para obtener información más detallada sobre los grupos de subredes de MemoryDB, consulte [Subredes y grupos de subredes](subnetgroups.md).

## Listas de control de acceso
<a name="whatis.components.acls"></a>

Una lista de control de acceso es un conjunto de uno o más usuarios. Las cadenas de acceso siguen las [reglas de ACL](https://valkey.io/topics/acl) para autorizar el acceso de los usuarios a los comandos y datos de Valkey o Redis OSS.

Para obtener información más detallada sobre las listas de control de acceso de MemoryDB, consulte [Autenticación de usuarios con listas de control de acceso () ACLs](clusters.acls.md).

## Users
<a name="whatis.components.user"></a>

Un usuario tiene un nombre de usuario y una contraseña, y se utiliza para acceder a los datos y emitir comandos en su clúster de MemoryDB. Un usuario es miembro de una lista de control de acceso (ACL), que puede usar para determinar los permisos de ese usuario en los clústeres de MemoryDB. Para obtener más información, consulte [Autenticación de usuarios con listas de control de acceso () ACLs](clusters.acls.md)

# Servicios relacionados
<a name="related-services-choose-between-memorydb-and-redis"></a>

[ElastiCache](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/whatis.html) 

Al decidir si utilizar MemoryDB o ElastiCache, tenga en cuenta las siguientes comparaciones:
+ MemoryDB es una base de datos en memoria duradera para cargas de trabajo que requieren una base de datos principal ultrarrápida. Debería considerar el uso de MemoryDB si la carga de trabajo requiere una base de datos duradera que ofrezca un rendimiento ultrarrápido (lectura en microsegundos y latencia de escritura de un solo dígito en milisegundos). MemoryDB también puede ser una buena opción para el caso de uso si desea crear una aplicación mediante las estructuras de datos y las API de Valkey o Redis OSS con una base de datos principal y duradera. Por último, debería considerar el uso de MemoryDB para simplificar la arquitectura de la aplicación y reducir los costos al sustituir el uso de una base de datos por una memoria caché para aumentar la durabilidad y el rendimiento. 
+ ElastiCache es un servicio que se utiliza normalmente para almacenar en caché datos de otras bases de datos y almacenes de datos con Valkey y Redis OSS. Debería considerar ElastiCache para almacenar en caché cargas de trabajo en las que desee acelerar el acceso a los datos con la base de datos principal o almacén de datos existente (rendimiento de lectura y escritura en microsegundos). También debe considerar ElastiCache para los casos de uso en los que desee utilizar las estructuras de datos y las API de Valkey y Redis OSS para acceder a los datos almacenados en una base de datos o un banco de datos principal.

# Elección de regiones y zonas de disponibilidad
<a name="regionsandazs"></a>

AWSLos recursos de informática en la nube de se alojan en centros de datos de alta disponibilidad. Para proporcionar escalabilidad y fiabilidad adicionales, estas instalaciones de centros de datos se encuentran en ubicaciones físicas diferentes. Dichas ubicaciones están categorizadas por *regiones* y *zonas de disponibilidad*.

AWSLas regiones de son de gran tamaño y se encuentran dispersas en distintas ubicaciones geográficas. Las zonas de disponibilidad son ubicaciones concretas dentro de una región de AWS diseñadas para estar aisladas de los errores que se produzcan en las demás zonas de disponibilidad. Proporcionan conectividad de red económica y de baja latencia con las demás zonas de disponibilidad dentro de la misma región de AWS.

**importante**  
Cada región es totalmente independiente. Cualquier actividad de MemoryDB que inicie (por ejemplo, la creación de clústeres) solo se ejecutará en la región predeterminada actual.

Para crear o trabajar con un clúster de una región específica, use el punto de conexión de servicio regional correspondiente. Para obtener información acerca de los puntos de conexión del servicio, consulte [Multirregión de MemoryDB](multi-region.md).

Con Multirregión de MemoryDB puede mejorar tanto la disponibilidad como la resiliencia a la vez que se beneficia de lecturas y escrituras locales de baja latencia para aplicaciones multirregión. Para obtener información sobre cómo trabajar con Multirregión de MemoryDB, consulte [Regiones y puntos de conexión admitidos](#supportedregions).

## Ubicación de los nodos
<a name="regionsandazs.AZMode"></a>

Cualquier clúster que tenga al menos una réplica debe estar distribuido entre las AZ. La única forma de localizar todo lo que hay dentro de una única zona de disponibilidad es con un clúster compuesto por particiones de un solo nodo.

Al ubicar los nodos en distintas zonas de disponibilidad, MemoryDB elimina la posibilidad de que un fallo, como un corte del suministro eléctrico, en una zona de disponibilidad resulte en una falta de disponibilidad. 
+ [Creación de un clúster de MemoryDB](getting-started.md#clusters.create)
+ [Modificación de un clúster de MemoryDB](clusters.modify.md)

## Regiones y puntos de conexión admitidos
<a name="supportedregions"></a>

MemoryDB se encuentra disponible en varias regiones de AWS. Esto significa que puede lanzar clústeres de MemoryDB en las ubicaciones que cumplan sus requisitos. Por ejemplo, puede lanzarlos en la región de AWS más cercana a los clientes o en una región de AWS concreta que permita cumplir determinados requisitos legales. Además, cuando MemoryDB amplía su disponibilidad a una nueva región de AWS, MemoryDB admite las dos versiones `MAJOR.MINOR` más recientes en ese momento para la nueva región. Para obtener más información acerca de las versiones de MemoryDB, consulte [Versiones del motor](engine-versions.md).

De forma predeterminada, los SDK de AWS, la AWS CLI, la API de MemoryDB y la consola de MemoryDB hacen referencia a la región este de EE. UU. (Norte de Virginia). A medida que MemoryDB amplía la disponibilidad a regiones nuevas, los puntos de conexión nuevos de estas regiones también se encuentran disponibles para su uso en las solicitudes HTTP, los SDK de AWS, la AWS CLI y la consola.

Cada región se ha diseñado para que esté totalmente aislada de las demás regiones. Dentro de cada región hay varias zonas de disponibilidad. Al lanzar los nodos en zonas de disponibilidad diferentes, puede lograr la máxima tolerancia a errores. Para obtener más información acerca de las regiones y zonas de disponibilidad, consulte [Elección de regiones y zonas de disponibilidad](#regionsandazs) al comienzo de este tema.


**Regiones en las que se admite MemoryDB**  

| Nombre de la región/Región | Punto de conexión | Protocolo | 
| --- | --- | --- | 
| Región del este de EE. UU. (Ohio) `us-east-2` | `memory-db.us-east-2.amazonaws.com` | HTTPS | 
| Región del Este de EE. UU (Norte de Virginia) `us-east-1` | `memory-db.us-east-1.amazonaws.com` | HTTPS | 
| Región del Oeste de EE. UU (Norte de California) `us-west-1` | `memory-db.us-west-1.amazonaws.com` | HTTPS | 
| Región del Oeste de EE. UU (Oregón) `us-west-2` | `memory-db.us-west-2.amazonaws.com` | HTTPS | 
| Región de Canadá (centro) `ca-central-1` | `memory-db.ca-central-1.amazonaws.com` | HTTPS | 
| Región de Asia-Pacífico (Hong Kong) `ap-east-1` | `memory-db.ap-eastl-1.amazonaws.com` | HTTPS | 
| Región de Asia-Pacífico (Bombay) `ap-south-1` | `memory-db.ap-south-1.amazonaws.com` | HTTPS | 
| Asia Pacífico (Tokio) `ap-northeast-1` | `memory-db.ap-northeast-1.amazonaws.com` | HTTPS | 
| Región de Asia-Pacífico (Seúl) `ap-northeast-2` | `memory-db.ap-northeast-2.amazonaws.com` | HTTPS | 
| Región de Asia-Pacífico (Singapur) `ap-southeast-1` | `memory-db.ap-southeast-1.amazonaws.com` | HTTPS | 
| Región de Asia-Pacífico (Sídney) `ap-southeast-2` | `memory-db.ap-southeast-2.amazonaws.com` | HTTPS | 
| Región de Europa (Fráncfort) `eu-central-1` | `memory-db.eu-central-1.amazonaws.com` | HTTPS | 
| Región de Europa (Irlanda) `eu-west-1` | `memory-db.eu-west-1.amazonaws.com` | HTTPS | 
| Región de Europa (Londres) `eu-west-2` | `memory-db.eu-west-2.amazonaws.com` | HTTPS | 
| Región EU (París) `eu-west-3` | `memory-db.eu-west-3.amazonaws.com` | HTTPS | 
| Región Europa (Estocolmo) `eu-north-1` | `memory-db.eu-north-1.amazonaws.com` | HTTPS | 
| Región Europa (Milán) `eu-south-1` | `memory-db.eu-south-1.amazonaws.com` | HTTPS | 
| Región Europa (España) `eu-south-2` | `memory-db.eu-south-2.amazonaws.com` | HTTPS | 
| Región de América del Sur (São Paulo) `sa-east-1` | `memory-db.sa-east-1.amazonaws.com` | HTTPS | 
| Región China (Pekín) `cn-north-1` | `memory-db---cn-north-1.amazonaws.com.rproxy.goskope.com.cn` | HTTPS | 
| Región China (Ningxia) `cn-northwest-1` | `memory-db---cn-northwest-1.amazonaws.com.rproxy.goskope.com.cn` | HTTPS | 

Para obtener una tabla de los productos y servicios de AWS por región, consulte [Productos y servicios por región](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/).

Para ver una tabla de las zonas de disponibilidad admitidas dentro de las regiones, consulte [Subredes y grupos de subredes](subnetgroups.md).

# Acceso a MemoryDB
<a name="nodes-connecting"></a>

 Cada punto de conexión del clúster de MemoryDB contiene una dirección y un puerto. Este punto de conexión del clúster es compatible con el protocolo del clúster de Valkey y Redis OSS, que permite a los clientes descubrir los roles, las direcciones IP y las ranuras específicas de cada nodo del clúster. Cuando se produce un error en un nodo principal y se coloca una réplica en su lugar, puede conectarse al punto de conexión del clúster para detectar el nuevo nodo principal mediante el protocolo del clúster de Valkey o Redis OSS.

 Debe conectarse al punto de conexión del clúster para detectar los puntos de conexión del nodo mediante un comando **cluster nodes** o **cluster slots**. Tras encontrar el nodo correcto para una clave, puede conectarse directamente al nodo para realizar solicitudes de lectura/escritura. Un cliente de Valkey o Redis OSS puede usar el punto de conexión del clúster para conectarse automáticamente al nodo correcto. 

Para solucionar problemas de nodos específicos de un clúster, también puede utilizar puntos de conexión específicos de cada nodo, pero no son necesarios para un uso normal.

 Para encontrar el punto de conexión de un clúster, consulte lo siguiente:
+ [Búsqueda del punto de conexión para un clúster de MemoryDB (CLI de AWS)](endpoints.md#endpoints.find.cli)
+ [Búsqueda del punto de conexión para un clúster de MemoryDB (API de MemoryDB)](endpoints.md#endpoints.find.api)

Para conectarse a nodos o clústeres, consulte [Conexión a los nodos de MemoryDB mediante redis-cli](getting-started.md#connect-tls).

# Seguridad de MemoryDB
<a name="memorydb-security"></a>

La seguridad de MemoryDB se administra en tres niveles:
+ Para controlar quién puede realizar acciones de administración en clústeres y nodos de MemoryDB, se usa AWS Identity and Access Management (IAM). Cuando se conecta a AWS con credenciales de IAM, la cuenta de AWS debe tener políticas de IAM que concedan los permisos necesarios para realizar operaciones. Para obtener más información, consulte [Administración de identidades y accesos en MemoryDB](iam.md)
+ Para controlar los niveles de acceso a los clústeres, debe crear usuarios con permisos específicos y asignarlos a las listas de control de acceso (ACL). La ACL, a su vez, se asocia entonces a uno o más clústeres. Para obtener más información, consulte [Autenticación de usuarios con listas de control de acceso () ACLs](clusters.acls.md).
+ Los clústeres de base de datos de MemoryDB deben crearse en una nube privada virtual (VPC) basada en el servicio de Amazon VPC. Para controlar qué dispositivos e instancias de Amazon EC2 pueden abrir conexiones al punto de conexión y al puerto del nodo de los clústeres de MemoryDB en una VPC, debe usar un grupo de seguridad de VPC. Puede establecer estas conexiones de puerto y punto de conexión mediante Transport Layer Security (TLS)/Capa de conexión segura (SSL). Además, las reglas del firewall de su empresa pueden controlar si los dispositivos que se ejecutan en ella pueden abrir conexiones a un clúster de MemoryDB. Para obtener más información acerca de las VPC, consulte [MemoryDB y Amazon VPC](vpcs.md).

Para obtener información acerca de la configuración de seguridad, consulte [Seguridad en MemoryDB](security.md).