Инжиниринг Данных
23.9K subscribers
2.13K photos
63 videos
194 files
3.29K links
Делюсь новостями из мира аналитики и карьерными советами.

15 лет в Аналитике и Инжиниринге Данных, 10 лет в MAANG

🛠️ dataengineer.ru | 🏄‍♂️ Surfalytics.com

№5017813306

Реклама:
https://almond-rule-130.notion.site/1199f595f76a8030ba1be1e607c9a8ce
Download Telegram
Сегодня столкнулся с интересным кейсом по Azure Databricks.

Что дано:
• 3 Azure Subscriptions Dev/Test/Prod
• 3 Azure Databricks Workspaces

Все четко и понятно.

Databricks уже давно использует Unity Catalog вместо обычного Hive. Кстати он есть open source.

Unity Catalog — это централизованный каталог и система управления данными от Databricks.

Представь, что в компании есть десятки таблиц, файлов, ML-моделей, разбросанных по разным облакам и воркспейсам. Unity Catalog — это единое место, где всё это зарегистрировано, где видно кто к чему имеет доступ, откуда пришли данные и куда они идут.

Он решает три главных вопроса:

Кто может видеть данные? — можно задавать права вплоть до отдельных строк и столбцов таблицы.

Откуда эти данные и можно ли им доверять? — автоматически строится граф происхождения данных (lineage): от источника до дашборда.

Как найти нужные данные? — есть поисковый интерфейс с описаниями, тегами и метаданными.

Всё это работает единообразно для любого воркспейса в аккаунте Databricks, что и делает его «единым» (Unity).


Оказалось спустя почти года разработки, оказалось, что Metastore находится в Dev подписке.

Metastore — это хранилище метаданных, то есть место, где Unity Catalog держит всю информацию о данных, но не сами данные.

Проще говоря, metastore знает: какие таблицы существуют, где физически лежат их файлы в облаке, какая у них схема (столбцы и типы), кто имеет к ним доступ и т.д. Это как оглавление книги — само содержимое страниц хранится отдельно, но оглавление говорит тебе, где что искать.

В контексте Unity Catalog metastore — это верхний уровень иерархии. Внутри него живут каталоги (catalogs), внутри каталогов — схемы (schemas), а внутри схем уже таблицы и прочие объекты. На один аккаунт Databricks в одном регионе обычно один metastore, и все воркспейсы в этом регионе к нему подключаются и видят одни и те же метаданные.


У metastore есть особенность, о которой мы узнали только сегодня - можно только иметь один на целый Azure регион. А как вы знаете, очень важно, чтобы все ресурсы были всегда в одном регионе (в одном дата центре).

Из-за этого исторически так получилось, что все 3 workspaces привязаны к одному metastore и все ресурсы Azure завязаны на один и тот же регион.

Это прям ахиллесова пята Databricks.

Оказалось, что спустя почти год внедрения нашли этот косяк и решили мигрировать. Хранить все метаданные в dev совсем не комильфо. Databricks стал очень metadata driven, то есть все его Declarative Jobs, Autoloader и тп - все находится в каталоге. И весь ваш прогресс тоже завязан на каталог.

Сегодня мы пытались создать новый каталог в prod подписке. А из-за того, чтобы один metastore на регион, у нас ничего не получилось. При этом подготовка к этому перформансу заняла больше месяца у подрядчика. И это они же запили сердце databricks в dev. И теперь они готовились 2 месяца, чтобы узнать об ограничении региона.

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

PS проблему пока не решили в лоб.

Вот так, век живи, век учись!
14🙈6🌚4
Как эффективно построить потоковый конвейер данных на базе Evolution Data Platform ⤵️

Когда отчеты собираются часами, а решения принимаются по вчерашним данным, бизнес теряет скорость реагирования — а значит, и деньги. Все потому, что традиционные ETL-процессы с ежедневными запусками уже не успевают за реальным темпом рынка.
На вебинаре 21 мая эксперт Cloud․ru покажет, как создать отказоустойчивый конвейер с латентностью в минуты вместо часов — без сложной работы с инфраструктурой и лишних затрат.

В программе:
▶️в чем особенность проектирования архитектуры конвейера, обрабатывающего данные в режиме, близком к реальному времени: когда использовать микробатчинг в Managed Spark Streaming, а когда — классический батч-подход;

▶️зачем использовать Managed Trino для единого слоя запросов к «горячим» (в процессе обработки) и «холодным» (архивным) данным без дублирования логики;

▶️как организовать хранение слоев данных в Object Storage с партиционированием по времени для ускорения запросов;

▶️почему стоит использовать метаданные в реальном времени через Managed Metastore для поддержки изменяющейся структуры потоков;

