LINUX.ORG.RU

История изменений

Исправление Legioner, (текущая версия) :

Есть очень красивая и удобная ER-модель. На её основе созданы RDBMS. Современные RDBMS это очень надёжные и гибкие системы хранения и обработки данных.

Чтобы представлять «многие-ко-многим» без дополнительных таблиц, тебе нужно:

  1. Изобрести новую математику взамен ER-модели с её реляционной алгеброй.
  2. Написать DBMS на основе этой математики, качеством не хуже таких столпов, как sqlite, postgresql, mssql.
  3. Учесть современный тренд на кластеризацию.
  4. Подождать 30 лет, пока это всё достаточно заматереет для практического использования.

В итоге куда проще написать ORM-обёртку над RDBMS, у которой есть свои минусы, но задачу в итоге такая обёртка решает и там многие-ко-многим выглядят просто и естественно, а дополнительные таблицы это детали реализации.

Впрочем в последние годы появились какие-то новые нереляционные базы вроде mongo db, riac. Думаю, лет через 10 будет смысл на них смотреть, может быть там есть то, что ты хочешь?

Исходная версия Legioner, :

Есть очень красивая и удобная ER-модель. На её основе созданы RDBMS. Современные RDBMS это очень надёжные и гибкие системы хранения и обработки данных.

Чтобы представлять «многие-ко-многим» без дополнительных таблиц, тебе нужно:

  1. Изобрести новую математику взамен ER-модели с её реляционной алгеброй.
  2. Написать DBMS на основе этой математики, качеством не хуже таких столпов, как sqlite, postgresql, mssql.
  3. Учесть современный тренд на кластеризацию.
  4. Подождать 30 лет, пока это всё достаточно заматереет для практического использования.

В итоге куда проще написать ORM-обёртку над RDBMS, у которой есть свои минусы, но задачу в итоге такая обёртка решает и там многие-ко-многим выглядят просто и естественно, а дополнительные таблицы это детали реализации.

Впрочем в последние годы появились какие-то новые нереляционные базы вроде mongo db. Думаю, лет через 10 будет смысл на них смотреть, может быть там есть то, что ты хочешь?