2015-05-06 17 views
5

Jako deweloperzy .NET obecnie używamy domyślnego wyboru bazy danych w nosql. Teraz, gdy Microsoft wprowadził DocumentDb, bazę danych dokumentów jako usługę, szukamy różnic między tymi dwoma. Baza danych jako usługa wydaje się miła, ponieważ uruchamiamy RavenDb na naszym własnym serwerze.Azure DocumentDb kontra RavenDb

Ayende Rahien jako interesting post, ale jest trochę przestarzały, ponieważ porównuje się ze starą wersją DocumentDb. Niemniej jednak nadal jest to dobra lektura.

Edit: Po przeczytaniu Thoughts on Azure DocumentDB zacząłem wątpić about the pricing z DocumentDb. Załóżmy, że mój model danych składa się z 7 kolekcji, co oznacza, że ​​musiałbym zapłacić 7 * 25 $ = 175 $ miesięcznie! Muszę popełnić tutaj jakiś błąd, prawda !?

Edit2: Ideą twórców DocumentDb wydaje się umieścić więcej niż jeden typ dokumentu w jednej kolekcji, która wydaje się nieco dziwne dla mnie po użyciu ravendb na chwilę teraz. Termin collection spowodowało pewne problemy ze zrozumieniem DocumentDb ceny jak to jest coś zupełnie innego w DocumentDb następnie w RavenDb

W której scenariusz wybrałbyś DocumentDb nad RavenDb?

Odpowiedz

4

The post zaleca, aby umieścić o wiele więcej rzeczy w jednym zbiorze, niż byłoby inaczej. Nie jestem pewien mądrości tego długoterminowego, ale proponują to jako sposób na obniżenie kosztów. Ponadto, ponieważ nie istnieje izolacja transakcyjna między zbiorami, może być lepiej, jeśli trzeba aktualizować więcej niż jeden dokument na raz, aby zachować je w tym samym zbiorze.

+1

dokładnie. nie myśl o kolekcji jako tabeli, która może pomieścić tylko jeden typ obiektu. –

+0

Można powiedzieć, że zbiory DocumentDB są bliższe fizycznym partycjom niż tabelom. Kolekcje obsługują wiele typów jednostek (nie wymuszają schematu). Każda kolekcja otrzymuje zarezerwowaną ilość pamięci (10 gb) i przepustowość (na podstawie warstwy perf). Przekonasz się, że ceny są dość konkurencyjne, jeśli chodzi o magazynowanie i przepustowość (porównaj z https://ravenhq.com/pricing.html). –

+0

Tak, pomyśl o nich jako o partycjach. To pomaga. Nadal zastanawiam się, jak to wpływa na kodowanie i bieganie, ale na razie będę z tym rozmawiał. Czy z tego powodu indeksy będą większe/wolniejsze? Czy jest to tylko problem w indeksach b-tree, w przeciwieństwie do pierwszego 3-znakowego hasha, które wykorzystuje DDB? –