Spring Data Azure Cosmos DB v2 para a API para NoSQL (herdado): notas sobre a versão e recursos
APLICA-SE A: NoSQL
- SDK v3 do .NET
- SDK do .NET v2
- SDK v2 do .NET Core
- SDK do Feed de Alterações do .NET v2
- Node.js
- SDK do Java v4
- SDK do Java Síncrono v2
- SDK do Java Assíncrono v2
- Spring Data v2
- Spring Data v3
- Spring Data v5
- Python
- Go
- REST
- Provedor de recursos REST
- SQL
- Executor em massa – .NET v2
- Executor em massa – Java
O Spring Data Azure Cosmos DB versão 2 para NoSQL permite que os desenvolvedores usem o Azure Cosmos DB em aplicativos Spring. O Spring Data Azure Cosmos DB expõe a interface do Spring Data para manipular bancos de dados e coleções, trabalhar com documentos e emitir consultas. As APIs de sincronização e assíncrona (reativa) são permitidas no mesmo artefato Maven.
Aviso
Esta versão do SDK do Spring Data Azure Cosmos DB depende de uma versão desativada do SDK do Java do Azure Cosmos DB. Este SDK do Spring Data Azure Cosmos DB será anunciado como desativado em um futuro próximo! Este não é o SDK do Azure Spring Data Azure Cosmos DB mais recente para o Azure Cosmos DB e está desatualizado. Devido a problemas de desempenho e instabilidade no SDK do Azure Spring Data do Azure Cosmos DB V2, é altamente recomendável usar o Azure Spring Data Azure Cosmos DB v5 para seu projeto. Para fazer upgrade, siga as instruções no guia Migrar para o SDK v4 Java do Azure Cosmos DB para entender a diferença no SDK V4 Java subjacente.
A Estrutura do Spring é um modelo de programação e configuração que simplifica o desenvolvimento de aplicativos Java. O Spring simplifica a "conexão" de aplicativos usando a injeção de dependência. Muitos desenvolvedores gostam do Spring, pois ele simplifica a criação e o teste de aplicativos. O Spring Boot estende essa manipulação da conexão com atenção ao desenvolvimento de aplicativos e microsserviços da Web. Spring data é um modelo de programação para acessar armazenamentos de dados como o Azure Cosmos DB a partir do contexto de um aplicativo Spring ou Spring Boot.
Você pode usar o Azure Cosmos DB do Spring Data em aplicativos hospedados no Aplicativos Spring do Azure.
Importante
Estas notas sobre a versão são para a versão 2 do Spring Data Azure Cosmos DB. Você pode encontrar as notas sobre a versão 3 aqui.
O Spring Data Azure Cosmos DB dá suporte apenas à API para NoSQL.
Confira estes artigos para obter informações sobre o Spring Data em outras APIs do Azure Cosmos DB:
Quer começar rapidamente?
- Instale o runtime Java mínimo permitido, JDK 8, para poder usar o SDK.
- Crie um aplicativo do Spring Data Azure Cosmos DB usando o iniciador. É fácil!
- Leia o Guia do desenvolvedor do Spring Data Azure Cosmos DB, que mostra as solicitações básicas do Azure Cosmos DB.
Você pode criar aplicativos do Iniciador do Spring Boot rapidamente usando o Inicializador do Spring!
Recursos
Recurso | Link |
---|---|
Baixe o SDK | Maven |
Documentação da API | Documentação de referência do Spring Data Azure Cosmos DB |
Contribuir para o SDK | Repositório do Spring Data Azure Cosmos DB no GitHub |
Iniciador do Spring Boot | Biblioteca de cliente do Iniciador do Spring Boot do Azure Cosmos DB para Java |
Guia do desenvolvedor | Guia do desenvolvedor do Azure Cosmos DB do Spring Data |
Usar o Iniciador | Como usar o Inicializador do Spring Boot com o Azure Cosmos DB for NoSQL Repositório GitHub para o Iniciador do Spring Boot do Azure Cosmos DB |
Exemplo com o Serviço de Aplicativo do Azure | Como usar o Spring e o Azure Cosmos DB com o Serviço de Aplicativo no Linux |
Histórico de versões
2.3.0 (21 de maio de 2020)
Novos recursos
- Atualiza o Spring Boot para a versão 2.3.0.
2.2.5 (19 de maio de 2020)
Novos recursos
- Atualiza o Azure Cosmos DB para a versão 3.7.3.
Principais correções de bug
- Contém correções de perda de memória e atualizações de versão do Netty do SDK 3.7.3 do Azure Cosmos DB.
2.2.4 (6 de abril de 2020)
Principais correções de bug
- Corrige o sinalizador
allowTelemetry
para levar em consideração oCosmosDbConfig
. - Corrige a propriedade
TTL
no contêiner.
2.2.3 (25 de fevereiro de 2020)
Novos recursos
- Adiciona novo
findAll
pela API de chave de partição. - Atualiza o Azure Cosmos DB para a versão 3.7.0.
Principais correções de bug
- Corrige
collectionName
->containerName
. - Corrige
entityClass
edomainClass
>domainType
. - Corrige "Coleção de entidades de retorno salva pelo repositório em vez da entidade de entrada".
2.1.10 (25 de fevereiro de 2020)
Principais correções de bug
- Correção de backports para "Coleção de entidades de retorno salva pelo repositório em vez da entidade de entrada".
2.2.2 (15 de janeiro de 2020)
Novos recursos
- Atualiza o Azure Cosmos DB para a versão 3.6.0.
Principais correções de bug
2.2.1 (31 de dezembro de 2019)
Novos recursos
- Atualiza o SDK do Azure Cosmos DB para a versão 3.5.0.
- Adiciona o campo de anotação para habilitar ou desabilitar a criação de coleção automática.
- Melhora o tratamento de exceção. Expõe
CosmosClientException
por meio deCosmosDBAccessException
. - Expõe
requestCharge
eactivityId
atéResponseDiagnostics
.
Principais correções de bug
- A atualização do SDK 3.5.0 corrige “Exceção quando o cabeçalho de resposta HTTP do Azure Cosmos DB é maior que 8192 bytes”, “ConsistencyPolicy.defaultConsistencyLevel() falha na desatualização limitada e no prefixo consistente”.
- Corrige o comportamento do método
findById
. Anteriormente, esse método retornava vazio se a entidade não fosse encontrada, em vez de lançar uma exceção. - Corrige um bug no qual a classificação não era aplicada na próxima página quando
CosmosPageRequest
era usado.
2.1.9 (26 de dezembro de 2019)
Novos recursos
- Adiciona o campo de anotação para habilitar ou desabilitar a criação de coleção automática.
Principais correções de bug
- Corrige o comportamento do método
findById
. Anteriormente, esse método retornava vazio se a entidade não fosse encontrada, em vez de lançar uma exceção.
2.2.0 (21 de outubro de 2019)
Novos recursos
- Suporte do repositório do Azure Cosmos DB do Reactive completo.
- Suporte de métricas de consulta e cadeia de caracteres de diagnóstico de solicitação do Azure Cosmos DB.
- Atualiza o SDK do Azure Cosmos DB para a versão 3.3.1.
- Atualização da versão da Estrutura do Spring para a versão 5.2.0.
- Atualização de versão do Spring Data Commons para a versão 2.2.0.
- Adiciona as APIs
findByIdAndPartitionKey
edeleteByIdAndPartitionKey
. - Remove a dependência do azure-documentdb.
- Muda a marca do DocumentDB para Azure Cosmos DB.
Principais correções de bug
- Corrige "Classificação gera uma exceção quando pageSize é menor que o total de itens no repositório".
2.1.8 (18 de outubro de 2019)
Novos recursos
- Substitui as APIs do DocumentDB.
- Adiciona as APIs
findByIdAndPartitionKey
edeleteByIdAndPartitionKey
. - Adiciona bloqueio otimista com base em
_etag
. - Habilita a expressão SpEL para o nome da coleção de documentos.
- Adiciona melhorias ao
ObjectMapper
.
2.1.7 (18 de outubro de 2019)
Novos recursos
- Adiciona a dependência do SDK do Azure Cosmos DB versão 3.
- Adiciona o repositório Azure Cosmos DB do Reactive.
- Atualiza a implementação do
DocumentDbTemplate
para usar o SDK do Azure Cosmos DB versão 3. - Adiciona outras alterações de configuração para suporte ao repositório do Azure Cosmos DB do Reactive.
2.1.2 (19 de março de 2019)
Principais correções de bug
- Remove a dependência
applicationInsights
para:- Risco potencial de poluição de dependências.
- Incompatibilidade do Java 11.
- Evitar o possível impacto ao desempenho da CPU e/ou da memória.
2.0.7 (20 de março de 2019)
Principais correções de bug
- O backport remove a dependência
applicationInsights
para:- Risco potencial de poluição de dependências.
- Incompatibilidade do Java 11.
- Evitar o possível impacto ao desempenho da CPU e/ou da memória.
2.1.1 (7 de março de 2019)
Novos recursos
- Atualiza a versão principal para 2.1.1.
2.0.6 (7 de março de 2019)
Novos recursos
- Ignorar todas as exceções da telemetria.
2.1.0 (17 de dezembro de 2018)
Novos recursos
- Atualiza a versão para 2.1.0 para resolver o problema.
2.0.5 (13 de setembro de 2018)
Novos recursos
- Adiciona as palavras-chave
exists
estartsWith
. - Atualiza o arquivo “leia-me”.
Principais correções de bug
- Corrige "Não é possível chamar o self href diretamente para a entidade".
- Corrige “findAll falhará se a coleção não for criada”.
2.0.4 (pré-lançamento) (23 de agosto de 2018)
Novos recursos
- Renomeia o pacote do documentdb para cosmosdb.
- Adiciona o novo recurso da palavra-chave do método de consulta. Agora, há suporte para 16 palavras-chave da API para NoSQL.
- Adiciona um novo recurso de consulta com paginação e classificação.
- Simplifica a configuração do spring-data-cosmosdb.
- Adiciona as APIs
deleteCollection
edeleteAll
.
Principais correções de bug
- Correção de bug e mitigação de defeito.
Perguntas frequentes
Como serei notificado sobre a desativação do SDK?
A Microsoft enviará uma notificação com 12 meses de antecedência informando sobre o fim do suporte para o SDK a ser desativado, para facilitar uma transição suave para um SDK com suporte. Você será notificado por meio de vários canais de comunicação: o portal do Azure, as atualizações do Azure e a comunicação direta com os administradores de serviços atribuídos.
Durante o período de 12 meses, posso criar aplicativos usando um SDK do Azure Cosmos DB que será desativado?
Sim, durante o período de notificação de 12 meses, você poderá criar, implantar e modificar aplicativos usando o SDK do Azure Cosmos DB que será desativado. Recomendamos que você migre para uma versão do SDK do Azure Cosmos DB mais recente com suporte durante o período de notificação de 12 meses, conforme o necessário.
Após a data de desativação, o que acontece com os aplicativos que usam o SDK do Azure Cosmos DB sem suporte?
Após a data de desativação, o Azure Cosmos DB não fará mais correções de bug, não adicionará novos recursos nem dará suporte às versões desativadas do SDK. Se você preferir não fazer a atualização, as solicitações enviadas das versões desativadas do SDK continuarão sendo atendidas pelo serviço Azure Cosmos DB.
Quais versões do SDK terão os recursos e as atualizações mais recentes?
Os novos recursos e atualizações serão adicionados somente à última versão secundária da última versão principal do SDK com suporte. Recomendamos que você sempre use a última versão para aproveitar os novos recursos, os aprimoramentos de desempenho e as correções de bug. Se você estiver usando uma versão antiga e não desativada do SDK, suas solicitações para o Azure Cosmos DB continuarão a funcionar, mas você não terá acesso a nenhuma funcionalidade nova.
O que fazer se eu não conseguir atualizar meu aplicativo antes da data limite?
Recomendamos atualizar o mais rápido possível para o SDK mais recente. Depois que um SDK for marcado para desativação, você terá 12 meses para atualizar seu aplicativo. Se você não conseguir fazer a atualização até data de desativação, as solicitações enviadas das versões desativadas do SDK continuarão a ser atendidas pelo Azure Cosmos DB, para que os aplicativos em execução continuem a funcionar. No entanto, o Azure Cosmos DB não fará mais correções de bug, não adicionará novos recursos nem dará suporte às versões desativadas do SDK.
Se você tem um plano de suporte e precisa de suporte técnico, entre em contato conosco abrindo um tíquete de suporte.
Como solicitar que recursos sejam adicionados a um SDK ou ao conector?
Os novos recursos nem sempre são adicionados a cada SDK ou conector imediatamente. Se não houver suporte para um recurso que você gostaria de adicionar, adicione comentários ao nosso fórum da comunidade.
Próximas etapas
Saiba mais sobre o Azure Cosmos DB.
Saiba mais sobre a Estrutura do Spring.
Saiba mais sobre o Spring Boot.
Saiba mais sobre o Spring Data.