Поделиться через


Что такое Delta Lake?

Delta Lake — это уровень хранилища с открытым кодом, который переносит транзакции ACID (атомарность, согласованность, изоляция и устойчивость) для Apache Spark и рабочих нагрузок с большими данными.

Текущая версия Delta Lake, входящая в Azure Synapse, поддерживает такие языки, как Scala, PySpark и .NET, и совместима с Linux Foundation Delta Lake. Ссылки на более подробные примеры и документацию см. внизу страницы. Дополнительные сведения см. в видео "Общие сведения о разностных таблицах".

Ключевые функции

Функция Description
Транзакции ACID Озера данных обычно заполняются несколькими процессами и конвейерами, некоторые из которых записывают данные одновременно с чтением. До Delta Lake и добавления транзакций инженерам по обработке данных приходилось обеспечивать целостность данных вручную, что было сопряжено с ошибками. Delta Lake позволяет использовать привычные транзакции ACID в озерах данных. Он предоставляет возможности сериализации, самый высокий уровень изоляции. Дополнительные сведения см. в статье Погружение в Delta Lake: понимание журнала транзакций.
Работа с масштабируемыми метаданными В больших данных даже метаданные могут быть "большими данными". Delta Lake обрабатывает метаданные так же, как и данные, используя распределенную мощность обработки Spark для обработки всех его метаданных. В результате Delta Lake может легко работать с таблицами, вмещающими несколько петабайтов данных с миллиардами разделов и файлов.
Путешествие во времени (управление версиями данных) Возможность "отменить" изменение или вернуться к предыдущей версии является одной из основных функций транзакций. Delta Lake предоставляет моментальные снимки данных, позволяющие вернуться к более ранним версиям данных для аудита, отката или повторных экспериментов. Дополнительные сведения см. в статье О путешествии во времени с Delta Lake при работе с крупными озерами данных.
Открытый формат Apache Parquet — это базовый формат для Delta Lake, позволяющий использовать эффективные схемы сжатия и кодирования, присущие этому формату.
Объединение пакетной службы, источника потоковой передачи и приемника Таблица в Delta Lake является пакетной таблицей, источником потоковой передачи и приемником. Прием потоковых данных, выполнение пакетов задним числом и интерактивные запросы работают без дополнительной настройки.
Принудительное применение схемы Принудительное применение схемы гарантирует, что типы данных верны и присутствуют все необходимые столбцы, что предотвращает несогласованность данных. Дополнительные сведения см. в статье Погружение в Delta Lake: применение и эволюция схемы
Эволюция схемы Delta Lake позволяет вносить изменения в схему таблицы, которая может применяться автоматически, без необходимости написания миграции на языке DDL. Дополнительные сведения см. в статье Погружение в Delta Lake: применение и эволюция схемы
Журнал аудита В журнале транзакций Delta Lake регистрируются сведения обо всех изменениях данных, обеспечивая таким образом полный аудиторский след изменений.
Обновление и удаление данных Delta Lake поддерживает Scala, Java, Python и SQL APIs для различных функций. Поддержка операций слияния, обновления и удаления позволяет вам соответствовать нормативным требованиям. Дополнительные сведения см. в статьях Анонс выпуска Delta Lake 0.6.1, Анонс выпуска Delta Lake 0.7 и Простота и надежность операций обновления и удаления в таблицах Delta Lake с помощью интерфейсов Python, включая фрагменты кода для DML команд MERGE, UPDATE и DELETE.
100 процентов совместим с API Apache Spark Разработчики могут использовать Delta Lake с существующими конвейерами данных, внося минимальное количество изменений, так как Delta Lake полностью совместимо с существующими реализациями Spark.

Более полную документацию см. на странице документации по Delta Lake.

Дополнительные сведения см. на странице проекта Delta Lake.

Следующие шаги