powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Использование Python как ETL-инструмента
23 сообщений из 23, страница 1 из 1
Использование Python как ETL-инструмента
    #39902275
Master_Detail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго дня!

Собственно, хотелось бы получить какие-то отклики от тех, кто использовал питон как промышленное ETL-решение. Есть некоторый опыт в решении небольших прикладных задач на питоне, но не более того.

Если исходить из классического подхода в реляционных DWH, где есть звезда(снежинка), есть какой нибудь Informatica Power Center(ODI, IBM DataStage, Pentaho и т.п.), то насколько реально сделать большое хранилище только на питоне без использования указанных инструментов?

Как оно все поддерживается, как с производительностью при загрузке 10M+ фактов ежедневно, где оно все крутится, что выступает в роли шедуллера? Интересно все, а особенно реальный опыт.

Спасибо.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39902288
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Master_Detail,

На Питоне, хранилище не делают. На питоне делают ETL.

Несколько мне известно в АВИТО сделано крупное хранилище на Вертике. И ETL на питоне.

И там не звезда или снежинка, а якорная модель.

Еще знаю в profi.ru использовали Python + Vertica

Есть framework airflow.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39902323
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Master_Detail,

Airflow интеерсный тул - идея мне нравится.
я его пытался чуть щупать
развивается - чат в телеграме есть
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39902324
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю, стоит принять во внимание, что это, скорее, не заслуга Python'a, а отсутствие нормальных ПОНЯТНЫХ бесплатных ETL-инструментов. Кто-то и на C++ пишет.

С Уважением,
Георгий
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39902330
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George NordicДумаю, стоит принять во внимание, что это, скорее, не заслуга Python'a, а отсутствие нормальных ПОНЯТНЫХ бесплатных ETL-инструментов. Кто-то и на C++ пишет.

Чушь. Есть нормальные ПОНЯТНЫЕ и бесплатные ETL-инструменты. А именно, Pentaho Data Integration и Talend Open Studio. Их бесплатные версии вполне пригодны для работы. Есть обширная документация и книги. Pentaho несколько проще для первоначального ознакомления (ИМХО), но есть смысл ознакомиться с обоими.
А если кто вместо ETL пытается использовать Python или состряпать что-то на C++, то это глупости следующих типов:
- использование программных средств не по назначению
- плохо программировать то, что уже запрограммировано хорошо.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39902479
Master_Detail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
a_voronin
Master_Detail,
На Питоне, хранилище не делают. На питоне делают ETL.

Не думаю, что стоит придираться к словам, когда вопрос ясен. Можете читать как "сделать ETL процессы для большого хранилища", коль угодно

Partisan M

А если кто вместо ETL пытается использовать Python или состряпать что-то на C++, то это глупости следующих типов:
- использование программных средств не по назначению
- плохо программировать то, что уже запрограммировано хорошо.


Но почему-то есть такое мнение, что Python для этих задач как раз подходит. Вот и хочу понять, на чем оно основано, если есть тот же самый пентахо
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39902484
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
питон сейчас самое распространенное ETL в новых проектах. Большинство последних проектов у меня сделаны на Питоне.
Есть несколько опенсорсных питоновских ETL - Airflow, luigi, которые выполняют часть функций Informatica, типа оркестрации и мониторинга.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39902487
Master_Detail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Бумбараш
питон сейчас самое распространенное ETL в новых проектах. Большинство последних проектов у меня сделаны на Питоне.
Есть несколько опенсорсных питоновских ETL - Airflow, luigi, которые выполняют часть функций Informatica, типа оркестрации и мониторинга.

Вот, наконец на личном опыте, спасибо. Почему выбрали питон, почему не бесплатный ETL-инструмент?
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39902547
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Airflow и luigi это и есть opensource ETL. Они написаны на python.

Если под opensource ETL вы имели Talend/Pentaho, то перед ними у питоновских есть такие плюсы:

1. Airflow и какой-нибудь Nifi(но он написан на java) входят в стандартный стэк Hadoop/Bigdata и развиваются вместе с этим стэком. Nifi, например поддерживается cloudera/Hortonworks.

2. У продуктов из apache project, типа Airflow, полностью доступен весь функционал этого проекта бесплатно. Talend/Pentaho работают по модели Open core. То есть базовый функционал бесплатно, а остальной платно. Причем этот остальной функционал может считаться базовым для ETL вообще какими-то пользователями. Например, мной, когда я пробовал делать проект на Talend. То, что там дается бесплатно, я счел недостаточным для полноценного full scale проекта.

3. Так как весь ETL проект на Airflow это код на питоне, поэтому им легче управлять и масштабировать. В Talend/PEntaho нужно рисовать картинки. Их сложнее масштабировать и автоматизировать. Например, если вам нужно сделать 100 одинаковых загрузок, размножить код на питоне гораздо проще, чем сделать сто гуёв.

4. По поводу производительности, все питоновские ETL работают по схеме ELT. То есть сначала все данные загружаются в базу какими-нибудь коннекторами Jdbc, db link, sqoop, etc. Дальнейшие перегрузки данных происходят в самой базе, питон просто извне дергает SQL скрипты по перегрузки. Через него данные не грузятся, поэтому проблем с обработкой объемов у него нет, они переложены на базу.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39902988
Юрий Кудрявцев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавил бы, что питоновский код можно положить в нормальную систему хранения версий, и автоматизировать деплоймент из нее, что, к сожалению, кроме как на демо-примерах, в "больших" ETL инструментах работает очень плохо.
Тот же Datastage (да и все они) в "коде" хранит и расположение иконок на канвасе, и "подвинул / покрасил" иконку это изменение :)
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39903375
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбараш,
СПС за ответы
а такой простой вопрос
AirFlow это ж под юникс - так ?

