Альтернатива сущности, связанной со многими другими сущностями, но только с одной одновременно

#java #spring #spring-boot #spring-data-jpa #spring-data

#Ява #весна #пружинный ботинок #весна-данные-jpa #весна-данные

Вопрос:

Я храню сущности других API в своей базе данных и использую центральную локальную сущность, связанную с ними, как способ их организации (мне нужно, чтобы у них был локальный идентификатор, но также была возможность кэшировать часть их информации и запрашивать любую дополнительную информацию в их соответствующий API, если это необходимо).

Я думал об использовании следующего дизайна, но мой босс говорит, что это было бы нехорошо, потому что в центральной таблице было бы много информации (перегруженной).

Диаграмма классов

Результирующая таблица для моей центральной сущности будет:

Поля Центральной Таблицы

Только один FK будет иметь значение для каждой строки, а остальные будут равны нулю. Я не знаю, могу ли я использовать какой-либо шаблон дизайна или любую другую альтернативу для этого.

Комментарии:

1. Что, если бы у вас было еще 26 типов сущностей, с которыми нужно было иметь дело? (Короче говоря, можете ли вы придумать решение, в котором используется только 1 столбец идентификатора внешней сущности?)

2. Все таблицы на диаграмме являются локальными. В таблицах справа есть столбец для идентификатора внешней сущности. Проблема не в столах справа, она в столе слева. Потому что, если бы у меня было еще 26 типов сущностей, в нем было бы еще 26 столбцов (в качестве внешних ключей), создающих массивную и несколько неорганизованную таблицу.