У меня есть неориентированный граф, где каждый узел содержит массив. Данные можно добавлять / удалять из массива. Как лучше всего сохранить это в Mongodb и иметь возможность эффективно выполнять этот запрос: для данного узла A выберите все данные, содержащиеся в соседних узлах A.
В реляционной БД, вы можете создать таблицу, представляющую ребра, и другую таблицу для хранения данных в каждом узле, вот так.
table 1
NodeA, NodeB
NodeA, NodeC
table 2
NodeA, item1
NodeA, item2
NodeB, item3
А затем вы присоединяетесь к таблицам, когда запрашиваете данные в соседних узлах. Но объединение невозможно в MongoDB, так что как лучше всего настроить эту базу данных и эффективно запрашивать данные в соседних узлах (немного отдавая предпочтение производительности, а не пространству).