

# Saiba como passar do SQL para o NoSQL
<a name="SQLtoNoSQL"></a>

Se você é um desenvolvedor de aplicativos, talvez tenha alguma experiência no uso do sistema de gerenciamento de banco de dados relacional (RDBMS) e Structured Query Language (SQL). Ao começar a trabalhar com o Amazon DynamoDB, você encontrará muita similaridades, mas também muitas diferenças. *NoSQL* é um termo usado para descrever os sistemas de bancos de dados não relacionais altamente disponíveis, dimensionáveis e otimizados para alta performance. Em vez de usar o modelo relacional, os bancos de dados NoSQL (como o DynamoDB) usam modelos alternativos para o gerenciamento de dados, como pares de chave-valor ou armazenamento de documentos. Para obter mais informações, consulte [O que é NoSQL?](https://aws.amazon.com/nosql).

Oferece suporte a [PartiQL](https://partiql.org/) do Amazon DynamoDB, uma linguagem de consulta compatível com SQL de código aberto que facilita a consulta de dados com eficiência, independentemente do local ou do formato em que estejam armazenados. Com PartiQL, é possível processar facilmente dados estruturados de bancos de dados relacionais, dados semiestruturados e aninhados em formatos de dados abertos e até mesmo dados sem esquema no NoSQL ou em bancos de dados de documentos que permitam atributos diferentes para linhas diferentes. Para obter mais informações, consulte [Linguagem de consultas PartiQL](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.html).

As seções a seguir descrevem tarefas comuns de banco de dados, comparando e contrastando instruções SQL com as operações equivalentes do DynamoDB.

**nota**  
Os exemplos de SQL nesta seção são compatíveis com o RDBMS MySQL.  
Os exemplos do DynamoDB desta seção mostram o nome da operação do DynamoDB, junto com os parâmetros dessa operação no formato JSON. 

**Topics**
+ [Escolher entre relacional (SQL) e NoSQL](SQLtoNoSQL.WhyDynamoDB.md)
+ [Diferenças no acesso a um banco de dados relacional (SQL) e ao DynamoDB](SQLtoNoSQL.Accessing.md)
+ [Diferenças entre um banco de dados relacional (SQL) e o DynamoDB ao criar uma tabela](SQLtoNoSQL.CreateTable.md)
+ [Diferenças entre obter informações de tabela de um banco de dados relacional (SQL) e do DynamoDB](SQLtoNoSQL.GetTableInfo.md)
+ [Diferenças entre um banco de dados relacional (SQL) e o DynamoDB ao gravar dados em uma tabela](SQLtoNoSQL.WriteData.md)
+ [Diferenças entre um banco de dados relacional (SQL) e o DynamoDB ao ler dados de uma tabela](SQLtoNoSQL.ReadData.md)
+ [Diferenças entre um banco de dados relacional (SQL) e o DynamoDB ao gerenciar índices](SQLtoNoSQL.Indexes.md)
+ [Diferenças entre um banco de dados relacional (SQL) e o DynamoDB ao modificar dados de uma tabela](SQLtoNoSQL.UpdateData.md)
+ [Diferenças entre um banco de dados relacional (SQL) e o DynamoDB ao excluir dados de uma tabela](SQLtoNoSQL.DeleteData.md)
+ [Diferenças entre um banco de dados relacional (SQL) e o DynamoDB ao remover uma tabela](SQLtoNoSQL.RemoveTable.md)