Size: a a a

Инжиниринг Данных

2021 October 15
Инжиниринг Данных
Очень часто существуют препятствия между аналитиками BI, дата инженерами и бизнес пользователями. Как вы решаете такие проблемы?

Для меня как минимум:
1) Документация проектов (автоматическая! - business data catalog)
2) Еженедельные office hours
3) Ежеквартальные опросы (BI survey как в модуле 3 data learn)
4) Onboarding материалы (лабы, туториалы и видео)

Именно этим сейчас и занимаюсь.
источник
Инжиниринг Данных
Недавно я общался про дата инженера и Спарк, и меня спросили знаю ли я разницу между multithreading and multiprocessing? А я вот не знаю. Но гугл наверно это услышал и подсунул мне вот такую новость в рекомендации:

https://towardsdatascience.com/multithreading-vs-multiprocessing-in-python-3afeb73e105f
источник
2021 October 16
Инжиниринг Данных
источник
Инжиниринг Данных
Должна быть полезная книга https://www.oreilly.com/library/view/database-internals/9781492040330/
источник
Инжиниринг Данных
Я бы хотел записать модуль datalearn в Half-Life VR. Пример учителя математики - https://youtu.be/R3g9jrqjOZs
Точно учитель года!
источник
Инжиниринг Данных
Если вы не работали в Амазон, вы никогда не поймете это сообщение. А все очень просто, в Амазон 2х факторная авторизация и они использую USB/USB-C токены - https://www.yubico.com/products/

Чтобы его активировать, надо дотронуться и он нагенерит такую строку, вот и получается, что в чатах все время такие сообщения выскакивают, если случайно дотронулся🤗
источник
Инжиниринг Данных
Настолько нехватка Data Engineer в Северной Америке, что Slalom Build решил учить своих. Практически тоже самое, что мы делаем на datalearn, но уже на входе ожидается, что люди знают модуль 1-3 или 1-4, и они обучают облаку и современным тулам.

Вот взяли бы меня директором по data engineering год назад, я бы им помог, но предложили principal data engineer взамен, что было не так интересно.

Последние 3 недели я делал исследование про позицию data engineer. Я пообщался с 20+ компаний в Канаде и Штатах и понял насколько нехватка кадров, просто катастрофическая. Я напишу статью про все эти компании на хабр, про их стек и требования к кандидатам и про то, как важно ценить каждого кандидата и не косячить HR.

Очень часто, когда HR был в процессе, все выходило из под контроля и это только мешало. Самое важное для HR это обратная связь в течение 24ч. Иначе “шеф, все пропало”(с).
источник
Инжиниринг Данных
Можно узнать какие новы фичи готовит нам индустрия у Snowflake:

SNOWDAY - The View Ahead
Snowflake continues its rapid pace of innovation across the Data Cloud. Join this half-day event to hear the latest advancements and how they enable customers to continuously evolve their business in new ways.


https://www.snowflake.com/snowday/?utm_cta=oracle
источник
2021 October 17
Инжиниринг Данных
Пример 1 SQL Style Guide: https://github.com/haleemur/sql-style-guide
Пример 2 SQL Style Guide: https://gist.github.com/mattmc3/38a85e6a4ca1093816c08d4815fbebfb
Пример PySpark Style Guide: https://github.com/palantir/pyspark-style-guide

Какие есть еще варианты по аналитике?
источник
Инжиниринг Данных
"Having things explained in class sounds somewhat complicated but after finding out there is a manga explaining about databases it made me feel relieved that databases isn't as stressful than I thought when I started reading this manga. I recommend this book to those who are visual learners"
источник
Инжиниринг Данных
Watch as Google Cloud CEO Thomas Kurian shares insights on how businesses can leverage cloud technology to build for the future and adapt to complexities, challenges, and opportunities.
https://youtu.be/6QbKkDibKXg
источник
2021 October 18
Инжиниринг Данных
Сегодня я впервые посвятил день dbt, это результат работы на картинке.

Dbt и Postgres были развернуты в docker, нужно было создать dbt sql модели, чтобы ответить на вопросы и по необходимости использовать зависимости. Все про все заняло почти 7 часов.

Большое спасибо ребята кто пришел в zoom и вы до 1 ночи крутили dbt и docker! День явно прошел не зря!🔥
источник
2021 October 19
Инжиниринг Данных
Бодренько! Migrate Snowflake to Redshift Data Platform. А так можно было?
источник
Инжиниринг Данных
Вот с такой задачкой столкнулся - опубликовал на Stackoverflow.

Идея проста. Spark умеет делать stream. Но это на самом деле больше microbatch, что вполне подходит.