▶️как эффективно визуализировать данные в Managed BI и настроить автообновление дашбордов и алерты на отклонения;

▶️какие способы оценки и контроля латентности конвейера существуют: от генерации события до отображения на дашборде.
Зарегистрироваться
Please open Telegram to view this post
VIEW IN TELEGRAM
🤷21
Приглашаем вас на совместный вебинар AXENIX и вендора BR Systems, посвященный XLTable — OLAP‑системе с широким функционалом для работы с данными ClickHouse и Trino и поддержкой протокола XMLA в Excel.

Эксперты подробно расскажут об XLTable и его основных преимуществах: быстроте внедрения, отсутствии дублирования данных, снижении затрат на TCO, бессрочной лицензии и других.

В рамках вебинара вас ждет:

🔸Обзор рынка OLAP-систем
🔸Демо системы XL Table от BR Systems
🔸Разбор реальных кейсов крупных компаний

Также у вас будет возможность задать свои вопросы.

Для участия необходимо зарегистрироваться на сайте. На указанную вами почту придет ссылка на вебинар. Подключайтесь к нам 21 мая в 16:00.

До встречи!

XLTable: Telegram | Сайт
2❤‍🔥103💯3🍌3
Уважаемая команда по найму,

Благодарю вас за интерес к отклонению моей заявки.

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

Однако в этом году я получил уже немало писем с отказами. Поэтому, после тщательного рассмотрения, я принял решение не принимать ваш отказ на данном этапе.
Ещё раз выражаю восхищение вашей смелостью отказать мне и желаю всяческих успехов в отклонении других кандидатов.

С нетерпением жду возможности присоединиться к команде в ближайшее время.

С уважением,

🏆
Please open Telegram to view this post
VIEW IN TELEGRAM
💯108👨‍💻26😭24❤‍🔥1611🦄5🐳2🤷‍♀1
Пример coding задачек для собеседования, но уже можно решать с AI. Пример от Staff Engineer из Meta.

То есть, вам нужно общаться с агентом и рассказывать, как вы думаете, как решаете задачу. Раньше можно было выучить типовые задачки и постараться, чтобы ответ прошел verification. А теперь, задачки по коду превратились в системный дизайн, где нужно все проговаривать.

Хорошая новость для тех, кто не любит секции leetcode! Но это в передовых компаниях уже так делают, думаю большинство такое не грозит.

https://youtu.be/A1kX8fJx53c?si=Mu3l-TppeqXxxnCV

У кого-то были уже такие примеры на собеседованиях?
❤‍🔥19
За последнее время мне удалось пообщаться со многими компаниями Enterprise-уровня, и у всех одна и та же проблема — криво внедренный Databricks.

Что значит криво? Значит неудобно и неинтуитивно.

Почему так? Потому что «а кто ж его знает, как надо».

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

Вот и получается: хотели как лучше, а получилось как всегда.

Зато таких картин нет в историях со Snowflake.

Что бы там ни говорили про цены, производительность и другие особенности платформ, я ни разу не видел косячного внедрения Snowflake.

Ну, максимум ценник выше, чем должен быть, но люди работают, пишут запросы, и вопросов, как получить доступ к данным, не возникает.

У всех всё понятно: dbt, Airflow, GitHub. Всё работает как и должно, легко найти специалиста, легко подключить Claude Code.

А как у вас дела?

PS фото с paddle board, скоро будет экспедиция на 5 дней, тренируюсь.
22
Добавил секцию блога к сайту. Начнем с базы, что такое спутник 🛰🛰

https://blog.playeronespace.com/p/what-is-a-satellite
Please open Telegram to view this post
VIEW IN TELEGRAM
4🌚4
Офер в Яндекс за выходные: 6–7 июня

Если вы продуктовый, дата-аналитик или датасаентист с опытом на Python от 3 лет, участвуйте в Weekend Offer Analytics*.

Как всё устроено:

🔵 до 27 мая — регистрация;

🔵 6 июня — две технические секции, вместо трёх в обычном найме;

🔵 7 июня — знакомство с командами и офер.

В мероприятии участвуют команды: R&D, Автономный транспорт, Алиса и Умные устройства, Поиск и Суперапп, Независимый Ecom и другие. Вы сможете пообщаться с нанимающими менеджерами и выбрать проект, который покажется самым интересным.

Все подробности и полезные ссылкина сайте. После регистрации с вами свяжется рекрутер и договорится об удобном времени для интервью.
Please open Telegram to view this post
VIEW IN TELEGRAM
🐳6❤‍🔥4🌚41🦄1
Отличный аргумент, что AI не заменит нас!

А вы умеете кушать готовить?👀
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚21💯19🤷1