Spring Data Azure Cosmos DB v2 für die API für NoSQL (Legacyversion): Versionshinweise und Ressourcen

GILT FÜR: NoSQL

Mit der Spring Data Azure Cosmos DB-Version 2 für NoSQL können Entwickler Azure Cosmos DB in Spring-Anwendungen nutzen. Bei Spring Data Azure Cosmos DB wird die Spring Data-Schnittstelle für die Bearbeitung von Datenbanken und Sammlungen, die Verwendung von Dokumenten und die Ausgabe von Abfragen verfügbar gemacht. Für dasselbe Maven-Artefakt werden sowohl synchrone als auch asynchrone (reaktive) APIs unterstützt.

Warnung

Diese Version des Spring Data Azure Cosmos DB SDK ist von einer eingestellten Version des Azure Cosmos DB Java SDK abhängig. Dieses Spring Data Azure Cosmos DB SDK wird in naher Zukunft eingestellt! Dies ist nicht das neueste Azure Spring Data Azure Cosmos DB SDK für Azure Cosmos DB und ist veraltet. Aufgrund von Leistungsproblemen und Instabilität im Azure Spring Data Azure Cosmos DB SDK V2 sollten Sie unbedingt Azure Spring Data Azure Cosmos DB v3 für Ihr Projekt verwenden. Befolgen Sie für das Upgrade die Anweisungen im Leitfaden Migrieren zu Azure Cosmos DB Java SDK v4, um sich über die Unterschiede beim zugrunde liegenden Java SDK V4 zu informieren.

Das Spring-Framework ist ein Programmier- und Konfigurationsmodell, mit dem die Java-Anwendungsentwicklung optimiert wird. Spring optimiert die „Verknüpfung“ von Anwendungen mithilfe von Abhängigkeitsinjektion. Spring ist bei vielen Entwicklern beliebt, weil dadurch das Erstellen und Testen von Anwendungen vereinfacht wird. Mit Spring Boot wird diese „Verknüpfung“ auf die Entwicklung von Webanwendungen und Microservices ausgedehnt. Spring Data ist ein Programmiermodell für den Zugriff auf Datenspeicher wie Azure Cosmos DB, im Kontext einer Spring- bzw. Spring Boot-Anwendung.

Sie können das Spring Data-Modell für Azure Cosmos DB in Ihren in Azure Spring Apps gehosteten Anwendung verwenden.

Wichtig

Diese Versionshinweise gelten für Version 2 von Spring Data Azure Cosmos DB. Sie können Versionshinweise zu Version 3 hier finden.

Spring Data Azure Cosmos DB unterstützt nur die API für NoSQL.

In den folgenden Artikeln finden Sie Informationen zu Spring Data für andere Azure Cosmos DB-APIs:

Möchten Sie schnell loslegen?

  1. Installieren Sie die mindestens unterstützte Java-Runtime, JDK 8, damit Sie das SDK verwenden können.
  2. Erstellen Sie eine Spring Data Azure Cosmos DB-App mit dem Starter. Es ist ganz leicht!
  3. Arbeiten Sie das Entwicklerhandbuch zu Spring Data Azure Cosmos DB durch. Darin werden einfache Azure Cosmos DB-Anforderungen Schritt für Schritt beschrieben.

Sie können Spring Boot Starter-Apps mithilfe von Spring Initializr schnell erstellen!

Ressourcen

Resource Link
SDK-Download Maven
API-Dokumentation Referenzdokumentation zu Spring Data Azure Cosmos DB
Tragen zum SDK bei Spring Data Azure Cosmos DB-Repository auf GitHub
Spring Boot Starter Azure Cosmos DB Spring Boot Starter: Clientbibliothek für Java
Entwicklerhandbuch Entwicklerhandbuch zu Spring Data Azure Cosmos DB
Verwenden von Starter Verwendung von Spring Boot Starter mit Azure Cosmos DB for NoSQL
GitHub-Repository für Azure Cosmos DB Spring Boot Starter
Beispiel mit Azure App Service Verwenden von Spring und Azure Cosmos DB mit App Service für Linux

