Проект посвящён работе с медицинскими данными, а именно документами и их услугами. По одному документу (болезни), может быть несколько услуг. Данная информация хранится в разных таблицах. Примеры строк указаны в файлах SQLscripts/iemk_iemk_op_doc_reg.sql и SQLscripts/iemk_iemk_op_rendered_service.sql
Схема процесса здесь
На текущий момент проект содержит в себе:
- Apache Airflow для управления процессами получения данных
- Streamsets для выгрузки данных
- Vertica для хранения данных
- Spark для обработки данных
Для работоспособности Streamset с Vertica необходимо зайти внутрь контейнера Streamsets пройти по следующему пути - /opt/streamsets-datacollector/streamsets-libs/streamsets-datacollector-jdbc-lib/lib и через wget скачать драйвер Полную инструкцию по созданию JDBC с вертика можно посмотреть здесь
В streamsets созданы два pipelines - op_doc_reg и op_rendered_service. Оба трансформируют информацию таким образом, чтобы она могла быть загружена в цхд, построенное по архитектуре Data Vault 2.0. Скрипты создания таблиц по данной архитектуре в файле SQLscripts/CreateSchema.sql