2017-05-17 1 views
2

Da DocumentDB und MongoDB beide dokumentenorientierte DBs sind, scheinen sie den gleichen Datentyp zu modellieren, und beide sind gut geeignet, um die gleichen Probleme zu lösen.CosmosDB DocumentDB-API gegen CosmosDB MongoDB-API?

Neben dem unterschiedlichen Ökosystem, dem Lock-In von Adobe Acrobat bei Azure und den Stärken/Erfahrungen des Teams gibt es noch etwas anderes zu beachten, wenn Sie eines auswählen.

Ich würde davon ausgehen, dass da DocumentDB von Microsoft für Azure entwickelt wurde, mit CosmosDB-Architektur einen Kostenvorteil gegenüber der MondoDB-API hätte? Wie groß ist der Kostenvorteil der DocumentDB-API gegenüber der MongoDB-API für den gleichen Typ von Datenspeicher & Anfragen?

Ich versuche zwischen CosmosDB DocumentDB-API und CosmosDB MongoDB-API für ein neues Projekt zu entscheiden. Vielen Dank.

Wenn Sie ein neues Projekt auf CosmosDB starten und DocumentDB und MongoDB genauso gut kennen und eine dokumentenorientierte Datenbank benötigen, welche API würden Sie wählen und warum?

+0

Ich verstehe die Frage nicht. CosmosDB ist eine Obermenge von DocumentDB. –

+0

Bitte hör auf, Fragen in Kommentaren zu stellen. Stellen Sie eine neue Frage. Und wieder verstehe ich deine Frage nicht, "mit cosmosDB direkt zu arbeiten." –

+0

Sorry, ich habe die Frage umformuliert. Vielen Dank. –

Antwort

1

Sie sollten die API auswählen, die für Ihr spezielles Szenario am sinnvollsten ist - die eine große Anzahl von Faktoren enthält, die z. Ist dies ein Greenfield-Projekt gegenüber einem bestehenden Projekt, wie sehen Ihre speziellen Datenzugriffsmuster aus? Verwenden Sie Standard-JSON-Datentypen im Vergleich zu MongoDB-spezifischen Datentypen usw.

Das langfristige Ziel besteht darin, Parität zu erreichen Begriffe der Robustheit zwischen allen Cosmos DB APIs. Damit ist das DocumentDB-API das am besten getestete Tool, das es schon seit längerem gibt.

+0

Es ist ein Greenfield-Projekt. Was meinst du mit "Datenzugriffsmustern"? Tue, dass ich MongoDB nicht kenne, also kann ich entweder MongoDB-API oder DocumentDB-API verwenden. Wie entscheide ich mich? Gibt es etwas Wichtigeres, dass ich mir ansehen sollte? –

1

Ich würde nur die MongoDB API verwenden, wenn Sie Anforderungen für den direkten Zugriff auf die Datenbank auf nicht unterstützten Plattformen (wie PHP) haben. Wenn Sie die DocumentDB-API verwenden, müssen Sie die REST-API verwenden. Es gibt eine MongoDB API für PHP, also wäre dies viel bequemer.

Die DocumentDB-API wurde für CosmosDB entwickelt, so dass sie die breiteste Funktionalität bietet.

Denken Sie daran, dass CosmosDB nicht alle Funktionen von MongoDB bietet. Das Aggregationsframework fehlt, Sie haben also keine $groupby, distinct, ... zu Ihrer Verfügung. Obwohl MS sagt, dass CosmosDB als eine verwaltete MongoDB-Lösung verwendet werden kann, sollten Sie sorgfältig prüfen, was Sie benötigen, bevor Sie zu CosmosDB wechseln.

1

Es gibt viele Dinge zu beachten, aber eine, die ich noch nicht erwähnt habe, ist, dass DocumentDb keine Update-Operationen unterstützt, die nicht das gesamte Dokument ersetzen. Dagegen hat MongoDb die Befehle $ set, $ unset, $ push, $ pull und einige andere Operatoren, mit denen Sie einen Teil des Dokuments ändern können.

Verwandte Themen