Releaseverlauf

2.3.0 (21. Mai 2020)

Neue Funktionen

  • Aktualisiert die Spring Boot-Version auf 2.3.0.

2.2.5 (19. Mai 2020)

Neue Funktionen

  • Aktualisiert die Azure Cosmos DB-Version auf 3.7.3.

Wichtige Fehlerbehebungen

  • Enthält Fehlerbehebungen für Arbeitsspeicherverlust und Upgrades der Netty-Version von Azure Cosmos DB SDK 3.7.3.

2.2.4 (6. April 2020)

Wichtige Fehlerbehebungen

  • Korrigiert das Flag allowTelemetry, das aus CosmosDbConfig berücksichtigt werden soll.
  • Korrigiert die Eigenschaft TTL für den Container.

2.2.3 (25. Februar 2020)

Neue Funktionen

  • Fügt neues findAll nach Partitionsschlüssel-API hinzu.
  • Aktualisiert die Azure Cosmos DB-Version auf 3.7.0.

Wichtige Fehlerbehebungen

  • Korrigiert collectionName ->containerName.
  • Korrigiert entityClass und domainClass ->domainType.
  • Korrigiert „Rückgabe der im Repository gespeicherten Entitätssammlung (anstelle der Eingabeentität)“.

2.1.10 (25. Februar 2020)

Wichtige Fehlerbehebungen

  • Führt ein Backport der Fehlerbehebung für „Rückgabe der im Repository gespeicherten Entitätssammlung (anstelle der Eingabeentität)“ durch.

2.2.2 (15. Januar 2020)

Neue Funktionen

  • Aktualisiert die Azure Cosmos DB-Version auf 3.6.0.

Wichtige Fehlerbehebungen

2.2.1 (31. Dezember 2019)

Neue Funktionen

  • Die Azure Cosmos DB SDK-Version wird auf 3.5.0 aktualisiert.
  • Fügt ein Anmerkungsfeld zum Aktivieren oder Deaktivieren der automatischen Sammlungserstellung hinzu.
  • Verbessert die Ausnahmebehandlung. Macht CosmosClientException über CosmosDBAccessException verfügbar.
  • Macht requestCharge und activityId über ResponseDiagnostics verfügbar.

Wichtige Fehlerbehebungen

  • SDK 3.5.0-Update korrigiert „Ausnahme, wenn Azure Cosmos DB-HTTP-Antwortheader größer als 8192 Byte ist“ und „Fehler für ConsistencyPolicy.defaultConsistencyLevel() bei begrenzter Veraltung und Präfixkonsistenz“.
  • Korrigiert das Verhalten der Methode findById. Zuvor gab diese Methode „empty" zurück, wenn die Entität nicht gefunden wurde, statt eine Ausnahme auszulösen.
  • Korrigiert einen Fehler, bei dem die Sortierung auf der nächsten Seite nicht angewendet wurde, wenn CosmosPageRequest verwendet wurde.

2.1.9 (26. Dezember 2019)

Neue Funktionen

  • Fügt ein Anmerkungsfeld zum Aktivieren oder Deaktivieren der automatischen Sammlungserstellung hinzu.

Wichtige Fehlerbehebungen

  • Korrigiert das Verhalten der Methode findById. Zuvor gab diese Methode „empty" zurück, wenn die Entität nicht gefunden wurde, statt eine Ausnahme auszulösen.

2.2.0 (21. Oktober 2019)

