Инжиниринг Данных
23.5K subscribers
1.98K photos
56 videos
192 files
3.2K links
Делюсь новостями из мира аналитики и карьерными советами.

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

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

№5017813306

Реклама:
https://almond-rule-130.notion.site/1199f595f76a8030ba1be1e607c9a8ce
Download Telegram
Не знаю как сейчас, но когда я начинал карьеру ни одна компания меня так ни привлекала как McKinsey. Вообще вся это большая четверка, KPMG в Moscow City, и другие пафосные организации. Знакомые коллеги которые туда попадали и у них над головой появлялся ореол, они прям сияли😏

Тогда я думал лучше места нет и что успешный успех это у них. Я даже был на собесе в KPMG и меня спрашивали сколько беременных женщин сейчас едет в метро… по итогу предложили 50т рублей и ненормированный день, в итоге я с удовольствие пошел в Терадату за 120т рублей и первые 2 недели чилил с женой в Мадриде на new hire тренинге (с тех пор считаю себя главным поглотителем всевозможных корпоративных бенефитов, могу кстати тестировать ваши корпоративные бенефиты, за дорого).

К чему я все это? Да просто смешной ролик про McKinsey.

В Канаде я тоже как то видел их вакансию, но это уже не для многодетной семьи, да и зарплаты канадские это вам не московские🙁
Please open Telegram to view this post
VIEW IN TELEGRAM
💯25🙉7😈5
У меня тут бюджетик на учебу (те самые корпоративные бенефиты), кроме книг тратить не начто, скиньте топ книги по soft skills на английском или может прям тренинги есть, было бы полезно всем прокачаться. Спасибо
38
Неужели кто-то хотел бесплатно поучится дата инженирингу из Москвы😂
🌚38🗿8😭5👾2🤷‍♂1🙉1🙊1
После презентации Open AI - DevDay все ленты всех соц сетей усыпаны скринами и сообщения про будущее и настоящее с AI. Возможно пора уже вводить новые вакансии:
- AI BI Engineer
- AI Data Engineer
- AI ETL Developer
- AI Product Analytics
- AI BigData Engineer
и так далее, чтобы все красиво было в резюмешке!

Вообще мне всегда нравится MAD про всякие дата инструменты и каждый год все больше новых инструментов, а теперь просто будет Open AI, ведь теперь можно с NoSQL создать свой AI апп для всего на свете.
32🙈11❤‍🔥2
Databricks недавно выкатил новую фичу для Delta Lake 3.0 - Liquid Clustering.

Фича позволяет повысить скорось загрузки данных, например в статье приводится пример загрузки 1Тб данных и скорость выше в 2,5 раза.
🌭106😭2🌚1👨‍💻1
Прикольная штука https://equals.com/ - spreadsheet который можно сразу подключать к БД и работать с результатом в табличке. Но если человек может написать сам запрос, то ему и эксельку не нужна. Да и в обычном excel можно подключить любую БД
9💯3
Ну привет Bing! Посмотрим чего ты стоишь....🔪
Please open Telegram to view this post
VIEW IN TELEGRAM
💯122🌚1
AI - я не успеваю за тобой! Я скопировал ответ из Binga в Outlook, а тут уже Copilot бегает и проверяет мои письма и это все на MacOS💣
🙈20🤷‍♂3
Как приятно, что про меня помнят!
🍾241🙈8🍌5❤‍🔥4🎄4🌭2👾2🐳1
Feature Store.pdf
1.8 MB
На самом деле хотел расшарить слайды про Feature Store от Databricks.

Для мне термин feature store значит хранилище данных для ML инженеров или Data Scientist (кому как нравится).

PS если хочешь узнать точное определение, надо написать неточное в☝️
🙈3🍌1
Новый термин - Data Intelligence Platform от Databricks.

Database -> Data Mart -> Data Warehouse -> Data Lake -> Lake House -> Data Platform -> Data Intelligence Platform.


Ничего не забыл упомянуть?

Ах вот подсказывают в чате...

Data Wizardry Workshop - Where data spells are crafted!

Information Lagoon - A relaxed, tropical take on data storage.

Byte Bayou - A swampy, mysterious place for mysterious data.

Cloud Castle of Computations - High above it all, where data reigns supreme.

Digital Doughnut Depot - Because who doesn't like doughnuts with their data?

Pixel Palace - A regal residence for refined data.

Circuit Circus - A fun, chaotic jumble of data and entertainment.

Memory Lane Museum - A nostalgic trip through historical data.

Quantum Quarters - The futuristic abode of next-gen data.

Binary Beach Resort - Where data goes on vacation.

Neural Network Nook - A cozy corner for AI-driven data insights.

