Мой первый вопрос: как вы планируете получить доступ к информации?Подумайте о структурировании данных, как вам нужно получить к ним доступ.Не стесняйтесь нарушать правила нормализации, которые нас кормили последние 20 лет.Охватите избыточные специализированные модели.Также продумайте все сразу и подумайте об использовании параллельных запросов.если данные хранятся в нескольких местоположениях, следуйте за каждым местоположением одновременно и агрегируйте результаты.
И, наконец, сохраните некоторые данные в предопределенном формате отображения.Вероятность того, что информация о вашем генеалогическом дереве в основном читается, так что имейте «просмотры», которые оптимизированы.Может быть, когда вы найдете человека, которого хотите отобразить, там будет один XML-файл, в котором все эти данные готовы для просмотра.