2009-08-04 47 views
15

Interfejs API Java JCR definiuje mechanizm utrwalania, który można zastąpić wieloma tradycyjnymi rolami RDBMS. Na przykład JackRabbit - implementacja referencyjna JCR - obsługuje transakcje, zapytania SQL, mapowanie treści obiektów itp.Kiedy należy używać JCR i kiedy należy używać JPA/RDBMS?

Można wybrać jedną lub drugą, przechowując dane binarne w wskaźnikach BLOB/systemu plików w RDBMS lub danych tekstowych we właściwościach węzła JCR. Czy ktoś ma doświadczenie zastępując przerzucanie ich DB na rzecz JCR?

Można użyć obu, być może przechowywania danych binarnych w CR i danych tekstowych w RDBMS, ale wtedy trzeba wyrazić relacje między systemami, zachować je zsynchronizowane, itp. Ty też zaczynasz stawać przed trudnym pytaniem: " No cóż, dobrze jest zachować ten tytuł dokumentu z danymi binarnymi dokumentu, więc zrobię z tego właściwość węzła ... ale potem mam ten rekord dokumentu w moim DB, więc może powinienem go tam zatrzymać. "

Jak decydujesz?

+1

Naprawdę jestem tym zainteresowany. Mając nadzieję, że będzie więcej odpowiedzi, które są odkrywcze, informacyjne i dość obiektywne. Dla JCR faceci mogą łatwo podważyć RDBMS, ale biorąc pod uwagę wszystkie praktyczne scenariusze, narzędzia itp. Myślę, że RDBMS nadal ma pewne "zalety". –

Odpowiedz

13

Jest papier Bertil Chapuis na dokładnie tym temacie:

JCR or RDBMS? (blog post)

I jest też ruch NoSQL (opisany in this article na przykład, albo here), która trwa dyskusja to, hmmm, powiedzmy, "podkreśla" wady modelu relacyjnego.

+0

Łącze do raportu JCR lub RDMBS jest zepsute. – darrint

+0

@darrint - link jest teraz naprawiony. –

+0

Linki są zerwane. Dostęp do plików PDF można uzyskać tutaj: http://web.archive.org/web/20120617025025/http://dev.day.com/content/ddc/blog/2009/01/jcrrdbmsreport/_jcr_content/images/jcrrdbmsreport/jcr_rdbms_report_chapuis. pdf – kolobok

Powiązane problemy