2009-03-01 10 views
6

Próbuję zdecydować, czy użyć voldemorta czy couchdb na nadchodzący projekt opieki zdrowotnej. Chcę system pamięci masowej o wysokiej dostępności, odporności na uszkodzenia i skalowalny dla ogromnych ilości danych, które są w nim zgłaszane.voldemort vs. couchdb

Jakie są zalety/wady każdego?

Dzięki

+0

ja często przeczytać, że dokonane przez InterSystems Cache jest mocno używana w 'świecie' opieki zdrowotnej. Czy nie mogą zapewnić rozwiązania? – tuinstoel

Odpowiedz

1

Czy memcacheDB opcja? Słyszałem, jak Digg radził sobie z problemami HA.

+0

pewnie, jaka byłaby zaleta memcacheDB w stosunku do innych 2 – py213py

+0

Co sprawia problemy HA? – Sam152

+0

lol. w jaki sposób jest tolerowany błąd memcached? –

5

Project Voldemort wygląda ładnie, ale nie spojrzał głęboko w nim do tej pory.

w nim aktualny stan CouchDB nie może być słuszne dla „ogromnych ilości danych”. Dystrybucja danych między węzłami i zapytaniami routingowymi znajduje się w planie działania, ale dotychczas nie została wdrożona. Największe znane konfiguracje produkcyjne CouchDB wykorzystują "tabele" ("bazy danych" w rozmowach na kanapie) o wartości około 200G.

HA nie jest natywnie obsługiwany przez CouchDB ale łatwo można zbudować: Wszystkie węzły couchdb są węzły replikacji baz danych pomiędzy sobą w konfiguracji multi-master. Umieszczamy dwa urządzenia: Varnish proxies przed maszynami CouchDB, a skrzynki lakiernicze są nadmiarowe pod numerem CARP. CouchDBs "buduj z sieci" sprawia, że ​​takie rzeczy są bardzo łatwe.

Najbardziej palącym problemem w numerze our setup jest fakt, że nadal występują problemy z replikacją dużych (wielu MB) załączników do dokumentów CouchDB.

Proponuję również sprawdzić tradycyjną drogą RDBMS. There are huge issues z dostępnych talentów poza podejściem RDBMS i są bardzo zdolne oferty dostępne od Oracle & Co.

4

Nie wiedząc tyle z pytaniem, niemniej jednak chciałbym powiedzieć projektu Voldemorta lub rozproszona tablica mieszająca (DHTs) jak CouchDB w ogóle są rozwiązaniem twojego problemu HA.

DHTs te są bardzo miłe dla wysokiej dostępności, ale trudniej napisać kod niż w przypadku tradycyjnych relacyjnych baz danych (RDBMS) dotyczącą spójności.

Są one dość dobre, aby przechowywać informacje typu dokumentu, który może zmieścić ładnie z projektu opieki zdrowotnej, ale trudniej zrobić rozwój danych.

  • Największym ograniczeniem większości sklepów jest to, że są one nie transakcyjnie bezpieczny (Patrz scalaris dla transakcyjnie bezpiecznego sklepu) i trzeba zapewnić spójność danych przez siebie - najbardziej użycie czytać spójność czasową poprzez połączenie sprzecznych dane). RDBMS są znacznie łatwiejsze w użyciu dla spójności danych (ACID).
  • Łączenie danych jest również znacznie trudniejsze. W RDBM można łatwo wyszukiwać dane w kilku tabelach, należy napisać kod w CouchDB, aby zebrać dane. W przypadku innych sklepów Hadoop może być dobrym wyborem do gromadzenia informacji.

Przeczytaj o BASE i CAP twierdzenie o konsystencji vs. dostępności.

Zobacz