Общие сведения о Delta Lake

Завершено

Delta Lake — это уровень хранения с открытым кодом, который добавляет семантику реляционной базы данных в обработку озера данных на основе Spark. Delta Lake поддерживается в пулах Spark Azure Synapse Analytics для кода PySpark, Scala и .NET.

Преимущества использования Delta Lake в пуле Spark Synapse Analytics:

  • Реляционные таблицы, поддерживающие запросы и изменение данных. С помощью Delta Lake можно хранить данные в таблицах, поддерживающих операции CRUD (создание, чтение, обновление и удаление). Иными словами, вы можете выбирать, вставлять, обновлять и удалять строки данных так же, как и в реляционной системе баз данных.
  • Поддержка транзакций ACID. Реляционные базы данных предназначены для поддержки изменений транзакционных данных, которые обеспечивают атомарность (транзакции выполняются как одна единица работы), согласованность (транзакции покидают базу данных в согласованном состоянии), изоляцию (внутрипроцессные транзакции не могут влиять друг на друга) и устойчивость (когда транзакция завершается, внесенные изменения сохраняются). Delta Lake обеспечивает ту же поддержку транзакций в Spark с помощью журнала транзакций и сериализуемой изоляции для параллельных операций.
  • Управление версиями данных и переход во времени. Так как все транзакции регистрируются в журнале транзакций, можно отслеживать несколько версий каждой строки таблицы и даже использовать функцию перехода во времени для получения предыдущей версии строки в запросе.
  • Поддержка данных пакетной и потоковой передачи. Хотя большинство реляционных баз данных включают таблицы, в которых хранятся статические данные, Spark включает встроенную поддержку данных потоковой передачи через API Spark Structured Streaming. Таблицы Delta Lake можно использовать в качестве приемников (назначений) и источников для потоковой передачи данных.
  • Стандартные форматы и взаимодействие. Базовые данные для таблиц Delta Lake хранятся в формате Parquet, который обычно используется в конвейерах приема озера данных. Кроме того, бессерверный пул SQL в Azure Synapse Analytics можно использовать для запроса таблиц Delta Lake в SQL.

Совет

Дополнительные сведения о Delta Lake в Azure Synapse Analytics см. в статье Что такое Delta Lake в документации по Azure Synapse Analytics.