Структура списка смежности в HBase

Я пытаюсь реализовать следующий алгоритм сокращения графа в

  • Граф является неориентированным взвешенным графом
  • Я хочу удалить все узлы только с двумя соседями
  • и обновить вес

Взгляните на следующую иллюстрацию:

http://public.kungi.org/graph-reduction.png

Алгоритм должен преобразовать верхний граф в нижний. Удалите узел 2 и обновите вес ребра до: w(1-3) = w(1-2)+w(2-3)

Поскольку у меня очень большой график, я делаю это с помощью MapReduce.

Мой вопрос заключается в том, как представить график в HBase. Я думал о создании структуры списка смежности в HBase следующим образом:

Семейства столбцов: узлы, соседи 1 -> 2, 6, 7...

Есть ли более приятный способ сделать это?


person Kungi    schedule 25.06.2010    source источник


Ответы (1)


Списки смежности являются наиболее часто рекомендуемой структурой.

Вы можете использовать идентификатор каждого узла в качестве идентификатора строки и идентификаторы соседей в качестве квалификаторов столбцов с весами в качестве значений.

person MattMcKnight    schedule 01.02.2012