Я хочу написать приложение, которое позволяет пользователям определять свои собственные схемы базы данных. Пользователь предоставляет определение с использованием DSL (биологических экспериментов), и на основе этого создается модель отношения oop/entity. Бэкэнд должен быть РСУБД, такой как Postgres.Пользовательские схемы данных для приложений
Каков наилучший способ для этого?
Я вижу два возможных пути у верхней части моей головы: типы
- Карта для таблиц SQL так же, как вы бы при написании Django или Hibernate приложения на основе. Затем объекты сопоставляются строкам таблицы.
- Опишите типы в таблице «тип» и объектах в другой таблице.
Что здесь вообще делают люди? Для 1. управление разрешениями и т. Д. Может быть передано rdbms. Однако как можно отслеживать изменения здесь и разрешать откаты?
Может ли кто-нибудь указать мне на лучшую практику?
В чем проблема, которую вы хотите решить? Вы пишете, что хотите создать RDBMS, модель отношения oop/entity, управление разрешениями, отслеживать изменения, разрешать откаты. Но вы вряд ли намекали на то, что вы создаете. –
Является ли пользователь, предоставляющий DSL фиксированное требование - может ли это, например, быть каким-то XML или JSON? –