Neue Funktionen

  • Vollständige Unterstützung für Reactive Azure Cosmos DB Repository.
  • Unterstützung für Azure Cosmos DB-Anforderungsdiagnose-Zeichenfolge und -Abfragemetriken.
  • Update der Azure Cosmos DB SDK-Version auf 3.3.1.
  • Upgrade der Spring Framework-Version auf 5.2.0.RELEASE.
  • Upgrade der Spring Data Commons-Version auf 2.2.0.RELEASE.
  • Fügt findByIdAndPartitionKey- und deleteByIdAndPartitionKey-APIs hinzu.
  • Entfernt die Abhängigkeit aus „azure-documentdb“.
  • Benennt „DocumentDB“ in „Azure Cosmos DB“ um.

Wichtige Fehlerbehebungen

  • Korrigiert „Bei der Sortierung wird ein Fehler ausgelöst, wenn ‚pageSize‘ kleiner als die Gesamtmenge der Elemente im Repository ist“.

2.1.8 (18. Oktober 2019)

Neue Funktionen

  • Kennzeichnet „DocumentDB-APIs“ als veraltet.
  • Fügt findByIdAndPartitionKey- und deleteByIdAndPartitionKey-APIs hinzu.
  • Fügt optimistische Sperre basierend auf _etag hinzu.
  • Aktiviert „SPeL“-Ausdruck für den Namen der Dokumentsammlung.
  • Fügt ObjectMapper-Verbesserungen hinzu.

2.1.7 (18. Oktober 2019)

Neue Funktionen

  • Fügt Abhängigkeit für Azure Cosmos DB SDK-Version 3 hinzu.
  • Fügt Reactive Azure Cosmos DB Repository hinzu.
  • Aktualisiert die Implementierung von DocumentDbTemplate, damit Azure Cosmos DB SDK-Version 3 verwendet wird.
  • Fügt weitere Konfigurationsänderungen für Reactive Azure Cosmos DB Repository hinzu.

2.1.2 (19. März 2019)

Wichtige Fehlerbehebungen

  • Entfernt applicationInsights-Abhängigkeit für:
    • Potenzielles Risiko einer Verunreinigung von Abhängigkeiten.
    • Java 11-Inkompatibilität.
    • Vermeidung potenzieller Leistungsbeeinträchtigungen für CPU bzw. Arbeitsspeicher.

2.0.7 (20. März 2019)

Wichtige Fehlerbehebungen

  • Backport entfernt applicationInsights-Abhängigkeit für:
    • Potenzielles Risiko einer Verunreinigung von Abhängigkeiten.
    • Java 11-Inkompatibilität.
    • Vermeidung potenzieller Leistungsbeeinträchtigungen für CPU bzw. Arbeitsspeicher.

2.1.1 (7. März 2019)

Neue Funktionen

  • Hauptversion auf 2.1.1 aktualisiert.

2.0.6 (7. März 2019)

Neue Funktionen

  • Ignorierung aller Ausnahmen von Telemetrie.

2.1.0 (17. Dezember 2018)

Neue Funktionen

  • Aktualisiert die Version auf 2.1.0, um das Problem zu beheben.

2.0.5 (13. September 2018)

Neue Funktionen

  • Fügt die Schlüsselwörter exists und startsWith hinzu.
  • Aktualisiert die Infodatei.

Wichtige Fehlerbehebungen

  • Korrigiert „Direkter Aufruf von self href für Entität nicht möglich“.
  • Korrigiert „Fehler für findAll, wenn Sammlung nicht erstellt wird“.

2.0.4 (Vorabversion) (23. August 2018)

Neue Funktionen

  • Benennt das Paket von „documentdb“ in „cosmosdb“ um.
  • Fügt ein neues Feature des Schlüsselworts für die Abfragemethode hinzu. 16 Schlüsselwörter aus der API für NoSQL werden jetzt unterstützt.
  • Fügt ein neues Feature für Abfragen mit Seitenverwaltung und Sortierung hinzu.
  • Vereinfacht die Konfiguration von „spring-data-cosmosdb“.
  • Fügt deleteCollection- und deleteAll-APIs hinzu.

