Szum wokół baz danych grafów ... dlaczego?

Jest trochę wokół baz danych grafów . Zastanawiam się dlaczego.

Jakie są możliwe problemy, z którymi można się zmierzyć w dzisiejszym środowisku internetowym, które można rozwiązać za pomocą grafowych baz danych? A czy grafowe bazy danych nadają się do klasycznych zastosowań, tzn. czy można je wykorzystać jako zamiennik relacyjnej bazy danych? Więc w rzeczywistości to dwa pytania w jednym.

Powiązane: czy ktoś korzystał z baz danych opartych na grafach (http://neo4j.org/)?

Author: Community, 2009-07-21

2 answers

Wiele relacyjnych reprezentacji Wykresów nie jest szczególnie wydajnych dla wszystkich operacji, które chcesz wykonać.

Na przykład, jeśli ktoś chce mieć połączony zestaw wszystkich węzłów, w których krawędzie spełniają dany predykat, zaczynając od danego węzła, nie ma naturalnego sposobu w SQL, aby to wyrazić. Prawdopodobnie albo wykonasz Zapytanie o krawędzie z predykatem, a następnie będziesz musiał wykluczyć rozłączone krawędzie lokalnie, lub przeprowadzisz bardzo szczegółową rozmowę z serwerem bazy danych po jednym zestaw linków do następnego w zapytaniach iteracyjnych.

Wykresy nie są ogólnym zamiennikiem relacyjnych baz danych. RDBs zajmują się przede wszystkim zbiorami (tabelami), natomiast wykresy są interesujące przede wszystkim ze względu na "kształt" wzajemnych połączeń. W relacyjnych DBs podążasz za łączami o określonej głębokości (stałej liczbie połączeń) między zestawami, z wynikami stopniowo filtrowanymi i pogrupowanymi, podczas gdy wykresy są zwykle nawigowane do arbitralnej i rekurencyjnie zdefiniowanej głębokości (tj. liczba "złączeń"). Możesz nadużywać albo, aby dopasować cechy innych, ale będą one miały różne mocne strony.

 21
Author: Barry Kelly,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-21 13:43:33

Moim zdaniem serwisy społecznościowe mogą korzystać z baz danych graph, ponieważ graph jest naturalnym sposobem przechowywania połączeń między użytkownikami.

 4
Author: empi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-21 13:49:11