Explorar as APIs com suporte
O Azure Cosmos DB oferece várias APIs de banco de dados, que incluem NoSQL, MongoDB, PostgreSQL, Cassandra, Gremlin e Tabela. Usando essas APIs, você pode modelar dados do mundo real usando modelos de dados de família de colunas, documentos, chave-valor e grafo. Essas APIs permitem que seus aplicativos tratem o Azure Cosmos DB como se ele fosse várias outras tecnologias de bancos de dados, sem a sobrecarga do gerenciamento e das abordagens de escala. O Azure Cosmos DB ajuda você a usar os ecossistemas, as ferramentas e as habilidades que já tem para modelagem e consulta de dados com as diferentes APIs.
Todas as APIs oferecem escala automática de armazenamento e taxa de transferência, flexibilidade e garantias de desempenho. Não há nenhuma API melhor e você pode escolher qualquer uma das APIs para criar seu aplicativo
Considerações a serem feitas ao escolher uma API
A API para NoSQL é nativa do Azure Cosmos DB.
A API para MongoDB, PostgreSQL, Cassandra, Gremlin e Tabela implementam o protocolo de transmissão de mecanismos de banco de dados de código aberto. Essas APIs serão mais adequadas se as seguintes condições forem verdadeiras:
- Se você já tiver aplicativos do MongoDB, do PostgreSQL, do Cassandra ou do Gremlin
- Você não quer regenerar toda a camada de acesso a dados
- Você quer usar o ecossistema de desenvolvedores de código aberto, os drivers de cliente, os conhecimentos e os recursos de seu banco de dados
API de NoSQL
A API do Azure Cosmos DB para NoSQL armazena dados em formato de documento. Ela oferece a melhor experiência de ponta a ponta, pois temos controle total sobre a interface, o serviço e as bibliotecas de cliente do SDK. Qualquer novo recurso distribuído para o Azure Cosmos DB fica disponível primeiro nas contas da API para NoSQL. As contas do NoSQL dão suporte para consulta de itens usando a sintaxe da linguagem SQL.
API para MongoDB
A API do Azure Cosmos DB para MongoDB armazena dados em uma estrutura de documentos, por meio do formato BSON. Ela é compatível com o protocolo de transmissão do MongoDB, mas não usa nenhum código nativo relacionado ao MongoDB. A API para MongoDB é uma ótima opção quando você deseja usar o ecossistema e as habilidades mais amplos do MongoDB sem comprometer o uso de recursos do Azure Cosmos DB.
API para PostgreSQL
O Azure Cosmos DB for PostgreSQL é um serviço gerenciado para executar o PostgreSQL em qualquer escala, com a superpotência das tabelas distribuídas do Citus de código aberto. Ele armazena os dados em um único nó ou os distribui em uma configuração de diversos nós.
API para Apache Cassandra
A API do Azure Cosmos DB para Cassandra armazena dados em um esquema orientado por colunas. O Apache Cassandra oferece uma abordagem de escala horizontal altamente distribuída para armazenar grandes volumes de dados, oferecendo uma abordagem flexível a um esquema orientado a colunas. A API para Cassandra no Azure Cosmos DB alinha-se a essa filosofia de abordagem de bancos de dados NoSQL distribuídos. Essa API para Cassandra é compatível, em termos do protocolo de transmissão, com o Apache Cassandra nativo.
API para Apache Gremlin
A API do Azure Cosmos DB para Gremlin permite que os usuários façam consultas de grafo e armazenem dados como bordas e vértices.
Use a API para Gremlin para cenários:
- Envolvendo dados dinâmicos
- Envolvendo dados com relações complexas
- Envolvendo dados complexos demais para serem modelados com bancos de dados relacionais
- Se você deseja usar o ecossistema e as habilidades existentes do Gremlin
API para Tabela
A API do Azure Cosmos DB para Tabela armazena dados no formato chave/valor. Se atualmente você estiver usando o Armazenamento de Tabelas do Azure, poderá observar algumas limitações de latência, escala, taxa de transferência, distribuição global, gerenciamento de índice, baixo desempenho de consulta. A API para Tabela supera essas limitações e a recomendação será migrar seu aplicativo se você quiser usar os benefícios do Azure Cosmos DB. A API para Tabela dá suporte apenas a cenários de OLTP.