docs: add russian comments to pipeline files
This commit is contained in:
@@ -1,32 +1,54 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# Скрипт применения DDL в ClickHouse
|
||||
#
|
||||
# Назначение:
|
||||
# Последовательно применяет SQL-файлы из ddl/*.sql в базу ClickHouse.
|
||||
# Файлы применяются в алфавитном порядке (00 → 10 → 20 → 30 → 40).
|
||||
#
|
||||
# Как запускать:
|
||||
# make ddl
|
||||
# или: bash scripts/apply_clickhouse_ddl.sh
|
||||
#
|
||||
# Требования:
|
||||
# - Сервис clickhouse должен быть запущен (make up)
|
||||
# - Доступен clickhouse-client внутри контейнера
|
||||
#
|
||||
# Порядок применения важен:
|
||||
# 00_databases.sql → 10_stg.sql → 20_ods.sql → 30_dds.sql → 40_dm.sql
|
||||
#
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Apply ClickHouse DDL files in order
|
||||
# Usage: make ddl
|
||||
# or: bash scripts/apply_clickhouse_ddl.sh
|
||||
|
||||
# Директория со скриптом
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
DDL_DIR="${SCRIPT_DIR}/../ddl"
|
||||
|
||||
# Параметры подключения (можно переопределить через переменные окружения)
|
||||
COMPOSE_BIN="${COMPOSE_BIN:-docker compose}"
|
||||
CLICKHOUSE_SERVICE="${CLICKHOUSE_SERVICE:-clickhouse}"
|
||||
CLICKHOUSE_DB="${CLICKHOUSE_DB:-default}"
|
||||
CLICKHOUSE_USER="${CLICKHOUSE_USER:-default}"
|
||||
CLICKHOUSE_PASSWORD="${CLICKHOUSE_PASSWORD:-123456}"
|
||||
|
||||
echo "Applying ClickHouse DDL from ${DDL_DIR}..."
|
||||
echo "Применение DDL из ${DDL_DIR}..."
|
||||
|
||||
# Check if clickhouse service is running
|
||||
# -----------------------------------------------------------------------------
|
||||
# Проверка: ClickHouse запущен?
|
||||
# -----------------------------------------------------------------------------
|
||||
if ! ${COMPOSE_BIN} ps | grep -q "${CLICKHOUSE_SERVICE}"; then
|
||||
echo "Error: ClickHouse service '${CLICKHOUSE_SERVICE}' is not running."
|
||||
echo "Run 'make up' first to start the services."
|
||||
echo "Ошибка: Сервис '${CLICKHOUSE_SERVICE}' не запущен."
|
||||
echo "Запустите сначала: make up"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Apply DDL files in order (00 -> 10 -> 20 -> 30 -> 40)
|
||||
# -----------------------------------------------------------------------------
|
||||
# Применение SQL-файлов по порядку
|
||||
# -----------------------------------------------------------------------------
|
||||
# shellcheck disable=SC2044
|
||||
for sql_file in "${DDL_DIR}"/*.sql; do
|
||||
if [[ -f "$sql_file" ]]; then
|
||||
echo "Applying: $(basename "$sql_file")"
|
||||
echo "Применение: $(basename "$sql_file")"
|
||||
${COMPOSE_BIN} exec -T "${CLICKHOUSE_SERVICE}" clickhouse-client \
|
||||
--user="${CLICKHOUSE_USER}" \
|
||||
--password="${CLICKHOUSE_PASSWORD}" \
|
||||
@@ -37,4 +59,11 @@ for sql_file in "${DDL_DIR}"/*.sql; do
|
||||
fi
|
||||
done
|
||||
|
||||
echo "DDL applied successfully."
|
||||
echo ""
|
||||
echo "DDL успешно применён!"
|
||||
echo ""
|
||||
echo "Созданы базы данных:"
|
||||
echo " - stg : Staging (сырые данные)"
|
||||
echo " - ods : Operational Data Store (типизированные данные)"
|
||||
echo " - dds : Detailed Data Store (детальные сущности)"
|
||||
echo " - dm : Data Marts (витрины для BI)"
|
||||
|
||||
Reference in New Issue
Block a user