2009-06-14 8 views
6

Jakie są mocne i słabe strony bazy danych triplestore, na przykład Mulgara? W których sytuacjach jego wydajność znacząco różni się od wydajności tradycyjnej relacyjnej bazy danych?Jakie są mocne i słabe strony bazy danych triplestore?

Mam na myśli w szczególności sytuacje, w których dane są w postaci namespace:predicate=value. Wydaje się, że potrójne magazyny przechowują dane w swojej "naturalnej" formie, ale chciałbym wiedzieć, czy istnieją konkretne zalety.

Odpowiedz

2

Zakładam pytasz o trwałości trójek (i ewentualnie wykresach poprzez quady), gdzie przechowywanie jest albo „native” triple store (np TDB) lub relacyjnej bazy danych z nakładką potrójne sklepu (jak SDB).

Jeśli skomplikowany od wymagań, jestem pewien członkowie Stos przelewowe mogą oferować bardziej skierowaną odpowiedź, ale tuż przy mojej głowie:

  • Native potrójne sklepy mają zazwyczaj lepsze wyniki, gdy rozmiar zbioru danych staje się bardzo duży. Zobacz some numbers from the W3C.
  • Rodzime trzyosobowe sklepy mogą oferować rozumowanie/inferencje w sklepie (takie jak semantyczny pakiet narzędzi Oracle, mimo że nie obsługuje on w pełni SPARQL).
  • Troje w RDBMS można "łatwo" zintegrować z tradycyjnymi narzędziami do raportowania (takimi jak Raporty Jaspera), ponieważ można je odpytać za pomocą SQL.
5

Jestem twórcą Redland, który obejmuje macierzyste potrójne sklepy w C plus użyłem niektórych systemów Java, takich jak Jena i Sezam.

Trudno powiedzieć więcej bez znajomości problemu, ale ogólnie natywne trójki działają lepiej, jeśli problem/wzór zapytania jest bardziej "graficzny", niż "objecty". Objecty oznacza, że ​​zawsze manipulujesz - ustawiasz/uzyskujesz ten sam wzorzec danych za każdym razem - w takim przypadku możesz równie dobrze użyć ORM lub innego mappingu obiektowo-relacyjnego i stałego schematu. Jeśli Twój problem i schemat jest bardziej dynamiczny - "Graphy" - możesz skorzystać z podejścia opartego na potrójnym sklepie, w którym łatwiej jest przeskoczyć dane niż zwykle w świecie RDBMS (również w złączach).

Oczywiście istnieje również podejście oparte na dokumentach, takie jak CouchDB, ale jest to trudne do uzyskania z podanych informacji.

Powiązane problemy