Как подружить Great Expectations с Impala?

Для интеграции Great Expectations с Impala, SQL-движком, официально не поддерживаемым библиотекой, потребуется ряд нестандартных решений. Во-первых, необходимо настроить подключение через SQLAlchemy, создав движок к базе данных Impala. Во-вторых, нужно организовать структуру проекта для кастомных проверок, так как в GX нет штатного способа подключения проверок из произвольной папки. Проверки подключаются импортом в основном файле.
Как подружить Great Expectations с Impala?
Изображение носит иллюстративный характер

Основные проблемы при интеграции заключаются в поддержке регулярных выражений, использовании зарезервированных слов Impala и обработке подзапросов. Регулярные выражения, не поддерживаемые диалектом Impala, обходятся путем создания собственной проверки, игнорирующей проверку диалекта и возвращающей условие в формате, понятном для Impala. Зарезервированные слова, используемые GX, переименовываются на допустимые, а тип данных NUMERIC изменяется на INTEGER. Проблема с подзапросами в SELECT решается путем выноса неподдерживаемого подзапроса в отдельный запрос и его дальнейшей подстановки в основной.

Для внедрения изменений потребуется замена ряда файлов библиотеки GX. В частности, это файлы, отвечающие за проверки уникальности значений, регулярные выражения и вспомогательные методы. Замена файлов — это способ быстрого решения проблем. Он может показаться спорным, но, по мнению авторов, он оправдан в ситуации, когда нужен быстро работающий инструмент.

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


Новое на сайте

20072Эффект красоты решает исход собеседования до первых слов 20069Как черта характера крадёт деньги на переговорах 20068Карточная игра против главной дисфункции команды 20067Какие три нарратива способны провести компанию сквозь любой кризис? 20066Фотосинтез в глазах мышей: возможно ли это без превращения в растение? 20065СПКЯ стало СПМЯ: почему переименование болезни, затрагивающей миллионы женщин, заняло так... 20064Почему великая пирамида Гизы пережила все землетрясения за 4500 лет 20063Генетика Homo erectus: что зубная эмаль рассказала о наших предках 20062Кости в бухте Эребус: что кости моряков Франклина рассказывают спустя полтора века 20061Крупнейший плавучий ветрогенератор в мире: Китай испытывает установку у берегов Шанхая 20060Карие глаза младенца стали индиго после лечения от COVID-19 20058Почему серебряная чаша с Афиной пролежала в немецком лесу две тысячи лет? 20057Дыра в атмосфере солнца: вспышка достигла пика и может зажечь полярное сияние 20056Динго возрастом 950 лет: кто и зачем кормил могилу животного сотни лет?
Ссылка