Podsumowanie

Ukończone
  • Oprogramowanie GraphLab to rozproszony aparat do analizy równoległej przeznaczony dla aplikacji do uczenia maszynowego i wyszukiwania danych (MLDM).
  • Programy GraphLab są wykonywane w dwóch fazach: fazie inicjowania i fazie wykonywania.
  • Obliczenia w GraphLab są wykonywane za pomocą zdefiniowanej przez użytkownika operacji zbierania, stosowania i rozpraszania (Gather, Apply, Scatter — GAS), która aktualizuje wartości związane z wierzchołkiem.
  • Aparat GraphLab różni się od aparatu Pregel tym, że model obliczeń obsługuje zarówno obliczenia synchroniczne, jak i asynchroniczne.
  • Węzły GraphLab są uporządkowane równorzędnie, mimo że węzeł uruchomiony jako pierwszy jest oznaczany jako aparat główny i służy do monitorowania systemu.
  • Aparat GraphLab obsługuje spójność z możliwością dostosowania w ramach modeli spójności pełnej, brzegowej i wierzchołkowej przy użyciu różnych aparatów, w kolejności malejącej spójności i rosnącej równoległości.
  • Oprogramowanie GraphLab zapewnia trzy aparaty: synchroniczny, asynchroniczny i asynchroniczny serializowany.
  • W celu uzyskania odporności na uszkodzenia GraphLab sugeruje użycie synchronicznego i asynchronicznego rozproszonego tworzenia punktów kontrolnych.
  • Usługi MapReduce i Spark są traktowane jako aparaty równoległe danych, a narzędzie GraphLab można scharakteryzować jako aparat równoległy grafów.
  • Usługa MapReduce jest przeznaczona do obsługi aplikacji o luźniejszych połączeniach lub aplikacji zaskakująco równoległych, usługa Spark jest przeznaczona do obliczeń iteracyjnych, a narzędzie GraphLab jest odpowiednie w przypadku aplikacji, które można wyrazić w postaci abstrakcji grafu.