

# Información sobre cómo pasar de SQL a NoSQL
<a name="SQLtoNoSQL"></a>

Si es desarrollador de aplicaciones, es posible que tenga alguna experiencia con el sistema de administración de bases de datos relacionales (RDBMS, por sus siglas en inglés) y con el lenguaje de consulta estructurada SQL. Cuando comience a utilizar Amazon DynamoDB, observará numerosas similitudes, pero también bastantes diferencias. El término *NoSQL* se utiliza para describir los sistemas de bases de datos no relacionales que tienen un alto grado de disponibilidad y escalabilidad y están optimizados para ofrecer un rendimiento elevado. En lugar del modelo relacional, las bases de datos NoSQL (como DynamoDB) utilizan modelos alternativos de administración de datos, como los pares clave-valor o el almacenamiento de documentos. Para obtener más información, consulte [¿Qué es NoSQL?](https://aws.amazon.com/nosql).

Amazon DynamoDB admite [PartiQL](https://partiql.org/), un lenguaje de consulta de código abierto compatible con SQL que facilita la consulta de datos de forma eficiente, independientemente de dónde o en qué formato se almacenen. Con PartiQL, puede procesar fácilmente datos estructurados de bases de datos relacionales, datos semiestructurados y anidados en formatos de datos abiertos e incluso datos sin esquema en bases de datos NoSQL o de documentos que permiten distintos atributos para diferentes filas. Para obtener más información, consulte [Lenguaje de consulta PartiQL](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.html).

En las siguientes secciones se describen las tareas que suelen llevarse a cabo con las bases de datos y se comparan y contrastan las instrucciones de SQL con las operaciones de DynamoDB equivalentes.

**nota**  
Los ejemplos de SQL de esta sección son compatibles con el RDBMS MySQL.  
En los ejemplos de DynamoDB de esta sección, se muestra el nombre de la operación de DynamoDB junto con los parámetros de dicha operación en formato JSON. 

**Topics**
+ [Elección entre relacional (SQL) y NoSQL](SQLtoNoSQL.WhyDynamoDB.md)
+ [Diferencias al acceder a una base de datos relacional (SQL) y DynamoDB](SQLtoNoSQL.Accessing.md)
+ [Diferencias entre una base de datos relacional (SQL) y DynamoDB al crear una tabla](SQLtoNoSQL.CreateTable.md)
+ [Diferencias entre obtener información de tablas de una base de datos relacional (SQL) y DynamoDB](SQLtoNoSQL.GetTableInfo.md)
+ [Diferencias entre una base de datos relacional (SQL) y DynamoDB al escribir datos en una tabla](SQLtoNoSQL.WriteData.md)
+ [Diferencias entre una base de datos relacional (SQL) y DynamoDB al leer datos de una tabla](SQLtoNoSQL.ReadData.md)
+ [Diferencias entre una base de datos relacional (SQL) y DynamoDB al administrar índices](SQLtoNoSQL.Indexes.md)
+ [Diferencias entre una base de datos relacional (SQL) y DynamoDB al modificar datos de una tabla](SQLtoNoSQL.UpdateData.md)
+ [Diferencias entre una base de datos relacional (SQL) y DynamoDB al eliminar datos de una tabla](SQLtoNoSQL.DeleteData.md)
+ [Diferencias entre una base de datos relacional (SQL) y DynamoDB al eliminar una tabla](SQLtoNoSQL.RemoveTable.md)