Wichtige Fehlerbehebungen

  • Fehlerbehebung und Entschärfung von Fehlern.

Häufig gestellte Fragen

Wie werde ich über die Einstellung eines SDK benachrichtigt?

Um einen reibungslosen Übergang zu einem unterstützten SDK zu ermöglichen, informiert Microsoft 12 Monate vor Ende des Supports über die Einstellung eines SDK. Sie werden über verschiedene Kommunikationskanäle benachrichtigt: Azure-Portal, Azure-Updates und direkte Kommunikation mit den entsprechenden Dienstadministratoren.

Kann ich mit einem Azure Cosmos DB SDK, das eingestellt werden soll, während der 12-monatigen Frist Anwendungen erstellen?

Ja, mit einem solchen Azure Cosmos DB SDK können Sie während der 12-monatigen Frist Anwendungen erstellen, bereitstellen und ändern. Es wird empfohlen, nach Bedarf innerhalb der 12-monatigen Frist zu einer neueren unterstützten Version des Azure Cosmos DB SDK zu migrieren.

Was geschieht nach dem Einstellungsdatum mit Anwendungen, die das nicht unterstützte Azure Cosmos DB SDK verwenden?

Nach dem Einstellungsdatum werden von Azure Cosmos DB für die eingestellten SDK-Versionen keine Fehlerbehebungen mehr durchgeführt und keine neuen Funktionen hinzugefügt, und es wird auch kein Support mehr dafür angeboten. Wenn Sie kein Upgrade durchführen möchten, werden von den eingestellten Versionen des SDK gesendete Anforderungen weiterhin vom Azure Cosmos DB-Dienst bedient.

Welche SDK-Versionen werden über die neuesten Funktionen und Updates verfügen?

Neue Funktionen und Updates werden nur der aktuellen Nebenversion der neuesten unterstützten SDK-Hauptversion hinzugefügt. Es wird empfohlen, immer die aktuelle Version zu verwenden, um von neuen Funktionen, Leistungsverbesserungen und Fehlerbehebungen zu profitieren. Wenn Sie eine alte, noch nicht eingestellte Version des SDK verwenden, funktionieren Ihre Anforderungen an Azure Cosmos DB weiterhin, Sie haben jedoch keinen Zugriff auf neue Funktionen.

Was muss ich tun, wenn ich meine Anwendung nicht vor einem Stichtag aktualisieren kann?

Es wird empfohlen, so früh wie möglich auf das neueste SDK zu aktualisieren. Nachdem ein SDK für die Einstellung markiert wurde, bleiben Ihnen 12 Monate zur Aktualisierung Ihrer Anwendung. Wenn Sie die Aktualisierung nicht bis zum Einstellungsdatum vornehmen können, werden von den eingestellten Versionen des SDK gesendete Anforderungen weiterhin von Azure Cosmos DB verarbeitet, sodass Ihre ausgeführten Anwendungen weiterhin funktionieren. Für die eingestellten SDK-Versionen werden jedoch von Azure Cosmos DB keine Fehlerbehebungen mehr durchgeführt und keine neuen Funktionen hinzugefügt, und es wird auch kein Support mehr dafür angeboten.

Wenn Sie über einen Supportplan verfügen und technischen Support benötigen, kontaktieren Sie uns, indem Sie ein Supportticket erstellen.

Wie kann ich anfordern, dass Features zu einem SDK oder Connector hinzugefügt werden?

Neue Features werden nicht immer jedem SDK oder Connector sofort hinzugefügt. Wenn eine Funktion, die Ihrer Meinung hinzugefügt werden sollte, nicht unterstützt wird, fügen Sie bitte unserem Communityforum ein Feedback hinzu.

Nächste Schritte

Erfahren Sie mehr über Azure Cosmos DB.

Informieren Sie sich genauer über das Spring-Framework.

Informieren Sie sich genauer über Spring Boot.

Informieren Sie sich genauer über Spring Data.