Как грамотно cпроектировать базу данных чтобы глобальный объект был с переписанными некоторыми свойствами?
Так сложилось что у нас у каждого клиента нашего приложения своя база данных. Сложное корпоративное приложение.
Есть некоторые типы объектов - которые одинаковые на всех инстансах. Один из простых примеров - страны.
Итак вопрос, как между разными сайтами так организовать шаринг таких объектов. И более того - на некоторые объекты всё же есть локальная кастомизация - некоторые поля отличаются. Например, один клиент попросил называть страну не USA а US.
Пример со странами - лишь самый простой, есть более сложные объекты, и кастомизаций в них больше.
Как это всё организовать? Тип базы данных может быть любой MySQL, MongoDB, PostgreSQL и т.п. Выбор не ограничен.
Не совсем понятно, что именно Вы хотите организовать. Если Вам нужен централизованный сервер хранения общих объектов, так вот на вскидку приходит мысль - берёте сервер PostgreSQL (центаральный), создаёте там все нужные инстансы, подключаете с удаленных серверов этот сервер, наследуете таблицы инстансов с центрального сервера на каждом клиенте и кастомизируете их там (на клиентах) как хотите.
Евгений Вольф: "наследуете таблицы инстансов с центрального сервера на каждом клиенте и кастомизируете их там (на клиентах) как хотите" - а что - так можно на PostgreSQL?
Aleks_ja: я думаю да, хотя вот сходу сказать не могу. Я постараюсь проверить в ближайшее время свою догадку, но логических препятствий со стороны PostgreSQL - не вижу, возможно какие-то технические особенности будут.