Return to article

Классификация и сравнительный анализ подходов к сбору колоночного уровня data lineage на базе Apache Spark

Таблица 2 - Множество значений выбранных критериев

Критерий

Возможные значения

Интерпретация значений

Уровень детализации сбора

Табличный, столбцовый

Табличный — фиксируются зависимости только между наборами данных/таблицами.

Столбцовый — фиксируются зависимости между отдельными столбцами, включая результаты сложных выражений.

Поддержка пакетных и потоковых процессов

Только пакетный, только потоковый, комбинированный

Только пакетный — поддерживаются исключительно batch-конвейеры.

Только потоковый — ориентированность на streaming-сценарии.

Комбинированный — поддерживаются и пакетные, и потоковые процессы.

Уровень покрытия операций над столбцами

Отсутствует, базовые функции, поддержка UDF

Отсутствует — операции над столбцами не анализируются.

Базовые функции — поддерживаются стандартные SQL/DF-операции.

Поддержка UDF — дополнительно корректно обрабатывается часть пользовательских функций.

Накладные расходы

Отсутствует, существенные, фоновые

Отсутствует — влияние на производительность практически не фиксируется.

Существенные — заметное увеличение времени выполнения задач, блокировка или значительное потребление ресурсов.

Фоновые — асинхронный сбор, умеренная дополнительная нагрузка.

Масштабируемость и отказоустойчивость

Отсутствует, ограниченная, полная

Отсутствует — решение не рассчитано на рост нагрузки, отсутствуют механизмы отказоустойчивости.

Ограниченная — доступно базовое масштабирование и минимальные механизмы отказоустойчивости.

Полная — поддерживается горизонтальное масштабирование и развитые механизмы отказоустойчивости.

Инфраструктурные требования

Минимальные, умеренные, высокие

Минимальные — используются только существующие компоненты платформы. Умеренные – требуется развёртывание отдельного сервиса.

Высокие — необходима внешняя архитектура с несколькими сервисами и специализированными хранилищами.

Открытый исходный код

Отсутствует, частично, полностью

Отсутствует — решение полностью проприетарное.

Частично — часть компонентов или функциональности доступна как open source.

Полностью — ключевые компоненты решения доступны с открытым исходным кодом.