Две философии дата-платформ
Почему вообще этот пост?
Databricks переименовывает продукты так часто, что люди создали rebricked.org просто чтобы следить за этим. Окей, бывает 🙂
Проблема не в этом. Проблема в том, что молодые дата-инженеры и персонажи с LLM-ассистентом, качающие личный бренд, встретились в одной точке пространственно-временного континуума и породили замкнутый круг: одни пишут «перескажи документацию своими словами, дай кликбейтный заголовок, мне нужна виза таланта США» — другие жадно потребляют этот нейрослоп, думая что находятся в тренде. А потом эти же люди пишут такие же статьи — и круг замыкается. Невежество множится, а ты тратишь часы, объясняя даже не джуну, а мидлу, а то и новоиспеченному сеньору почему Delta Live Tables / Spark Declarative Pipelines — это не серебряная пуля.
Поэтому — к базе.
Философия 1: (дата) пайплайн первичен
Таблица (датасет) — выходной артефакт пайплайна. Её жизненный цикл, схема, само существование принадлежат коду который её создаёт. Продвигаешь код — таблица следует. Пайплайн и датасет жёстко сцеплены.
Работает хорошо в простых сценариях с одним владельцем. Delta Live Tables / Spark Declarative Pipelines — всё это Философия 1. И Databricks делает её хорошо.
Философия 2: данные первичны
Таблица — это контракт. Потребители зависят от неё. SLA строятся на ней. Пайплайн — сменная деталь реализации, обслуга.
Поменял фреймворк с Spark на dbt? Контракт держится. Заменил источник целиком — новая бизнес-система вместо старой? Downstream не заметил. Именно в этом ценность: таблица переживает любой пайплайн.
В экосистеме Databricks это собираешь сам: Managed Table держит контракт, классический Spark job его наполняет. Готового end-to-end решения, как DLT/SDP — для Философии 1, нет. Есть стройматериалы — собирай сам.
Зрелость платформы меняет всё
На старте Философия 1 доминирует — быстро, понятно, работает. Но по мере роста платформы появляются общие датасеты, несколько потребителей, требования к стабильности схем, масштабированию решения, Data Governance, более сложные кейсы. И вот тут Философия 1 начинает проседать и упираться в естестенные «by design» ограничения. Потребность в Философии 2 растёт.
Кстати, я обсуждал это с архитектором Databricks, который отвечает за наш аккаунт буквально накануне. Он согласился: да, Databricks много делает для Философии 1 и мало для Философии 2. Это уже не моё мнение — это их собственная (неофициальная) оценка. Причиная этого — мол «клиенты не просят». Угу-угу, охотно «верю» 🙂
Вывод
Зрелая платформа поддерживает обе модели — не вместо друг друга, а рядом. А если видишь статью «SDP перевернул дата-инжиниринг» или «Почему дата-инженеры любят DLT» — это либо пиар, либо человек не работал с платформой на масштабе.
Если же ты нятягиваешь DLT для use case из Философии 2 — ты его не любишь. Ты его проклинаешь.