Я создаю приложение, которое будет использовать как минимум два разных API для данных своих моделей. Например, у меня будет сущность / модель человека. Данные для этого человека поступают как минимум из двух разных API, и в будущем их может быть больше. Например, электронная почта и номер телефона могут поступать из одного источника данных, а имя и отчество - из другого.
Как можно структурировать для этого базу данных, достаточно гибкую, чтобы обрабатывать добавление / удаление «источников данных».
Я изначально думал, что структура базы данных выглядит так:
[лицо]
- Я БЫ
- Имя
- Фамилия
- Эл. адрес
- PhoneNumber
[Person_FIRST_SOURCE]
- Person_ID
- Person_FIRST_SOURCE_ID
[Person_SECOND_SOURCE]
- Person_ID
- Person_SECOND_SOURCE_ID
Который я затем смог бы в скрипте синхронизации данных найти, какой объект «Человек» в моей базе данных представляет текущий итерирующий человек из источника. Это позволило бы мне легко подключать / добавлять больше источников по мере продвижения.
РЕДАКТИРОВАТЬ: Я хотел бы добавить, что не всегда лицо А существует в обоих источниках данных.
РЕДАКТИРОВАТЬ 2: Главный вопрос на самом деле не зависит от модели "Человек". Это могла быть модель любого типа; Книга, школа, компания и т. Д. Просто некоторая форма модели, в которой данные поступают из нескольких источников.