Como las lecturas en Aurora DSQL no generan bloqueos ni operaciones de undo, los workloads con lectura intensiva rinden de manera excepcional. Algunos ejemplos:
- Dashboards y analítica: aplicaciones donde los datos en tiempo real se consultan con mucha más frecuencia de la que se escriben.
- Plataformas de distribución de contenido: aplicaciones de streaming o de noticias en las que los usuarios principalmente consumen contenido.
Para evaluar tu relación entre lecturas y escrituras:
- Revisa los logs de consultas para ver el porcentaje de operaciones de lectura frente a las de escritura.
- Apóyate en los performance insights de Aurora o en herramientas de monitoreo de bases de datos para medir la latencia y el throughput de las consultas de lectura.
3. Acceso a datos distribuido geográficamente
La naturaleza distribuida de Aurora DSQL la convierte en una excelente opción para aplicaciones con usuarios globales:
- Plataformas de gaming: juegos multijugador en los que personas de distintas regiones interactúan en tiempo real.
- Herramientas de colaboración: aplicaciones de chat o para compartir documentos que requieren acceso de baja latencia entre continentes.
Para identificar este patrón:
- Ubica geográficamente a tu base de usuarios y determina si las consultas sensibles a la latencia se originan en varias regiones.
- Evalúa si una base de datos centralizada está provocando problemas de latencia a los usuarios más alejados.
4. Workloads de escritura con baja contención
El bloqueo optimista de Aurora DSQL se luce cuando la contención de escritura es baja. Algunos ejemplos:
- Datos particionados: aplicaciones donde las escrituras quedan aisladas de forma natural en particiones específicas, como actualizaciones por usuario o por tenant.
- Registro de eventos: sistemas donde los eventos se escriben de forma independiente, con mínima superposición.
Para verificar si tu workload encaja:
- Analiza las operaciones de escritura para ver si suelen apuntar a las mismas filas u objetos.
- Busca oportunidades naturales de particionamiento en tu esquema (por ejemplo, sharding por ID de usuario o por tenant).
5. Procesamiento híbrido transaccional y analítico (HTAP)
Las aplicaciones que combinan consultas transaccionales y analíticas aprovechan la capacidad de Aurora DSQL para manejar ambos workloads con eficiencia:
- Dashboards financieros: combinan actualizaciones de transacciones en tiempo real con resúmenes analíticos.
- Sistemas de inventario: permiten actualizaciones operativas y, a la vez, ofrecen visibilidad inmediata de los niveles de stock.
Para confirmar este patrón:
- Identifica workloads que involucren tanto actualizaciones en tiempo real como consultas analíticas.
- Asegúrate de que las consultas analíticas de larga duración se puedan optimizar para entrar dentro del timeout de consulta de 5 minutos de Aurora DSQL.
¿Es Aurora DSQL la opción adecuada para ti?
Aurora DSQL es un sistema de base de datos potente para aplicaciones modernas que necesitan escalar horizontalmente sin perder consistencia. Destaca con workloads de alta concurrencia, lectura intensiva, particionables y distribuidos globalmente. Eso sí, puede requerir un diseño cuidadoso del esquema y de la lógica de la aplicación para sortear limitaciones como el bloqueo optimista y los timeouts de consulta.
Al analizar tus patrones de datos y contrastarlos con las fortalezas de Aurora DSQL, puedes determinar si esta innovadora base de datos distribuida es la indicada para tus necesidades. Con el diseño correcto, Aurora DSQL puede ofrecer una escalabilidad, un rendimiento y una resiliencia sin precedentes a tu aplicación.
¿Tienes dudas sobre cómo hacer que Aurora DSQL funcione en tu organización?
Si todavía te preguntas cómo aplicar estos aprendizajes para sacarle partido a Aurora DSQL —o a cualquier otra solución de datos en GCP o AWS— en tu organización, estamos para ayudarte.
En DoiT International contamos con un equipo formado exclusivamente por talento senior de Engineering. Nos especializamos en consultoría avanzada en la nube, diseño de arquitecturas y servicios de debugging. Ya sea que estés dando tus primeros pasos con bases de datos distribuidas, optimizando un sistema existente o resolviendo problemas complejos, te damos asesoría experta y hecha a la medida.
Contáctanos hoy y déjanos ayudarte a sacarle el máximo provecho a tu infraestructura en la nube.