Spring Data Azure Cosmos DB v2 for API for NoSQL (legado): Notas de versão e recursos

APLICA-SE A: NoSQL

Spring Data O 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 Sync e Async (Reative) são suportadas no mesmo artefato Maven.

Aviso

Esta versão do Spring Data Azure Cosmos DB SDK depende de uma versão desativada do Azure Cosmos DB Java SDK. Este Spring Data Azure Cosmos DB SDK será anunciado como desativando em um futuro próximo! Este não é o SDK mais recente do Azure Spring Data Azure Cosmos DB para Azure Cosmos DB e está desatualizado. Devido a problemas de desempenho e instabilidade no Azure Spring Data Azure Cosmos DB SDK V2, é altamente recomendável usar o Azure Spring Data Azure Cosmos DB v3 para seu projeto. Para atualizar, siga as instruções no guia Migrar para o SDK Java do Azure Cosmos DB v4 para entender a diferença no Java SDK V4 subjacente.

O Spring Framework é um modelo de programação e configuração que simplifica o desenvolvimento de aplicações Java. O Spring simplifica o "encanamento" de aplicativos usando injeção de dependência. Muitos desenvolvedores gostam do Spring porque ele torna a criação e o teste de aplicativos mais simples. O Spring Boot estende esse manuseio do encanamento com um olho no desenvolvimento de aplicativos web e microsserviços. O 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 Spring Data Azure Cosmos DB em seus aplicativos hospedados no Azure Spring Apps.

Importante

Estas notas de versão são para a versão 2 do Spring Data Azure Cosmos DB. Você pode encontrar as notas de versão para a versão 3 aqui.

Spring Data O Azure Cosmos DB suporta apenas a API para NoSQL.

Consulte os seguintes artigos para obter informações sobre o Spring Data em outras APIs do Azure Cosmos DB:

Quer começar rápido?

  1. Instale o tempo de execução Java mínimo suportado, JDK 8, para que você possa usar o SDK.
  2. Crie um aplicativo Spring Data Azure Cosmos DB usando o iniciador. É fácil!
  3. Trabalhe no guia do desenvolvedor do Spring Data Azure Cosmos DB, que orienta as solicitações básicas do Azure Cosmos DB.

Você pode girar aplicativos Spring Boot Starter rapidamente usando o Spring Initializr!

Recursos

Resource Associar
Transferência de SDK Maven
Documentação da API Documentação de referência do Spring Data Azure Cosmos DB
Contribua para o SDK Repositório do Spring Data Azure Cosmos DB no GitHub
Arranque de Bota de primavera Biblioteca de cliente do Azure Cosmos DB Spring Boot Starter para Java
Guia do programador Guia do desenvolvedor do Spring Data Azure Cosmos DB
Usando o Starter Como usar o Spring Boot Starter com o Azure Cosmos DB para NoSQL
Repositório GitHub para Azure Cosmos DB Spring Boot Starter
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)

Novas funcionalidades

  • Atualiza a versão Spring Boot para 2.3.0.

2.2.5 (19 de maio de 2020)

Novas funcionalidades

  • Atualiza a versão do Azure Cosmos DB para 3.7.3.

Correções de bugs importantes

  • Contém correções de vazamento de memória e atualizações de versão Netty do SDK do Azure Cosmos DB 3.7.3.

2.2.4 (6 de abril de 2020)

Correções de bugs importantes

  • Corrige allowTelemetry o sinalizador a ter em conta a partir de CosmosDbConfig.
  • Corrige TTL a propriedade no contêiner.

2.2.3 (25 de fevereiro de 2020)

Novas funcionalidades

  • Adiciona novo findAll por API de chave de partição.
  • Atualiza a versão do Azure Cosmos DB para 3.7.0.

Correções de bugs importantes

  • Correções collectionName ->containerName.
  • Correções entityClass e domainClass ->domainType.
  • Corrige "Retornar coleção de entidade salva pelo repositório em vez de entidade de entrada."

2.1.10 (25 de fevereiro de 2020)

Correções de bugs importantes

  • Correção de backports para "Retornar coleção de entidade salva pelo repositório em vez de entidade de entrada".

2.2.2 (15 de janeiro de 2020)

Novas funcionalidades

  • Atualiza a versão do Azure Cosmos DB para 3.6.0.

Correções de bugs importantes

2.2.1 (31 de dezembro de 2019)

Novas funcionalidades

  • Atualiza a versão do SDK do Azure Cosmos DB para 3.5.0.
  • Adiciona campo de anotação para habilitar ou desabilitar a criação automática de coleções.
  • Melhora o tratamento de exceções. Expõe CosmosClientException através de CosmosDBAccessException.
  • Expõe requestCharge e activityId através de ResponseDiagnostics.

Correções de bugs importantes

  • 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 em Atraso Delimitado e Prefixo Consistente."
  • Corrige findById o comportamento do método. Anteriormente, esse método retornava vazio se a entidade não fosse encontrada em vez de lançar uma exceção.
  • Corrige um bug em que a classificação não era aplicada na próxima página quando CosmosPageRequest era usada.

2.1.9 (26 de dezembro de 2019)

Novas funcionalidades

  • Adiciona campo de anotação para habilitar ou desabilitar a criação automática de coleções.

Correções de bugs importantes

  • Corrige findById o comportamento do método. 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)

Novas funcionalidades

  • Suporte completo ao repositório reativo do Azure Cosmos DB.
  • Suporte a String de Diagnóstico de Solicitação e Métricas de Consulta do Azure Cosmos DB.
  • Atualização da versão do SDK do Azure Cosmos DB para 3.3.1.
  • Atualização da versão do Spring Framework para 5.2.0.RELEASE.
  • Atualização da versão do Spring Data Commons para 2.2.0.RELEASE.
  • Adiciona findByIdAndPartitionKey e deleteByIdAndPartitionKey APIs.
  • Remove a dependência do azure-documentdb.
  • Renomeia o Banco de Dados de Documentos para o Azure Cosmos DB.

