Виртуальный стол (aka View)

Мы используем облачную систему для обработки данных пациентов. Поставщики этого системного журнала отправляют копию своей базы данных SQL для использования, и мы восстанавливаем ее локально, чтобы мы могли составлять наши отчеты. Эти локальные таблицы заблокированы и доступны только для чтения. У нас нет контроля над этим.

Теперь начинается интересная часть. Мы создадим еще одну компанию, которая будет находиться под нашим контролем. Облачный поставщик не может объединить две компании в одной базе данных. Это означает, что мы получим второй комплект копии базы данных этой новой компании. Надеемся, что они будут иметь одинаковую физическую структуру, но, исходя из моего опыта работы с поставщиком, этого не произойдет.

Итак, мы получили БД № 1 под названием "CompanyA" БД № 2 под названием "CompanyB"

Их структура будет "такой же". Таким образом, мы можем легко создавать объединения между объектами двух БД.

В целях отчетности поставщик рекомендует нам использовать их медленные пользовательские представления. Поэтому любой код, который мы напишем с этими представлениями, не сломается, если они изменят внутренние таблицы своей системы. Они не индексируют представления, поэтому создают внешнее представление, что UNIONS, то же самое для CompanyA и CompanyB, неэффективны.

Создание промежуточного процесса для извлечения только данных объектов (таблицы / представления), которые мы используем, является еще одним вариантом, но мне не нравится идея дублирования данных в наших системах.

Мы можем купить такую ​​систему, как Denodo, для виртуализации данных. Эта система позволяет нам создавать специальные представления (виртуальные таблицы) и направлять наши отчеты или ETL на эти виртуальные таблицы. Например, наш ETL видит только одну таблицу пациентов, но под ней находится комбинация данных из CompanyA.Patients и CompanyB.Patients.

Наша конечная цель - создать процесс, который можно масштабировать на тот случай, если наша организация решит продолжать добавлять компании в наш портфель, и интеграция их в нашу систему не такая сложная задача, как сейчас.

Итак, вот мои последние вопросы: 1. Есть ли в SQL Server возможность создавать виртуальные таблицы в последних выпусках? 2- Любая другая рекомендация?

0 ответов

Другие вопросы по тегам