пару слов про это - скажем если стэк MS
если скажем я чисто виндовый (оч. давно имел дела с юниксом )
т.е для разработки нужна как мин. линкус. ВМ ?
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39903388
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гулин Федор,

https://habr.com/ru/post/462161/
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39903404
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гулин Федор,

у нас сейчас как раз база SQL Server, которая загружается через Airflow. Airflow стоит на Linux, как и остальные кафки-графаны. Также на линуксе большинство источников.

В телеге есть чат

t.me/ruairflow

в нем быстрее всего я думаю получить ответ на русском.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39903421
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбараш,

И зачем нужна такая схема? Вы же на ровном месте поднимаете требования к найму сотрудников.
Это все равно, что на конвейер искать рабочих с высшим образованием, в то время как у соседей оно для рабочих не нужно.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39903451
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбараш,
про чат в курсе - когда пытался смотреть airflow лазил туда
докернася вреся не прокатила у меня - я поднял ее но слишком много заморочке было именно с докером
мне чтобы поставить посмотреть - надо было ставить ВМ с линуксом и windows (это были заморочки секрутии) -
раз у вас SQL сервер
вопрос на какой (системе - винда или линкус) разрабатывает код питона для Airflow
т.е возможна разработка на винд. станции ?
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39903462
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик
Бумбараш,

И зачем нужна такая схема? Вы же на ровном месте поднимаете требования к найму сотрудников.
Это все равно, что на конвейер искать рабочих с высшим образованием, в то время как у соседей оно для рабочих не нужно.


схема обычная, что в ней такого? Нужен был бесплатный ETL, выбрали этот. К тому же SQL server это не целевая база, он будет заменен на постгре.

Если вы считаете питон высшим образованием, это очень странно. Это самое распространенное средство сейчас для автоматизации ETL тасков. Его в школе учат, и абсолютно все учащиеся вузов работающие с датой. Он куда проще для автоматизации тасков, чем какой-нибудь korn или posix shell.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39903466
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гулин Федор,

код можно писать и на винде, но работать он должен на линуксе в итоге.

Если у вас какие-то проблемы с линуксом, то можете другие ETL посмотреть. Всё таки airflow он linux-oriented.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39903711
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбараш,

Просто схема странно выглядит, если не знать о предполагаемом отказе от mssql.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39906421
Sintetik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Partisan M

Чушь. Есть нормальные ПОНЯТНЫЕ и бесплатные ETL-инструменты. А именно, Pentaho Data Integration и Talend Open Studio.

понятные и бесплатные да, насчет нормальных большое преувеличение
нормальных два это datastage и informatica, вышеперечисленное с кучей проблем
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39906422
Sintetik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбараш
питон сейчас самое распространенное ETL в новых проектах. Большинство последних проектов у меня сделаны на Питоне.
Есть несколько опенсорсных питоновских ETL - Airflow, luigi, которые выполняют часть функций Informatica, типа оркестрации и мониторинга.

нужно уточнять - в проектах, где мало денег или жмутся на деньги
от слова "бесплатно" к сожалению у многих срывает башню, скоро наедятся
я уже вижу по западным запросам, как нормальный бизнес(тот который может зарабатывать деньги), все больше склоняется к облакам, за которыми стоят большие корпорации - AWS, Azure, Google bigquery, и соответственно к прилагаемым к ним инструментам, в том числе ETL, а самостоятельная возня с опенсорсными поделками остается энтузиастам, студентам или проектам без денег.
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39908829
Master_Detail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sintetik
Partisan M

Чушь. Есть нормальные ПОНЯТНЫЕ и бесплатные ETL-инструменты. А именно, Pentaho Data Integration и Talend Open Studio.

понятные и бесплатные да, насчет нормальных большое преувеличение
нормальных два это datastage и informatica, вышеперечисленное с кучей проблем


Расскажите пожалуйста про кучу проблем - какие примеры?

С Informatica плотно работаю, в IBM DataStage опыт совсем небольшой - правил с десяток процессов, Pentaho Data Integration - тоже без опыта разработки с нуля, а Talend Open Studio даже в глаза не видел
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39909138
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Partisan M
Чушь. Есть нормальные ПОНЯТНЫЕ и бесплатные ETL-инструменты. А именно, Pentaho Data Integration и Talend Open Studio.
Master_Detail
Pentaho Data Integration - тоже без опыта разработки с нуля, а Talend Open Studio даже в глаза не видел
За просто запустите поиск по этому форуму. И увидите и кучу нареканий, и множество вопросов без ответа. А где ответы на вопросы искать?? У ряда продуктов хоть комьюнити нормальное - DIS поддерживает Informatica, у Oracle вообще отлично комюнити. А вот если засада с другими продуктами - ЧТО МНЕ ДЕЛАТЬ?
...
Рейтинг: 0 / 0
Использование Python как ETL-инструмента
    #39909186
Sintetik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Master_Detail
Sintetik
пропущено...

понятные и бесплатные да, насчет нормальных большое преувеличение
нормальных два это datastage и informatica, вышеперечисленное с кучей проблем


Расскажите пожалуйста про кучу проблем - какие примеры?

С Informatica плотно работаю, в IBM DataStage опыт совсем небольшой - правил с десяток процессов, Pentaho Data Integration - тоже без опыта разработки с нуля, а Talend Open Studio даже в глаза не видел


у меня несколько лет личного секса с талендом, 7 лет с datastage, с инфой поменьше.

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

Можно конечно заморозить версию в проекте, но тогда вообще нет шансов на исправления
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Использование Python как ETL-инструмента
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]