1. Каждый раз, когда новый JSON файл появляется в Azure Blob Storage он его автоматически загружает в dataframe командой spark.read.
2.Дальше мы можешь его минимально трансформировать.
3. И сохранить уже в наше озеро данных, и в нынешних условиях в формате Delta. Но можно и просто классический parquet.

Я сейчас не буду уходить в подробности, как это работает, но на курса datalearn буду, но не скоро🤪

То есть, мы закидывал все новые данные в одну таблицу в потоке, где у нас данные делают APPEND. Дальше, есть несколько вариантов, как прокидывать эти данные в STAGING таблицы, но при условии, что это тоже APPEND.

(APPEND - значит, добавить строки, другая операция OVERWRITE - полностью перезаписать все.)

Интересный момент начинается, когда мне нужно обновить таблицу фактов. Я уже не смогу сделать простой APPEND, мне нужны исторические данные и новые данные, чтобы посчитать, например WINDOW FUNCTIONS и потом обновить изменения.

В классическом DW, мы я буду брать исторические данные, например за 7 дней, и уже писать логику для MERGE (где решать UPDATE или INSERT). В delta lake есть MERGE тоже, но я боюсь он будет умирать на большом объеме и я не понял как сделать переход от Stream к Batch. Конечно, я буду пробовать разные подходы и смотреть как лучше, но вдруг уже кто-то делал и знает как лучше совершать этот переход?
источник
Инжиниринг Данных
Новости из индустрии:

Implement a slowly changing dimension in Amazon Redshift - тут все понятно из названия. Обычно SCD происходит в ETL (как в модуле 4 мы делали на Pentaho), но никто не запрещает делать это и в SQL. После нашего воскресного урока по DBT, я теперь знаю, что  можно смело брать эти запросы и класть в dbt sql model.

DBT at HomeToGo - очередной кейс про построени DE решения с помощью DBT и Airflow.

How to ETL at Petabyte-Scale with Trino - SalesForce использует Trino. Для меня это новый ETL инструмент: Trino (formerly known as PrestoSQL) is widely appreciated as a fast distributed SQL query engine, but there is precious little information online about using it for batch extract, transform, and load (ETL) ingestion (outside of the original Facebook paper), particularly at petabyte+ scale.original Facebook paper), particularly at petabyte+ scale. Кто нибудь смотрел?

Announcing OpenMetadata - важность метаданных в аналитических решения понятна, используем, например для создания автоматическо документации или конфигурации решения. А что делает этот продукт я не знаю наверняка: We are announcing a new open source project OpenMetadata to achieve the goals of reimagined metadata. The project defines specifications to standardize the metadata with a schema-first approach. We have built a centralized metadata store that integrates with popular systems and services in the data stack to collect, store, and index the metadata with clean APIs for creating, modifying, and serving metadata. Finally, an intuitive web UI for discovery and user collaboration around data.

An ML-Based Framework for COVID-19 Epidemiology - статья про подход к моделирования COVID

Native Support of Session Window in Spark Structured Streaming - databricks добавил возможность использования оконной функции для streaming.

Designing the New Event Tracking System at Udemy - Udemy рассказывает о модернизации своей системы. Согласно моей шкале Gentle - Midlevel - Hardcore я бы отнес к последнему, такое за пару часов в одиночку не слепить, как например при использовании Snowflake+Matillion.
источник
Инжиниринг Данных
Обновление по нашему сообществу:
1. Телеграм канал перевалил за 10т и является топ каналом по инжинирингу данных и аналитике в русско язычных сообществах. Наш чатик всего 400 человек и там весело.

2. В Slack 4100+ людей, это значит именно столько людей зарегистрировалось на datalearn за год.

3. YouTube тоже подрос - 6.5 тысяч подписчиков.

4. Реклама продаются и деньги я стал переводить в приют для собак Зоорассвет в Москве, но не все. Часть денег оставляю на русской карте, например недавно бабушке распечатал 40 фотографий внуков в Канаде и принесли домой🤗, но на самом деле я коплю, если вдруг решим делать какой-то продукт в дата или для даталерн.

5. Продолжаю слышать истории людей, кто смог выучиться и найти работу с 0 или смог переквалифицировать успешно.

6. Наше сообщество и курсы datalearn начинают котироваться в индустрии, возможно годик другой и наши выпускники будут работать во многих компаниях по всему миру и смогут помогать другим людям. Как ни крути, все кто работает в этой области получают полезные знания, делаются опытом или создают свой бренд или портфолио через вебинары, переводы или лабы. Все просто, у вас есть все необходимое, чтобы преуспеть, мы лишь направляем и создаём контекст.

7. Datalearn de-101 можно разделить на 3 части:
  1. Foundation (модуль 1-4).
  2. Modern data engineer (модули 5-9).
  3. Advanced (модуль 10-12). Тут я сам не эксперт, но я смогу добавить контент куда копать и сам расскажу с чем работал из этого.

