Warning: Undefined array key 0 in /var/www/tgoop/function.php on line 65

Warning: Trying to access array offset on value of type null in /var/www/tgoop/function.php on line 65
356 - Telegram Web
Telegram Web
OReillys Data Quality Fundamentals 2022.pdf
9.7 MB
OReillys Data Quality Fundamentals 2022.pdf

📌 Build more trustworthy and reliable data pipelines
📌 Write scripts to make data checks and identify broken pipelines with data observability
📌 Learn how to set and maintain data SLAs, SLIs, and SLOs
📌 Develop and lead data quality initiatives at your company
📌 Learn how to treat data services and systems with the diligence of production software
📌 Automate data lineage graphs across your data ecosystem
📌 Build anomaly detectors for your critical data assets

#DataQuality #SLA #SLI #SLO #DataAssets #DataLineage
Spark_v_deystvii.pdf
14.5 MB
Spark в действии.pdf

О книге👇

Анализ корпоративных данных начинается с чтения, фильтрации и объединения файлов и потоков из многих источников. Механизм обработки данных Spark способен обрабатывать эти разнообразные объемы информации как признанный лидер в этой области, обеспечивая в 100 раз большую скорость, чем например Hadoop. Благодаря поддержке SQL, интуитивно понятному интерфейсу и простому и ясному многоязыковому API вы можете использовать Spark без глубокого изучения новой сложной экосистемы. Эта книга научит вас создавать полноценные и завершенные аналитические приложения. В качестве примера используется полный конвейер обработки данных, поступающих со спутников NASA.

Для чтения этой книги не требуется какой-либо предварительный опыт работы со Spark, Scala или Hadoop.

#spark #scala #hadoop
Алгоритмы_и_структуры_для_массивных_наборов_данных_2023_Меджедович.pdf
63.3 MB
Алгоритмы и структуры для массивных наборов данных [2023] Меджедович Дж., Тахирович Э.pdf

Стандартные алгоритмы и структуры при применении к крупным распределенным наборам данных могут становиться медленными — или вообще не работать. Правильный подбор алгоритмов, предназначенных для работы с большими данными, экономит время, повышает точность и снижает стоимость обработки.
Книга знакомит с методами обработки и анализа больших распределенных данных. Насыщенное отраслевыми историями и занимательными иллюстрациями, это удобное руководство позволяет легко понять даже сложные концепции. Вы научитесь применять на реальных примерах такие мощные алгоритмы, как фильтры Блума, набросок count-min, HyperLogLog и LSM-деревья, в своих собственных проектах.
40_algoritmov.pdf
12.5 MB
40 алгоритмов, которые должен знать каждый программист на Python

Автор: Ахмад Имран

Понимание работы алгоритмов и умение применять их для решения прикладных задач – must-have для любого программиста или разработчика. Эта книга поможет вам не только развить навыки использования алгоритмов, но и разобраться в принципах их функционирования, в их логике и математике. Вы начнете с введения в алгоритмы, от поиска и сортировки перейдете к линейному программированию, ранжированию страниц и графам и даже поработаете с алгоритмами машинного обучения. Теории не бывает без практики, поэтому вы займетесь прогнозами погоды, кластеризацией твитов, механизмами рекомендаций фильмов. И, наконец, освоите параллельную обработку, что даст вам возможность решать задачи, требующие большого объема вычислений. Дойдя до конца, вы превратитесь в эксперта по решению реальных вычислительных задач с применением широкого спектра разнообразных алгоритмов.
Нормальные формы базы данных (YouTube)

00:00​ - О чём пойдёт речь в статье
00:45​ - Коротко о реляционных БД
01:20​ - Что такое нормализация
01:46​ - Зачем нужна нормализация БД
02:08​ - Что такое избыточность данных с примерами
04:51​ - Какие бывают нормальные формы БД и о процессе нормалиции в целом
08:00​ - Ненормализованная форма или нулевая нормальная форма с примером
09:37​ - Первая нормальная форма с примером нормализации
11:24​ - Вторая нормальная форма с примером нормализации
15:29​ - Что такое декомпозиция
16:18​ - Третья нормальная форма с примером нормализации
18:54​ - Нормальная форма Бойса-Кодда с примером нормализации
21:54​ - Четвертая нормальная форма с примером нормализации
27:45​ - Почему обычно никто не нормализует БД до 5 или 6 нормальной формы
29:14​ - Пятая нормальная форма с примером нормализации
34:23​ - Доменно-ключевая нормальная форма
35:39​ - Шестая нормальная форма
38:02​ - Выводы и заключение

https://youtu.be/zqQxWdTpSIA?si=9WUJIZbQ8Qu7QWjO
Оконные функции.pdf
2.6 MB
Небольшая шпаргалка по оконным функциям.
Делал при подготовке к собесам
The Bitnami Containers Library
Popular applications, provided by Bitnami, containerized and ready to launch.

Здесь можно найти примеры docker compose и других настроек для таких приложений как:
airflow, spark, vault, nginx, minio, clickhouse, kafka и многое другое

https://github.com/bitnami/containers/
Atlas нужен для автоматизации управления схемами баз данных, позволяя легко проектировать, мигрировать и управлять ими с использованием декларативного подхода и гибкого CLI.

