Я ищу модель базы данных для эффективного запроса временных отношений между различными событиями. Где событие — это объект с датой начала и окончания.
Упрощенный пример:
Найдите все лекарства, которые использовались во время операции, которая произошла во время госпитализации.
Госпитализация, операция и лекарства — все это события, но они также имеют свои собственные определенные столбцы, поэтому традиционно в СУБД они хранятся в своих собственных таблицах.
Для этого примера скажем, что госпитализация, операция и лекарства имеют ~ 10 ^ 7 событий каждое.
Пример того, как можно попытаться решить аналогичную проблему в postgres, см. в этом вопросе/ответе: Как оптимизировать запрос для вычисления отношений даты и времени, зависящих от строк?