
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|         |        |
Заключение
- Для этого сервиса будет вестись документация. Вы сможете найти её во вкладке Wiki в этом Git-репозитории.
 - Проект будет обновляться. Хотелось бы добавить DBT и Greenplum.
 
Описание
Песочница для изучения различных технологий связанных с инженерией данных.