преамбула: волею долі зі світу академічної науки (медицини) я потрапила у світ інформаційних технологій, де мені доводиться використовувати свої знання про методологію побудови експерименту та стратегії аналізу експериментальних даних, проте застосовувати новий для мене стек технологій. У процесі освоєння цих технологій я стикаюся з низкою труднощів, які поки що, на щастя, вдається долати. Можливо, цей пост буде корисним тим, хто також починає роботу з проектами Apache.
Отже, до суті. Надихнувшись Юрія Ємельянова щодо можливостей Apache Airflow в галузі автоматизації аналітичних процедур, мені захотілося почати використовувати пропонований набір бібліотек у своїй роботі. Тим, хто ще зовсім не знайомий з Apache Airflow, може бути цікава невелика оглядова на сайті Національної бібліотеки ім. Н. Е. Баумана.
Оскільки звичайні інструкції для запуску Airflow, зважаючи на все, не застосовуються в середовищі Windows, а використовуватиме розв'язання даної задачі у моєму випадку було б надмірно, я розпочала пошук інших рішень. На щастя для мене, я виявилася не першою на цьому шляху, тому мені вдалося знайти чудову по встановленню Apache Airflow в Windows 10 без використання докеру. Але, як це часто буває, при виконанні рекомендованих кроків виникають труднощі, і, гадаю, не тільки в мене. Тому я хотіла б розповісти про свій досвід встановлення Apache Airflow, можливо, комусь це заощадить трохи часу.
Пройдемося по кроках інструкції (спойлер - 5-го кроку все йшло чудово):
1. Встановлення підсистеми Windows для Linux для подальшої установки дистрибутивів Linux
Це менша з проблем, як то кажуть:
Панель керування → Програми → Програми та компоненти → Увімкнення та вимкнення компонентів Windows → Підсистема Windows для Linux
2. Встановлення дистрибутива Linux на вибір
Я скористалася програмою .
3. Встановлення та апдейт pip
sudo apt-get install software-properties-common
sudo apt-add-repository universe
sudo apt-get update
sudo apt-get install python-pip4. Встановлення Apache Airflow
export SLUGIFY_USES_TEXT_UNIDECODE=yes
pip install apache-airflow5. Ініціалізація бази даних
І саме тут почалися мої маленькі труднощі. Інструкція наказує ввести команду airflow initdb та перейти до наступного кроку. Однак я незмінно отримувала відповідь airflow: command not found. Логічно припустити, що виникли труднощі на етапі встановлення Apache Airflow і просто немає потрібних файлів. Переконавшись, що все там, де і повинно бути, я вирішила спробувати вказати повний шлях до файлу airflow (виглядати має так: Полный/путь/до/файла/airflow initdb). Але дива не сталося і відповідь була такою ж airflow: command not found. Я спробувала використати відносний шлях до файлу (./.local/bin/airflow initdb), що призвело до появи нової помилки ModuleNotFoundError: No module named json', яку можна подолати, оновивши бібліотеку інструмент (у моєму випадку до версії 0.15.4):
pip install werkzeug==0.15.4Докладніше про werkzeug можна почитати .
Після цієї нехитрої маніпуляції команда ./.local/bin/airflow initdb була виконана успішно.
6. Запуск сервера Airflow
На цьому труднощі зі зверненням до airflow ще не завершились. Запуск команди ./.local/bin/airflow webserver -p 8080 призвів до помилки No such file or directory. Ймовірно, досвідчений користувач Ubuntu відразу б спробував подолати такі труднощі зі зверненням до файлу, застосувавши команду export PATH=$PATH:~/.local/bin/ (тобто, додавши до існуючого шляху пошуку виконуваних файлів, який визначається змінною PATH каталог /.local/bin/), але цей пост призначений для тих, хто переважно працює з Windows і, можливо, не вважає таке рішення очевидним.
Після описаної вище маніпуляції команда ./.local/bin/airflow webserver -p 8080 була успішно виконана.
7.URL: : 8080 /
Якщо все пройшло вдало на попередніх етапах, ви готові підкорювати аналітичні вершини.
Сподіваюся, описаний вище досвід встановлення Apache Airflow на Windows 10 буде корисним користувачам-початківцям і прискорить їх входження у всесвіт сучасних інструментів аналітики.
Наступного разу хотілося б продовжити тему та розповісти про досвід використання Apache Airflow у сфері аналізу поведінки користувачів мобільних додатків.
Джерело: habr.com
