¿Qué es DynamoDB?

P: ¿Qué es Amazon DynamoDB?

DynamoDB es un servicio flexible de bases de datos no relacionales a cualquier escala. DynamoDB permite a los clientes evitar las cargas administrativas que supone tener que utilizar y escalar bases de datos distribuidas, de lo que pasa a encargarse AWS, de tal modo que no tengan que preocuparse del aprovisionamiento, la instalación ni la configuración del hardware, ni tampoco de la planificación de la capacidad de desempeño, la replicación, los parches del software o el escalado de clústeres.

P: ¿Qué administra DynamoDB por mí?

DynamoDB elimina una de las principales dificultades del escalado de bases de datos: administrar el software de la base de datos y el aprovisionamiento del hardware necesario para ejecutarlo. Puede implementar una base de datos no relacional en cuestión de minutos. DynamoDB escala automáticamente la capacidad de procesamiento para satisfacer las demandas de carga de trabajo y crea particiones y subparticiones de los datos a medida que crece el tamaño de la tabla. Además, DynamoDB realiza una réplica sincronizada de los datos en tres centros de una misma región de AWS, lo que proporciona un alto nivel de disponibilidad y durabilidad de los datos.

P: ¿Cuál es el modelo de coherencia de DynamoDB?

Al leer datos de DynamoDB, los usuarios pueden especificar si desean que la lectura tenga consistencia alta o final:

  • Lecturas consistentes finales (la opción predeterminada): esta opción aumenta la capacidad de procesamiento de la lectura. No obstante, es posible que este tipo de lectura no refleje los resultados de una escritura realizada recientemente. Normalmente, todas las copias de los datos alcanzan la consistencia en un segundo. Si repite una lectura al cabo de poco tiempo, debería obtener los datos actualizados.
  • Lecturas altamente consistentes: además de la coherencia eventual, DynamoDB ofrece la flexibilidad y el control necesarios para solicitar una lectura de coherencia alta si así lo requiere su aplicación o algún elemento de esta. Una lectura de coherencia alta devuelve un resultado que refleja todas las escrituras que han obtenido una respuesta satisfactoria antes de realizar la lectura en cuestión.

Introducción

P: ¿Qué tipo de funcionalidad de consulta admite DynamoDB?

DynamoDB soporta operaciones GET/PUT mediante la utilización de una clave principal definida por el usuario. La clave principal es el único atributo necesario para los elementos de una tabla. Usted especifica la clave principal al crear una tabla, y esta identifica cada elemento de manera única. DynamoDB también proporciona consultas flexibles al permitirle realizar consultas con atributos de clave no principal usando índices secundarios globales e índices secundarios locales.

Una clave principal puede ser una clave de partición de un solo atributo o una clave compuesta partición-clase. Una clave de partición de un solo atributo puede ser, por ejemplo, UserID. Esta clave de partición de un solo atributo le permitiría leer y escribir datos rápidamente para un elemento asociado con un ID de usuario determinado.

DynamoDB indiza una clave compuesta partición-clase como un elemento de clave de partición y como un elemento de clave de clase. Esta clave de varias partes mantiene una jerarquía entre los valores primero y segundo del elemento. Por ejemplo, una clave compuesta partición-clase podría ser una combinación de "UserID" (partición) y "Timestamp" (clase). Si mantiene la clave de partición de forma constante, puede buscar en el elemento de clave de clase para recuperar elementos. Esto le permitiría utilizar la API Query para, por ejemplo, recuperar todos los elementos para una clave UserID exclusiva en un intervalo de marcas temporales.

P: ¿Cómo puedo actualizar y consultar elementos de datos con DynamoDB?

Después de crear una tabla con la consola de DynamoDB o la API CreateTable, puede utilizar las API PutItem o BatchWriteItem para insertar elementos. A continuación, puede utilizar las API GetItem, BatchGetItem o, si las claves principales compuestas están habilitadas y se utilizan en la tabla, la API de consulta Query para recuperar los elementos que haya añadido a la tabla.

P: ¿Se puede usar DynamoDB en aplicaciones que se ejecuten en cualquier sistema operativo?

Sí. DynamoDB es un servicio administrado en la nube al que se obtiene acceso a través del API. Cualquier aplicación ejecutada en un sistema operativo (como Linux, Windows, iOS, Android, Solaris, AIX y HP-UX) puede usar DynamoDB. Recomendamos utilizar los SDK de AWS para comenzar a utilizar DynamoDB.

Planificación

P: ¿Cómo se me cobra por utilizar DynamoDB?

Cada tabla de DynamoDB tiene un rendimiento de escritura y de escritura previsto asociado con ella. Si excede el límite de la capa gratuita, se le facturará cada hora de esa capacidad de desempeño. Tenga en cuenta que se le cobrará por hora de capacidad de desempeño, independientemente de que envíe o no solicitudes a dicha tabla. Si desea cambiar la capacidad de desempeño aprovisionada de la tabla, puede hacerlo a través de la consola de administración de AWS, la API UpdateTable o la API PutScalingPolicy para Auto Scaling. Además, DynamoDB cobra el almacenamiento de datos indizados, así como la tarifa de transferencia de datos estándar de Internet.

Si desea más información sobre los precios de Amazon DynamoDB, consulte la página de precios de DynamoDB.

P: ¿Cuál es el desempeño máximo que puedo aprovisionar para una única tabla de DynamoDB?

DynamoDB está diseñado para escalar sin límites. Sin embargo, si desea exceder las tasas de desempeño de 10 000 unidades de capacidad de lectura o 10 000 unidades de capacidad de lectura para una tabla, primero debe contactar con Amazon. Si desea aprovisionar más de 20 000 unidades de capacidad de escritura o de 20 000 unidades de capacidad de lectura desde una única cuenta de suscriptor, primero debe contactar con nosotros para solicitar un incremento del límite.

P: ¿Cuál es el desempeño mínimo que puedo aprovisionar para una única tabla de DynamoDB?

La menor cantidad de desempeño aprovisionado que puede solicitar es 1 unidad de capacidad de escritura y 1 unidad de capacidad de lectura tanto para Auto Scaling como para el aprovisionamiento de desempeño manual. Este aprovisionamiento se encuadra dentro de la capa gratuita, que permite disponer de 25 unidades de capacidad de escritura y de 25 unidades de capacidad de lectura. La capa gratuita se aplica a nivel de cuenta y no de tabla. Dicho de otra manera, si suma la capacidad prevista de todas sus tablas y la capacidad total no es superior a 25 unidades de capacidad de escritura y 25 unidades de capacidad de lectura, la capacidad prevista estará dentro de la capa gratuita.

Funcionamiento

P: Modelos de datos y API

Para obtener más información sobre los modelos de datos y las API, consulte Amazon DynamoDB: Cómo funciona.

P: Escalabilidad, disponibilidad y durabilidad

Para obtener más información sobre escalabilidad, disponibilidad y durabilidad, consulte los detalles del producto de Amazon DynamoDB.

P: Auto Scaling

Para obtener más información sobre el Auto Scaling de DynamoDB, consulte Managing Throughput Capacity Automatically with DynamoDB Auto Scaling.

P: Seguridad y control

Para obtener más información sobre la seguridad y control de DynamoDB, consulte Authentication and Access Control for Amazon DynamoDB.

Más información sobre los precios de Amazon DynamoDB

Visite la página de precios
¿Está listo para crear?
Introducción a DynamoDB
¿Tiene más preguntas?
Contacte con nosotros