Data Dungeon - For those deep, dark data secrets.

Algorithm Abbey - A serene sanctuary for structured data analysis.
Info Island - An isolated oasis of organized information.
🙈26🙉9🙊9🐳4❤‍🔥2😭2🗿21
Все чаще замечаю продукт для тестов и качества данных Soda. Есть open source - soda core (где то я уже это слышал), а есть коммерческая версия soda platform. Обязательно попробуйте на следующем проекте. Кто-нибудь начал использовать?

А еще все топят за data contracts. В той же soda есть и в новом релизе dbt core, как получилось у вас «заключить контракт»?
💯11
Наверна одна из самых больших новостей. Мне нравится Ethan за его взгляд на вещи! Мужик топчик, и кстати он выплатил ипотеку, так что красавчик. Надеюсь Sam тоже без ипотеки)))

https://techcrunch.com/2023/11/17/sam-altman-is-out-as-openais-ceo/
14🗿5🤷4
Вот реально, это настолько правдиво, что одновременно и смешно и грустно.🤔
Please open Telegram to view this post
VIEW IN TELEGRAM
💯113😭31🙈11🍌5🌭3🌚2🗿1
Это замечательная возможность работать командой над одной проблемой по 7-8 часов, параллельно обсуждая как тот или иной опыт должен выглдядеть в глазах hiring менеджера. А если умножить количество суббот, умноженное на количество недель в году, то как говорится будет ПУШКА!

Сегодня у нас было 2 проекта:

1й был про Azure Databricks networking configuration, на котором многие попробовали Azure первый раз, а главное мы поговорил о реальных инженерных кейсах про создание инфраструктуры, конфигурации сети, доступа, безопасности. Конкретно для Azure Databricks мы 7 часов долбашили:
- Virtual Network, Subnets
- Azure Firewall
- Private Endpoint
- Private Link
- NAT gateway
- Secure Cluster Connectivity (No Public IP)
- Network Security Groups
- Service Principal и managed identity
- Access Roles
- Key Vault
- Blob Storage

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

Другой проект был в соседней комнате, на котором запускали с нуля dbt core, snowflake, все это конфигурировали и опубликовали в GitHub, затем запускали dbt модели в GitHub Actions. Тоже не все успели, но план намечен.

Самое главное, что каждый проект требует время на подготовку и на документирование результата, ведь очень важно написать красивую истори в блог на medium и добавить код в GitHub, не просто код, а код, где каждая строчка написана самостоятельно и каждая команда запущена не один десяток раз.

Уже планы на следующую субботу:
1. Нужно сделать задание с Microsoft Fabric Lakehouse + Power BI
2. Нужно взять dbt+snowflake и создать LookML модель в Looker. Оказывается у меня до сих пор есть рабочий сервер Looker с 2018 года, когда Rock Your Data была оффициальным партнером Looker.

Ну и другоей проект интересны про duckDb, dbt, meltano.


Я использую премиум Discord сервис, на котором есть комнаты, которые поддерживают удобный стриминг видео и screen share в отличном качестве, так же есть календарь с событиями. Офигенная платформа, можно конечно еще и игры стримить=)

Также ребята запустили комнату для Leetcode и вместе решают задачки, помимо этого народ ежедневно делится опытом поиска работы, результатом собеседований (плохих и хороших). То есть всем тем, что нацелено на максимальное достижение цели и результата в узкой области Data Engineer, Analytics Engineering, BI, product/marketing/finance analytics.

Вся переписка у нас на английском, но субботы пока на русском, народ подключился сегодня из Канады, США, Австралии, Европы. Вырабатывается четкое пониманию мирового рынка вакансий, зарплат, технологий и за счет diversity опыта, прикольно получается находить нестандартные решения для задач.

За 3+ года с datalearn, телеграм каналом выработался идеальных подход к изучению и обучению, который чем-то напоминаниет blockchain, идея что у меня нет централизации знаний, инструментов, туторилов. Я не создаю тренажеры и площадки для решения задачек. Я беру реальные проблемы из своего 14 летнего опыта и пытаюсь решить их использую технологии как кубики лего, чтобы соответствовало современным требованиям и ожиданиям рынка.

PS так что surfalytics решает, и самое главное я нашел для себя баланс как все так же помогать другим, но при этом покрывать расходы и отслеживать метрику эффективности Surfalytics сообщества - подписка 20CAD в месяц (4 кофе в месяц), если интересно Welcome!

