У меня есть типы сущностей A и B, которые имеют отношение многие ко многим в моей БД. Я хочу вызвать событие при изменении членов любых групп объекта B с общим набором или связями с типом объекта As. например, у нас есть A (1) A (2) A (3) и B (1) B (2) B (3) `если мы вставим следующие соотношения
A(1)->B(1)
A(1)->B(2)
A(1)->B(3)
A(2)->B(1)
A(2)->B(2)
, у нас есть 2 группы,G (1) = B (1) и B (2) оба имеют общее множество отношений к A (1) И A (2), G (2) = B (3) вторая группа, содержащая только отношения к A (1) и ничего больше
, если мы добавим
A(3)->B(2)
A(3)->B(3)
, теперь у нас есть три группы, каждая из которых содержит только один B, а G (2), созданная на начальной вставке, теперь пуста, новсе еще требуется событие
G(1)=B(1)
G(2)=<EMPTY<
G(3)=B(2)
G(4)=B(3)
Я хочу событие для каждой из этих четырех групп
В настоящее время я делаю это, хэшируя набор As, принадлежащий любому B, а затем группирую B на этомзначение
Я выполняю эти вставки в виде массивных блоков (по 100 000 для каждого со средним значением ab, превышающим 100 B), поэтому это достаточно эффективно, но код, конечно, ад. Я должен создать экземпляры групп как сущности в моей БД по мере их формирования и обеспечить, чтобы все затронутые группы получили событие.
Могут ли помочь БД графов?