Aurora DSQL y PostgreSQL
Aurora DSQL es una base de datos relacional distribuida, compatible con PostgreSQL, diseñada para cargas de trabajo transaccionales. Aurora DSQL utiliza componentes principales de PostgreSQL, como el analizador, el planificador, el optimizador y el sistema de tipos.
El diseño de Aurora DSQL garantiza que toda la sintaxis de PostgreSQL admitida proporcione un comportamiento compatible y arroje resultados de consulta idénticos. Por ejemplo, Aurora DSQL proporciona conversiones de tipo, operaciones aritméticas y precisión y escala numéricas que son idénticas a PostgreSQL. Cualquier desviación queda documentada.
Aurora DSQL también incorpora capacidades avanzadas como el control de simultaneidad optimizada y la administración de esquemas distribuida. Con estas características, puede utilizar las herramientas familiares de PostgreSQL mientras se beneficia del rendimiento y la escalabilidad necesarios para las aplicaciones modernas, distribuidas y nativas en la nube.
Aspectos destacados de la compatibilidad con PostgreSQL
Aurora DSQL se basa actualmente en la versión 16 de PostgreSQL. Entre las principales compatibilidades se incluyen las siguientes:
- Protocolo de conexión
-
Aurora DSQL utiliza el protocolo de conexión estándar de PostgreSQL v3. Esto habilita la integración con clientes, controladores y herramientas de PostgreSQL estándar. Por ejemplo, Aurora DSQL es compatible con
psql
,pgjdbc
ypsycopg
. - Compatibilidad con SQL
-
Aurora DSQL es compatible con un amplio intervalo de expresiones y funciones de PostgreSQL estándar que se utilizan habitualmente en cargas de trabajo transaccionales. Las expresiones SQL admitidas producen resultados idénticos a los de PostgreSQL, incluidos los siguientes:
-
Gestión de valores nulos
-
Comportamiento del orden de clasificación
-
Escala y precisión para operaciones numéricas
-
Equivalencia para operaciones con cadenas
Para obtener más información, consulte Compatibilidad con características SQL en Aurora DSQL.
-
- Administración de transacciones
-
Aurora DSQL conserva las principales características de PostgreSQL, como las transacciones ACID y un nivel de aislamiento equivalente a la lectura repetible de PostgreSQL. Para obtener más información, consulte Control de simultaneidad en Aurora DSQL.
Diferencias arquitectónicas clave
El diseño distribuido sin recursos compartidos de Aurora DSQL da como resultado algunas diferencias fundacionales con respecto a PostgreSQL tradicional. Estas diferencias forman parte integral de la arquitectura de Aurora DSQL y proporcionan muchas ventajas en cuanto a rendimiento y escalabilidad. Entre las diferencias clave se incluyen las siguientes:
- Control de simultaneidad optimista (OCC)
-
Aurora DSQL utiliza un modelo de control de simultaneidad optimista. Este enfoque sin bloqueos impide que las transacciones se bloqueen entre sí, elimina los bloqueos y habilita una ejecución paralela de alto rendimiento. Estas características hacen que Aurora DSQL tenga especial valor en aplicaciones que requieren un rendimiento coherente a escala. Para obtener más ejemplos, consulte Control de simultaneidad en Aurora DSQL.
- Operaciones DDL asíncronas
-
Aurora DSQL ejecuta las operaciones DDL de forma asíncrona, lo que permite lecturas y escrituras ininterrumpidas durante los cambios de esquema. Su arquitectura distribuida permite a Aurora DSQL realizar las siguientes acciones:
-
Ejecutar operaciones DDL como tareas en segundo plano, lo que minimiza las interrupciones.
-
Coordinar los cambios de catálogo como transacciones distribuidas de alta coherencia. Esto garantiza visibilidad atómica en todos los nodos, incluso durante errores u operaciones simultáneas.
-
Operar de forma totalmente distribuida y sin nodo principal en múltiples zonas de disponibilidad con capas de computación y almacenamiento desacopladas.
Para obtener más información, consulte DDL y las transacciones distribuidas en Aurora DSQL.
-