Я начинаю проект бизнес-аналитики, который потребует абстрагирования доступа к двум существующим хранилищам данных. Мне нужно спроектировать архитектуру приложения, чтобы позволить бизнес-аналитикам самообслуживания объединять данные и обеспечивать единое представление двух существующих хранилищ. Я придумал что-то вроде этого:
Я борюсь с частью виртуализации / кэширования и задаюсь вопросом, существуют ли какие-либо шаблоны корпоративного дизайна для решения моей проблемы. Будет ли архитектура, подобная этой, абстрагировать звездные схемы в хранилищах данных? Я смотрю на такие продукты, как Red Hat JBoss Data Virtualization и Red Hat JBoss Data Grid (среди прочих).
В настоящее время мы не используем Hibernate, и я понимаю, что сетки данных являются хранилищами значений ключей или хранилищ объектов и поэтому непригодны для кэширования реляционной модели. Я должен также упомянуть, что мы стремимся использовать продукты вендоров для части панели самообслуживания, но мы можем закончить тем, что выполним какую-то специальную сборку в этой области, если вендоры не смогут предложить нам все, что мы хотим.
источник
{key: pk, value: the_rest_of_the_row}
? Возможно, вы также захотите кэшировать метаданные таблиц.Ответы:
Здесь нет большого количества подробностей о том, чего вы пытаетесь достичь, но из того, что вы описали, похоже, что вы могли бы сделать с витриной данных, чтобы абстрагироваться от основных репозиториев и предоставлять минимальное подмножество данных для обслуживать приложение.
Даже если бы вы могли разработать достойный прикладной уровень, вы, вероятно, столкнулись бы с проблемами производительности из-за нагрузки на одну (или обе) базы данных репозитория. Преимущество подхода mart заключается в том, что база данных, с которой взаимодействует приложение, обладает высокой производительностью. Обновления происходят в базах данных хранилища за кулисами и проталкиваются на основе, которую вы считаете нужным.
Дополнительное преимущество заключается в том, что на уровне приложений у вас есть только один поставщик БД.
источник