¿Se puede usar DynamoDB fuera de AWS?
Sí. DynamoDB es accesible desde cualquier sitio por HTTPS — tu código no tiene por qué ejecutarse en AWS. Cualquier aplicación con credenciales de AWS puede llamar al endpoint regional mediante un SDK o una petición firmada, tanto si se ejecuta en tu portátil como en un servidor on-prem o en otra nube. Solo la base de datos vive en AWS.
Cómo funciona el acceso
DynamoDB es una API, no un socket que alojes tú: los clientes hablan con un endpoint HTTPS regional con peticiones firmadas con credenciales de AWS y autorizadas mediante IAM. Los SDK de AWS (JavaScript, Python, Java, Go y más), la CLI y la consola usan todos esa misma API pública — a ninguno le importa dónde se ejecuta.
Puedes verlo con curl y sin ninguna cuenta de AWS. Envía un cuerpo ListTables vacío al endpoint de una región y responde:
{
"__type": "com.amazon.coral.service#MissingAuthenticationTokenException",
"message": "Request is missing Authentication Token"
}Una petición rechazada, pero una petición que el servicio aceptó, analizó y respondió desde un portátil que no está en AWS. Añade una firma SigV4 y esa misma llamada funciona.
Qué te cuesta la red
El endpoint es accesible desde cualquier sitio; la latencia no es la misma desde cualquier sitio. La medimos desde una conexión doméstica en España el 2026-07-28: diez envíos de ListTables sin firmar por región sobre una única conexión HTTPS reutilizada, leyendo el time_starttransfer de curl.
| Región | Primera petición (TCP + TLS) | Mediana en caliente |
|---|---|---|
eu-central-1 (Fráncfort) | 232 ms | 50 ms |
eu-west-1 (Irlanda) | 204 ms | 59 ms |
us-east-1 (Virginia N.) | 456 ms | 118 ms |
us-west-2 (Oregón) | 577 ms | 182 ms |
sa-east-1 (São Paulo) | 743 ms | 247 ms |
ap-northeast-1 (Tokio) | 905 ms | 263 ms |
Una máquina, un día, una ruta, así que lee las proporciones más que los milisegundos absolutos.
DynamoDB responde en milisegundos de un solo dígito del lado del servidor. De España a Tokio la red añade unos 250 ms encima, que son de 25 a 50 veces el trabajo que hace la base de datos. Un bucle de lectura que parece instantáneo dentro de la región se convierte en lo más lento de tu programa fuera de ella.
La primera petición cuesta de tres a cuatro veces lo que una en caliente, y todo ello es establecimiento de TCP y TLS. Los procesos de larga vida lo pagan una vez. Uno de vida corta — un cron, un script de la CLI, una función que crea un cliente nuevo en cada invocación — lo paga cada vez. Reutiliza el cliente.
Qué más cambia fuera de AWS
- Transferencia de datos — el tráfico que sale de AWS está sujeto a cargos de transferencia de datos, y la asignación gratuita es compartida, no por servicio: "AWS customers receive 100 GB of free data transfer out to the internet free each month, aggregated across all AWS Services and Regions (except China and GovCloud)."
- Credenciales — el código fuera de AWS no puede usar roles de instancia, así que gestionarás claves de acceso o credenciales federadas de forma explícita.
Desarrollar sin AWS en absoluto
Para desarrollar ni siquiera necesitas una cuenta de AWS: DynamoDB Local ejecuta la API en tu propia máquina, sin conexión y gratis. Cuando estés listo, cambias el endpoint y ese mismo código apunta al servicio web.
Profundiza
Los clientes de escritorio son la prueba cotidiana de esto: DynoTable se ejecuta en tu Mac o PC — enteramente fuera de AWS — y se conecta tanto a regiones de AWS como a endpoints locales. Construye las consultas que envía con el generador de expresiones.
Referencias
- What is Amazon DynamoDB? — Amazon DynamoDB Developer Guide
- Accessing DynamoDB — Amazon DynamoDB Developer Guide
- Setting up DynamoDB local (downloadable version) — Amazon DynamoDB Developer Guide
- Amazon DynamoDB on-demand pricing
Verificado por última vez el 2026-07-13 contra la documentación oficial de AWS enlazada arriba.
Latencia medida el 2026-07-28 desde una conexión doméstica en España, diez peticiones por región sobre una única conexión reutilizada. Tus números serán distintos; la diferencia entre regiones es lo importante.