А еще у нас будут обязательно настоящие surf camps в Канаде, Орегоне, Австралии и Европе!
❤‍🔥699🍌5
Кто в теме, тот оценит прикол! А кто не в теме, товарищ ceo snowflake, и он не про аналитику или хранилище данных. Он как фермер и его урожай бабло после IPO🤑
🫡20🙈2🗿2🙉2🙊2❤‍🔥1
Вот это скорость! Быстро приняли решения и газ в пол. Sam и его корешок будут теперь в Microsoft.
34🫡5🌚4🙊4🤷‍♀2
Forwarded from Книжный куб (Alexander Polomodov)
CAP Theorem

Знаменитой CAP теореме исполнилось 25 лет, поэтому хотелось что это такое, зачем она и как появилась. Про это есть отличная статья от Eric Brewer, автора теоремы, который написал ее больше 10 лет назад, которую хотелось вспомнить, так как она хороша:)
Начнем с самого утверждения теоремы (цитата из статьи выше)
The CAP theorem states that any networked shared-data system can have at most two of three desirable properties:
- consistency (C) equivalent to having a single up-to-date copy of the data;
- high availability (A) of that data (for updates); and
- tolerance to network partitions (P).

Дальше надо вспомнить про ее появление
- 25 лет назад, осенью 1998 года была сформулирована CAP теорема
- в 1999 году она была опубликована в статье "Harvest, Yield, and Scalable Tolerant Systems" в ACM
- в 2000 представлена на Симпоузиуме "Symposium on Principles of Distributed Computing" (презентация здесь)
- в 2002 доказана формально (где консистентность из теоремы превратилась в линеаризуемость)
Потом теорема пошла в массы и превратилась в условные "выберите 2 свойства из трех: C, A, P", что является сильным упрощением по трем причинам, что указывает Эрик в уже упоминавшейся статье:
1. Из-за редкости partition нет смысла выбирать между C и A (про это подробнее в следующий раз при обсуждении PACELC Theorem)
2. Решение о C или A принимается не единоразово для всех компонентов и всех данных, а на другом уровне гранулярности и может зависеть от типа операции или данных
3. C, A, P - это не бинарные свойства, а скорее непрерывные - availability от 0 до 100%, уровни консистентности тоже бывают разные и даже partitions имеют нюансы:)

В итоге, Эрик говорит о том, что в отсутствии разделения системы мы можем выбирать A или C, а во время проблем у нас должен быть понятный алгоритм
- определения, что случился partition
- перехода в явный partition режим, в котором часть операций может быть лимитирована
- запуска процесса восстановления консистентности и компенсации ошибок, что возможно были в рамках partition

Потом Эрик рассказывает про связь акронимов ACID, BASE и CAP
- BASE расшифровывается как Basic Availability, Soft state и Eventually consistency. Первые два из свойств помогают достигать доступности при разделении системы на части
- ACID расшифровывается как Atomicity, Consistency, Isolation, Durability. Этот акроним знают многие, кто работал с реляционными базами данных, но как я писал выше Consistency из CAP и из ACID - это про разное и это добавляет сложности в понимании:)

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

Конечно можно попробовать повторно выполнить операцию (retries), но это просто откладывает принятие решение на некоторое время. Таким образом, с прагматической точки зрения разделение — это ограничение по времени (таймаут), который мы закладываем в свое общение. А из этого следует несколько последствий
1. Не существует глобального понятия partition, поскольку некоторые узлы могут обнаружить partition, а другие — нет.
2. Те узлы, что обнаружили partition входят в режим partition-mode, собственно ту часть, где нам надо выбирать между C и A
В итоге, проектировщики системы выставляют time bounds так, чтобы соответствовать целевым скоростям ответа системы на запросы, а чем жестче эти time bounds, тем выше вероятность попадания в partition mode, причем даже просто при медленной сети, но без реального ее разделения.

В приведенной выше статье есть еще много интересных мыслей про scope консистентности и как это соотносится с датацентрами, как явно управлять процессами перехода в partition mode и восстанавливаться после partition. Очень рекомендую ее к прочтению.

#Software #Architecture #DistributedSystems #SystemDesign
14🗿4👨‍💻3
Главный data engineer influencer написал пост как он обрабатывал data set 100TB + (для особо современных подписчиках у него доступна версия в ТикТок). На картинке изображено дерево, как он обрабатывал каждый час и merge по 2 часа, потом по 4 часа и тп.

Он классно обозначал проблемы:
- data retention
- cost of storage (у нас кстати на одном проекте в S3 образовалось 700TB данных, а используем только 40)
- IO проблема
- data shuffle

Это еще повезло, что не надо исторически обновлять данные, так как это просто события. А прикиньте у вас данные по клиентам, и там например нужно взять сессию клиента, которая больше часа или 24 часов и использовать оконную функцию, тут уже так красиво не сделать.
💯27👨‍💻5❤‍🔥43