Проект
GitHub - ariga/atlas: Manage your database schema as code
https://github.com/ariga/atlas

Habr: Atlas — инструмент управления схемами миграций БД с открытым исходным кодом: наш опыт и ошибки создателей
https://habr.com/en/companies/flant/articles/753122/
SQL_Server_Наладка_и_оптимизация_для_профессионалов_2023.pdf
10.3 MB
Книга "SQL Server. Наладка и оптимизация для профессионалов. — СПб.: Питер, 2023.pdf"

+ доп.материалы:

Статья "Hands-On with Columnstore Indexes" в 4х частях:
Part 1 Architecture
Part 2 Best Practices and Guidelines
Part 3 Maintenance and Additional Options
Part 4 Query Patterns
Anchor Modeling and GP - презентация Yandex Go.pdf
4.4 MB
Евгений Ермаков, Николай Гребенщиков — Greenplum и Anchor modeling: Мечты разбиваются о реальность

Видео YouTube:
https://www.youtube.com/watch?v=iCZ1HUbGSdw

Еще есть статья про Anchor Modeling на Habr: Дилемма моделирования в рамках Data Vault/Anchor Modeling: объект или событие

Также есть туториал на английском с видео:
https://www.anchormodeling.com/tutorials/

DataLearn: DataVault / Anchor Modeling / Николай Голов
https://www.youtube.com/watch?v=-ZgzpQXsxi0

Habr: Как эволюционировала платформа управления данными в Яндекс Go. Доклад Яндекса - статья из 2024 🙃

Пример с github (нагуглил) hNhM(highly Normalized hybrid Model)
⚓️ Anchor Modeling (AM) — это подход к моделированию хранилищ данных, который ориентирован на максимальную гибкость и адаптивность, чтобы справляться с изменениями в данных и бизнес-логике.

Основные понятия и термины

Anchor (Якорь):
▫️Представляет сущность реального мира.
▫️Содержит суррогатный ключ и временную метку загрузки.
▫️У каждой сущности есть своя таблица Anchor.

Attribute (Атрибут):
▫️Представляет свойство сущности.
▫️Каждое свойство хранится в отдельной таблице Attribute, что обеспечивает ультра-нормализацию (до 6НФ).
▫️Таблица атрибутов содержит суррогатный ключ, временную метку и значение атрибута.

Tie (Связь):
▫️Моделирует отношения между сущностями.
▫️Таблица связи содержит только ключи связанных сущностей.

Surrogate Key (Суррогатный ключ):
▫️Искусственный ключ для идентификации сущности, атрибута или связи.

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

Преимущества:
▫️Адаптивность к изменениям: Расширение модели не нарушает её текущую работу.
▫️Минимизация дублирования данных: Уменьшается объем SCD2 (историзации данных).
▫️Гибкость: Возможность быстрого внесения изменений.

Ограничения:
▫️Количество таблиц: Высокая степень нормализации увеличивает их количество, что может усложнять работу с моделью.
▫️Высокая стоимость запросов: За счет множества объединений (JOIN) между таблицами, что требует оптимизации запросов.

Технические аспекты:
Важными оптимизациями для AM являются:
▫️Join Elimination: Исключение ненужных таблиц из плана запроса.
▫️Merge Join: Эффективное соединение таблиц.
▫️Cluster Index: Использование кластерных индексов для ускорения операций.

Практический опыт:
▫️В рамках проекта использовалась Greenplum, однако подход сталкивался с ограничениями:
▫️Не все оптимизации (Join Elimination, Merge Join) были доступны «из коробки».
▫️Пришлось адаптировать физическое проектирование и использовать гибридную модель (hNhM), сочетая принципы Data Vault и Anchor Modeling.

Anchor Modeling предлагает мощный и гибкий способ организации хранилищ данных, но требует высоких требований к инфраструктуре и оптимизации для достижения производительности.

———

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

Основные характеристики Knot:
▫️Неизменяемость: Узлы хранят данные, которые не меняются со временем, например, коды валют, статусы, типы продуктов.
▫️Компактность: Значения хранятся в одной таблице узла, что позволяет избежать их дублирования в других таблицах.
▫️Оптимизация ссылок: Узлы используются для хранения небольших наборов данных, которые ссылаются на другие таблицы через свои ключи.
▫️Ключи узлов: Узел может содержать как суррогатный ключ (для внутреннего использования), так и бизнес-ключ, представляющий реальное значение (например, "USD" для доллара США).
▫️Декомпозиция: Вместо того, чтобы повторять значение во многих местах, узел предоставляет ссылку, что делает модель более нормализованной.

———

Data Vault и Anchor Modeling отличаются степенью нормализации и подходом к изменениям:
▫️Data Vault использует строгую нормализацию для разделения бизнес-ключей, связей и исторических атрибутов, минимизируя дублирование, но оставляя некоторую гибкость в модели.
▫️Anchor Modeling идет дальше, достигая ультра-нормализации (до 6НФ), полностью исключая дублирование, и ориентируется на постоянное расширение модели без изменений существующих структур.

———

Про сам доклад также можно почитать на Habr: Как мы внедрили свою модель хранения данных — highly Normalized hybrid Model. Доклад Яндекса
2025/06/16 11:53:57
Back to Top
HTML Embed Code: