CertMaster

🧱 Delta Lake

ACID transactions, Time Travel, Schema Evolution, Optimization

Databricks Data Engineer · DE-Associate · ⏱️ 28 min · ❓ 6 вопр.

🏔️ Что такое Delta Lake?

Open-source storage layer, записывает в формате Parquet + _delta_log transaction log. ACID transactions — Atomicity, Consistency, Isolation, Durability. Scalable metadata — миллиарды файлов. Интеграция с Databricks, Apache Spark, Flink.

⏰ Time Travel

Каждая операция записи создаёт версию. Возврат к старой версии: `VERSION AS OF 5` или `TIMESTAMP AS OF '2024-01-01'`. RESTORE TABLE — восстановление старой версии таблицы. VACUUM — очистка старых файлов (по умолчанию 7 дней).

📐 Schema Enforcement & Evolution

Schema Enforcement — отклоняет записи, не соответствующие схеме. Schema Evolution: добавление нового столбца с опцией `mergeSchema`. Delta constraints: NOT NULL, CHECK.

⚡ Оптимизация

OPTIMIZE — объединение мелких файлов (small file problem). Z-ORDER — совместное размещение связанных данных (data skipping при фильтрации). Auto Optimize: Auto Compaction + Optimized Writes. Data Skipping — пропуск файлов на основе статистики min/max.
💡 Ключевые моменты
📋 Пример кода
-- Delta table yaratish
CREATE TABLE sales (
  id BIGINT,
  amount DOUBLE,
  date DATE
) USING DELTA
LOCATION '/mnt/data/sales';

-- Time Travel
SELECT * FROM sales VERSION AS OF 10;
SELECT * FROM sales TIMESTAMP AS OF '2024-01-15';

-- Eski versiyani tiklash
RESTORE TABLE sales TO VERSION AS OF 5;

-- Optimizatsiya
OPTIMIZE sales ZORDER BY (date, category);

-- Eski fayllarni tozalash (7 kundan eski)
VACUUM sales RETAIN 168 HOURS;

-- Table history
DESCRIBE HISTORY sales LIMIT 10;
🎯 Советы для экзамена
⚠️ Частые ошибки
🧠 Для запоминания: "Delta = Parquet + Log": P (файлы Parquet) + L (_delta_log) = Delta Lake. "TOVA" = Time travel, Optimize, Vacuum, Acid — 4 ключевые возможности Delta Lake

Проверьте себя по теме «Delta Lake»

Бесплатные интерактивные тесты, пробный экзамен и полные уроки — на платформе CertMaster.

Начать бесплатно →