Для работы в 90% случаев хватает всего до 9 модуля.

8. Я отлично понимаю рынок на западе и в России. Мой опыт релевантен для запада 💯. В РФ проблемы из-за ограничений и больше open source, как результат нужно доп скилы ковырять все это добро в контейнерах или  кастомизировать vanilla версию ПО и ещё проблемы с конфигурацией on-premise. Но главное начать, а там видно будет.

9. Огромная нехватка кадров по дате везде. Тут важно понимать, что резюме специалистов по теме очень много, а вот людей кто понимает мало. Можно научиться нажимать кнопки, создавать контейнеры - это how. Но нужен контекст и опыт, чтобы понять why and what. Это и есть миссия datalearn попытаться объяснить и донести, зачем это все, как это выглядит с высоты птичьего полета. И мы отлично справляемся.

10. На создание datalearn было потрачено бесконечно много часов. И практически 0 рублей. Только платим за домен и тильду.

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

12. Лично я очень вырос и развивался в области аналитики и инжиниринга данных, и большую роль в этом сыграло сообщество. У вас точно такие же возможности, так что participate.

13. По планам дожать 9 модулей. В этом году хочу закрыть 6 и 7. И в 1м квартале следующего 8.  

14. К сожалению, как вы знаете, все бесплатно не ценится. И когда я закончу курс мы должны что-то сделать, чтобы добавить ценности нашему бесценному контенту. Одна из идей брать деньги (замораживать) сумму для каждого модуля и возвращать ее, если сделана домашка и брать маленькую комиссию на оплату сервиса.

Как обычно ваши идеи welcome!

PS всем спасибо, сообщество дало виртуальных друзей и помогло пережить crazy times:) ну а теперь, всем за работу, как говориться надо "рубить капусту" и "косить бабло", пока рынок горячий🐒
источник
2021 October 20
Инжиниринг Данных
Татьяна сделала офигенный перевод статьи про Amazon подход - Working Backwards. Если вы про аналитику и данные - must have прочитать!

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

Таня сейчас бизнес/продуктовый аналитик в ДомКлике от Сбербанка, планирует развиваться в продуктовой аналитике и data science. Верит в большой потенциал у этого направления.

Она из химической технологии и науки перешла в Анализ данных, любит математику!! Но не Олимпиадница)))
источник
2021 October 21
Инжиниринг Данных
Spark летит в космос! Технология занимает 1-ое место среди технологий для для дата инжиниринга.

12 октября вышло обновление Spark 3.2 в котором много улучшений. Интересное это ANSI SQL. Это говорит о доминировании SQL в индустрии. Скоро уже Pyspark не нужен будет, все можно будет сделать на SQL, так что налегайте на курс Анатолия  SQL-101 и модуль 2 DE-101. Основная идея Spark - это не только упростить разработку, но и помочь мигрировать legacy data warehouse на Spark Delta Lake.

Databricks (коммерческий Spark) выпустил Runtime 10:

Introducing pandas API on Apache Spark - это мы обсуждали недавно, про замену Koalas.

Completing the ANSI SQL - ну как же без SQL.

Productionizing adaptive query execution to speed up Spark SQL - используют Adaptive Query Execution

Introducing RocksDB statestore to make state processing more scalable - если мы используем Spark Streaming и Autoloader, RocksDB используют для записи файлов, которые были загружены.
источник
Инжиниринг Данных
Еще один перевод статьи от участника нашего сообщества, Евгения, - The Rise of the Data Engineer. Это статья одна из самых популярных в мире на тему инжиниринга данных. Maxime Beauchemin знал о чем писал, он же создавал Airflow и Superset.

Евгений работает DA/DE в Сбер Первом над развитием аналитики маркетинговых кампаний для премиальных клиентов в различных каналах коммуникации.

Дополнительно опубликована статья на Яндекс.Дзене:
https://zen.yandex.ru/media/id/61706aa4298d6612db1752e5/karera-injenera-dannyh-61706ab241503a44655e7d01

С вас лайки для автора, чтобы еще переводили😇

Предисловие

Я присоединился к FAANG в 2011 году как BI-инженер. К моменту переезда в 2013 я был инженером данных.

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

Моя команда была на передовой этой трансформации. Мы развивали новые компетенции, новые пути решения задач, новые инструменты, и, чаще всего, отвергали традиционные подходы.

Мы были первопроходцами, мы были Инженерами Данных!
источник
Инжиниринг Данных
Мы добавили в slack новый канал #data_news_from_the_world которые будет вас сам кормить новостями Databricks, snowflake, Tableau и другими. А вы просто выбирайте, что вам нравится.
источник