0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<p>Теги: обработка данных, data engineering, etl</p>
1
<p>Теги: обработка данных, data engineering, etl</p>
2
<p>Среди многих навыков современного Data-инженера можно выделить один из самых важных - это способность разрабатывать/строить/поддерживать<strong>хранилища данных</strong>. Ведь если качественной инфраструктуры по хранению данных нет, то любая активность, которая будет связана с анализом данных, окажется или слишком дорогой, или просто немасштабируемой. И вот здесь будет вполне уместно вспомнить<strong>ETL</strong>.</p>
2
<p>Среди многих навыков современного Data-инженера можно выделить один из самых важных - это способность разрабатывать/строить/поддерживать<strong>хранилища данных</strong>. Ведь если качественной инфраструктуры по хранению данных нет, то любая активность, которая будет связана с анализом данных, окажется или слишком дорогой, или просто немасштабируемой. И вот здесь будет вполне уместно вспомнить<strong>ETL</strong>.</p>
3
<p><strong>ETL</strong>представляет собой общий термин, описывающий процессы миграции данных из одного источника в другой. В общем семантическом ядре, прямо или косвенно связанном с ETL, находятся и такие понятия, как импорт/экспорт/конвертация данных, web-scrapping, парсинг файлов и т. д.).</p>
3
<p><strong>ETL</strong>представляет собой общий термин, описывающий процессы миграции данных из одного источника в другой. В общем семантическом ядре, прямо или косвенно связанном с ETL, находятся и такие понятия, как импорт/экспорт/конвертация данных, web-scrapping, парсинг файлов и т. д.).</p>
4
<p>Сам по себе термин<strong>ETL</strong>можно назвать аббревиатурой, состоящей из следующих слов:<strong>Extract</strong>,<strong>Transform</strong>,<strong>Load</strong>. Это 3 концептуально важных шага, которые определяют, как устроена большая часть современных пайплайнов данных. По сути, можно говорить о базовой модели того, как именно сырые данные сделать данными, готовыми для анализа.</p>
4
<p>Сам по себе термин<strong>ETL</strong>можно назвать аббревиатурой, состоящей из следующих слов:<strong>Extract</strong>,<strong>Transform</strong>,<strong>Load</strong>. Это 3 концептуально важных шага, которые определяют, как устроена большая часть современных пайплайнов данных. По сути, можно говорить о базовой модели того, как именно сырые данные сделать данными, готовыми для анализа.</p>
5
<p>Теперь давайте рассмотрим эти шаги подробнее:</p>
5
<p>Теперь давайте рассмотрим эти шаги подробнее:</p>
6
<ol><li><strong>Extract</strong>. На этом шаге данные принимаются на вход из разных источников (пользовательских логов, внешнего набора данных, копий реляционной БД и т.д.). Далее они передаются для дальнейших преобразований.</li>
6
<ol><li><strong>Extract</strong>. На этом шаге данные принимаются на вход из разных источников (пользовательских логов, внешнего набора данных, копий реляционной БД и т.д.). Далее они передаются для дальнейших преобразований.</li>
7
<li><strong>Transform</strong>. Представляет собой "сердце" любого ETL. На этом этапе применяется бизнес-логика и осуществляются процессы фильтрации, группировки и агрегирования. Делается это в целях преобразования сырых данных в датасет, готовый к анализу. Данная процедура требует четкого понимания существующих бизнес-задач, не говоря уже о наличии соответствующих знаний области хотя бы на базовом уровне.</li>
7
<li><strong>Transform</strong>. Представляет собой "сердце" любого ETL. На этом этапе применяется бизнес-логика и осуществляются процессы фильтрации, группировки и агрегирования. Делается это в целях преобразования сырых данных в датасет, готовый к анализу. Данная процедура требует четкого понимания существующих бизнес-задач, не говоря уже о наличии соответствующих знаний области хотя бы на базовом уровне.</li>
8
<li><strong>Load</strong>. Обработанные данные загружаются и отправляются в место конечного пользования. В результате полученный набор данных уже можно использовать. Также это может быть входным потоком к другому ETL.</li>
8
<li><strong>Load</strong>. Обработанные данные загружаются и отправляются в место конечного пользования. В результате полученный набор данных уже можно использовать. Также это может быть входным потоком к другому ETL.</li>
9
</ol><p>Типичные этапы ETL-процесса можно представить и так:</p>
9
</ol><p>Типичные этапы ETL-процесса можно представить и так:</p>
10
<ul><li>извлечение данных из источника (файла, веб-страницы, базы данных);</li>
10
<ul><li>извлечение данных из источника (файла, веб-страницы, базы данных);</li>
11
<li>очистка полученных данных (приведение разнородных данных к некому единому формату, устранение недочетов, удаление лишнего и прочее);</li>
11
<li>очистка полученных данных (приведение разнородных данных к некому единому формату, устранение недочетов, удаление лишнего и прочее);</li>
12
<li>обогащение (если требуется, то для получения новых данных, которые связаны с обрабатываемыми данными, применяются алгоритмы либо внешние источники);</li>
12
<li>обогащение (если требуется, то для получения новых данных, которые связаны с обрабатываемыми данными, применяются алгоритмы либо внешние источники);</li>
13
<li>трансформирование данных;</li>
13
<li>трансформирование данных;</li>
14
<li>загрузка данных (подразумевается интеграция данных в единую целевую модель, к примеру, в<strong>DWH</strong>).</li>
14
<li>загрузка данных (подразумевается интеграция данных в единую целевую модель, к примеру, в<strong>DWH</strong>).</li>
15
</ul><p>Остается добавить, что если ETL-процессы слишком сложны, имеет смысл их разбить на цепочку более простых.</p>
15
</ul><p>Остается добавить, что если ETL-процессы слишком сложны, имеет смысл их разбить на цепочку более простых.</p>
16
<p><strong>Источники</strong>: -<em>https://issoft.by/blog/razbiraemsya-chto-takoe-etl-na-primere-par/</em>; -<em>https://habr.com/ru/company/newprolab/blog/358530/</em>.</p>
16
<p><strong>Источники</strong>: -<em>https://issoft.by/blog/razbiraemsya-chto-takoe-etl-na-primere-par/</em>; -<em>https://habr.com/ru/company/newprolab/blog/358530/</em>.</p>
17
17