Correções de bugs importantes

  • Corrige "A classificação gera exceção quando pageSize é menor que o total de itens no repositório."

2.1.8 (18 de outubro de 2019)

Novas funcionalidades

  • Substitui as APIs do Banco de Dados de Documentos.
  • Adiciona findByIdAndPartitionKey e deleteByIdAndPartitionKey APIs.
  • Adiciona bloqueio otimista com base em _etag.
  • Habilita a expressão SpEL para o nome da coleção de documentos.
  • Adiciona ObjectMapper melhorias.

2.1.7 (18 de outubro de 2019)

Novas funcionalidades

  • Adiciona a dependência do SDK do Azure Cosmos DB versão 3.
  • Adiciona o repositório reativo do Azure Cosmos DB.
  • Atualiza a implementação do para usar o SDK do DocumentDbTemplate Azure Cosmos DB versão 3.
  • Adiciona outras alterações de configuração para suporte ao Repositório Reativo do Azure Cosmos DB.

2.1.2 (19 de março de 2019)

Correções de bugs importantes

  • Remove a applicationInsights dependência para:
    • Risco potencial de dependências poluentes.
    • Incompatibilidade Java 11.
    • Evitando possíveis impactos no desempenho da CPU e/ou memória.

2.0.7 (20 de março de 2019)

Correções de bugs importantes

  • O backport remove a applicationInsights dependência para:
    • Risco potencial de dependências poluentes.
    • Incompatibilidade Java 11.
    • Evitando possíveis impactos no desempenho da CPU e/ou memória.

2.1.1 (7 de março de 2019)

Novas funcionalidades

  • Atualiza a versão principal para 2.1.1.

2.0.6 (7 de março de 2019)

Novas funcionalidades

  • Ignore todas as exceções da telemetria.

2.1.0 (17 de dezembro de 2018)

Novas funcionalidades

  • Atualiza a versão para 2.1.0 para resolver o problema.

2.0.5 (13 de setembro de 2018)

Novas funcionalidades

  • Adiciona palavras-chave exists e startsWith.
  • Atualiza o Leiame.

Correções de bugs importantes

  • 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)

Novas funcionalidades

  • Renomeia o pacote de documentdb para cosmosdb.
  • Adiciona novo recurso de palavra-chave do método de consulta. 16 palavras-chave da API para NoSQL agora são suportadas.
  • Adiciona novo recurso de consulta com paginação e classificação.
  • Simplifica a configuração do spring-data-cosmosdb.
  • Adiciona deleteCollection e deleteAll APIs.

Correções de bugs importantes

  • Correção de bugs e mitigação de defeitos.

FAQ

Como vou ser notificado do SDK descontinuado?

A Microsoft dará um aviso com 12 meses de antecedência antes do fim de suporte do SDK descontinuado para permitir uma transição suave para um SDK suportado. Será notificado através de vários canais de comunicação: o portal do Azure, as atualizações do Azure e através de comunicação direta com os administradores atribuídos aos serviços.

Posso criar aplicações com um SDK do Azure Cosmos DB que vai ser descontinuado durante o período de 12 meses?

Sim, poderá criar, implementar e modificar aplicações com o SDK do Azure Cosmos DB que vai ser descontinuado durante o período de aviso de 12 meses. Recomendamos que migre para uma versão suportada mais recente do SDK do Azure Cosmos DB durante o período de aviso de 12 meses, conforme adequado.

Após a data da descontinuação, o que acontece às aplicações que utilizam o SDK do Azure Cosmos DB não suportado?

Após a data de descontinuação, o Azure Cosmos DB deixará de fazer correções de erros, adicionar funcionalidades novas e fornecer suporte às versões descontinuadas do SDK. Se preferir não atualizar, o serviço Azure Cosmos DB continua a servir os pedidos enviados das versões descontinuadas do SDK.

Que versões do SDK terão as mais recentes funcionalidades e atualizações?

As funcionalidades e atualizações novas só vão ser adicionadas à última versão menor da última grande versão do SDK. Recomendamos que utilize sempre a última versão para tirar partido das funcionalidades, das melhorias ao desempenho e das correções de erro mais recentes. Se estiver a utilizar uma versão antiga e ainda em uso do SDK, os pedidos ao Azure Cosmos DB continuarão a funcionar, mas não terá acesso a nenhuma capacidade nova.

O que devo fazer se não conseguir atualizar a minha aplicação antes da data de descontinuação?

Recomendamos que atualize para o último SDK o mais cedo possível. Quando um SDK é marcado para descontinuação, tem 12 meses para atualizar a sua aplicação. Se não conseguir atualizar até à data de descontinuação, os pedidos enviados das versões descontinuadas do SDK continuam a ser servidos pelo Azure Cosmos DB, pelo que as aplicações em execução continuam a funcionar. Contudo, o Azure Cosmos DB deixará de fazer correções de erros, adicionar funcionalidades novas e fornecer suporte às versões descontinuadas do SDK.

Se tiver um plano de suporte e precisar de suporte técnico, preencha um pedido de suporte para nos contactar.

Como posso solicitar que os recursos sejam adicionados a um SDK ou conector?

Novos recursos nem sempre são adicionados a cada SDK ou conector imediatamente. Se houver um recurso não suportado que você gostaria de adicionar, por favor, adicione comentários ao nosso fórum da comunidade.

Próximos passos

Saiba mais sobre o Azure Cosmos DB.

Saiba mais sobre o Spring Framework.

Saiba mais sobre o Spring Boot.

Saiba mais sobre o Spring Data.