README.md

    logo_sandbox

    Sandbox DB — это песочница для изучения современных технологий обработки данных, аналитики и визуализации.
    Я собрал все сервисы в одном месте, настроил и отладил их работу.
    Вам остаётся только запустить их и приступить к обучению.

    Что внутри?

    Основные сервисы:

    • Postgres — реляционная база данных.
    • ClickHouse — колоночная СУБД для аналитики в реальном времени.
    • MinIO — объектное хранилище.
    • Apache Iceberg — формат таблиц для больших данных.
    • Trino (ранее PrestoSQL) — распределенный SQL-движок для выполнения запросов к различным источникам данных.
    • JupyterHub + Spark — среда для интерактивной работы с данными и выполнения распределенных вычислений с помощью Apache Spark.
    • Apache Airflow — платформа для оркестрации рабочих процессов и задач.
    • Apache Superset — инструмент для визуализации и исследования данных.
    • Hadoop — экосистема для распределенной обработки больших данных.
    • Grafana — платформа для визуализации и мониторинга нагрузки сервисов.

    Вспомогательные сервисы:

    • Zookeeper — сервис для координации распределенных систем.
    • Kafka — распределенная потоковая платформа для обработки событий в реальном времени.
    • Redis — in-memory хранилище данных, используемое как кэш или брокер сообщений.
    • Hive Metastore — сервис для управления метаданными в экосистеме Hadoop.
    • MariaDB — реляционная база данных, альтернатива MySQL.


    Требования

    • Операционная система: Linux/MacOS. Если у вас Windows, то вам придётся самостоятельно внести ряд изменений, чтобы всё заработало.
    • ОЗУ: от 16 ГБ — сервисов очень много, и когда они все запущены, у меня уходит 10–11 ГБ ОЗУ.
    • ПЗУ: от 20 ГБ
    • Пользователь: должен уметь копировать код из репозитория Git, пользоваться Docker и Docker Compose.


    Запуск и Удаление

    Все начинается с запуска файла: sandbox_db_run.sh

    В терминале linux перейдите в папку проекта и выполните этот код для запуска песочницы:

    sudo sh sandbox_db_run.sh
    

    Для тех, у кого Windows, откройте файл в текстовом редакторе и выполняйте команды по списку, с учётом синтаксиса командной строки Windows

    А если нужно полное удаление

    sudo sh sandbox_db_remove.sh
    

    Таблица адресов

    Каждому сервису я явно назначил IP-адрес, а также сделал одинаковыми логины и пароли для большинства сервисов. IP-адреса от 101 до 114. Пока вы не выучили их наизусть, пользуйтесь данной таблицей. Она также продублирована в файле docker-compose.

    IP list:
    |NAME              |IP          |PORT|LOGIN    |PASSWORD|
    |------------------+------------+----+---------+--------+
    |dwh_pg            |10.19.88.101|5432|tech_load|dwh88   |
    |dwh_minio         |10.19.88.102|9000|tech_load|dwh12345|
    |dwh_click         |10.19.88.103|8123|tech_load|dwh88   |
    |airflow_webserver |10.19.88.104|8080|airflow  |airflow |
    |zookeeper         |10.19.88.105|2181|         |        |
    |kafka             |10.19.88.106|9092|tech_load|dwh88   |
    |hadoop            |10.19.88.107|9870|         |        |
    |hadoop            |10.19.88.107|9009|         |        |
    |hadoop            |10.19.88.107|9864|         |        |
    |jupiterhub_pyspark|10.19.88.108|8888|         |8f293bafa3f498e7d6a8a09baa58cc2290115e95|
    |superset_app      |10.19.88.109|8088|tech_load|dwh88   |
    |grafana           |10.19.88.110|3000|tech_load|dwh88   |
    |trino             |10.19.88.114|8081|admin    |        |
    |mariadb           |10.19.88.112|3306|admin    |admin   |
    |hive-metastore    |10.19.88.113|9083|         |        |
    

    Заключение

    1. Для этого сервиса будет вестись документация. Вы сможете найти её во вкладке Wiki в этом Git-репозитории.
    2. Проект будет обновляться. Хотелось бы добавить DBT и Greenplum.
    Описание

    Песочница для изучения различных технологий связанных с инженерией данных.

    Конвейеры
    0 успешных
    0 с ошибкой