2016-07-29 41 views
7

Mam duży wykres z kilku 100 GB, więc nie mogę go zapisać w pamięci RAM. Wykres ma wiele krawędzi i są etykiety dla każdej krawędzi. Chciałbym wykonać kwerendy takie jak:Jak przechowywać duży wykres na dysku?

  1. Pokaż wszystkie krawędzie, które pochodzą z określonego węzła.
  2. Pokaż wszystkie krawędzie między dwoma podanymi węzłami.
  3. Wybierz 1000 losowych par węzłów, które są połączone i pokaż mi wszystkie krawędzie między nimi.
  4. Wybierz 1000 wybranych węzłów.

Jaki jest dobry sposób przechowywania wykresu na dysku dla tego rodzaju zapytań?

Jest to jeden komputer o wysokiej wydajności, a nie ustawienie rozproszone. Moim preferowanym językiem programowania jest język Python.

Odpowiedz

4

Możesz spróbować użyć bazy danych wykresów Neo4J. Ma support for Python language i bogaty query syntax, który da ci możliwość wykonywania wszystkich zapytań, o których wspomniałeś.

+0

Dziękuję, że wygląda interesująco. Czy znasz SNAP z Uniwersytetu Stanforda? – eleanora

+0

@eleanora, nie, nie mam doświadczenia z SNAP – SerCe