Данные в промежуточных элементах потока данных 2-го поколения

Для повышения производительности и надежности Dataflow Gen2 использует элементы подготовки для хранения промежуточных данных во время преобразования данных. В этой статье описывается, что такое промежуточные элементы, шаблоны ELT, которые они реализуют через модель одна загрузка – много ссылок, и как управлять данными, которые в них содержатся.

Что такое промежуточные элементы?

Промежуточные элементы — это временные хранилища данных, используемые Dataflow Gen2 для хранения данных во время их преобразования. Эти элементы называются "DataflowsStagingLakehouse" и "DataflowsStagingWarehouse". Промежуточные элементы используются для хранения промежуточных данных во время преобразования данных для повышения производительности. Эти элементы создаются автоматически при создании первого потока данных и управляются потоком данных 2-го поколения. Эти элементы скрыты от пользователя в рабочей области, но могут отображаться в других интерфейсах, таких как Получение данных или обозреватель Lakehouse. Настоятельно рекомендуем не осуществлять прямой доступ к данным в промежуточных элементах или изменять их, так как это может привести к непредвиденному поведению. Кроме того, самостоятельное хранение данных в промежуточных элементах не поддерживается и может привести к потере данных.

Шаблоны ELT: этап один раз, многократная ссылка

Помимо предоставления промежуточного хранилища, подготовительный этап разблокирует набор шаблонов ELT, построенных на одном фундаменте: один раз разместите, используйте много раз. Запрос источника обозначается как промежуточный, поэтому его данные передаются в внутреннее промежуточное хранилище. Затем подчиненные запросы ссылаются на этот промежуточный запрос вместо повторного чтения источника. Ускоренная копия — это необязательный ускоритель, который ускоряет заполнение поэтапного запроса, но не определяет шаблон.

Шаблон имеет значение, так как после поэтапного создания данных подчиненные запросы могут:

  • Работайте с индексированной, запрососпособной копией, не обращаясь повторно к источнику.
  • Сворачивать фильтры, соединения и агрегаты обратно в промежуточную конечную точку SQL вместо выполнения в подсистеме mashup.
  • Разветвлять на несколько параллельных преобразований или назначения из одного материализованного результата.

Распространенные варианты использования

Следующие шаблоны обычно накладываются поверх многоуровневого основного запроса.

Сценарий использования Description
Формирование промежуточных данных в модели аналитики Запросы-ссылки формируют подготовленные данные в виде таблиц фактов и измерений, сводок, сверток или ключевых показателей эффективности через процессы дедупликации, группировки и генерации ключей.
Свертывание вычислительных ресурсов На них ссылаются запросы, написанные для стадийной SQL конечной точки, которые переносят свои соединения, фильтрацию и операции группировки в подсистему SQL-этапа, направляя вычисления в движок хранилища, а не в движок mashup. Это часто является самым значительным выигрышем в производительности, который обеспечивает стейджинг.
Ветвь качества данных и аудита Ссылки на запросы проверяют или инспектируют подготовленные данные (проверки null, проверку ограничений, счетчики строк) без повторного чтения источника.
Распределение на несколько пунктов назначения Несколько ссылочных запросов загружают разные назначения из одного и того же промежуточного источника (например, один Lakehouse и один склад).
поэтапно-слияние Каждый источник выполняется в собственном запросе, а затем подчиненный запрос объединяет или присоединяет промежуточные результаты к промежуточной конечной точке SQL.

Если этап подготовки не подходит

Промежуточное хранение добавляет затраты на хранилище и дополнительную запись перед выполнением следующих запросов. Попробуйте пропустить его, когда:

  • Преобразование уже интегрируется с исходной системой без вычислений в модуле mashup.
  • Поток данных имеет один выход и не содержит разветвлений вниз по потоку, проверки или разветвления.
  • Задержка источника является узким местом, и источник не может быть распараллелен через этапы обработки данных.

Дополнительные рекомендации по включению или отключению промежуточного хранения см. в рекомендациях по получению оптимальной производительности с помощью потока данных 2-го поколения.

Данные в подготовительных хранилищах

Промежуточные элементы не предназначены для прямого доступа пользователями. Dataflow Gen2 управляет данными в промежуточных элементах и гарантирует, что данные находятся в согласованном состоянии. Доступ к данным в промежуточных элементах напрямую не поддерживается, так как нельзя гарантировать, что данные находятся в согласованном состоянии. Если необходимо получить доступ к данным в элементах промежуточного хранения, можно использовать соединитель потоков данных в Power BI, Excel или других потоках данных.

Это важно

Внутренний API, который предоставляет промежуточные данные для последующих потребителей (например, семантических моделей или других потоков данных с использованием соединителя Dataflows), может испытывать временные тайм-ауты. Эти тайм-ауты могут приводить к сбоям обновления при потреблении данных, часто проявляясь в виде ошибки "Ключ не соответствует ни одной из строк в таблице". Эта ошибка не указывает на проблему с данными. Это означает, что бэкенд не смог вовремя получить подготовленные результаты.

Рекомендуемое решение: Настройте место назначения данных (Lakehouse или Warehouse) для вашего потока данных и обновите подчиненные элементы, чтобы они считывали данные непосредственно из этого назначения с использованием соединителя Lakehouse или Warehouse. Это обходит тестовый API и улучшает надежность обновления.

Дополнительные сведения см. в разделе об ограничениях фабрики данных.

Удаление данных из промежуточных элементов может быть принудительно выполнено одним из следующих действий:

  • Отключите использование промежуточного этапа в потоке данных и обновите его (через 30 дней мы осуществляем сбор и очистку данных).
  • Удалите поток данных (непосредственно удаляет данные).
  • Удалите рабочую область (непосредственно удаляет StagingLakehouse и StagingWarehouse).

Финансовые последствия этапа подготовки

Промежуточное хранилище Lakehouse и промежуточное хранилище Warehouse хранят промежуточные данные в рамках обработки потока данных. Потребляемая этими промежуточными элементами емкость оплачивается как часть вашего хранилища OneLake. Это означает, что данные, хранящиеся в промежуточных элементах, учитывают общее потребление хранилища OneLake и связанные затраты.

Эффективное управление затратами на хранение:

  • Мониторинг использования промежуточного хранилища. Помните, что промежуточные данные накапливаются при каждом обновлении Dataflow, пока не будет произведен сбор мусора или данные не будут явно удалены.
  • Отключите промежуточную область, если не требуется: если ваши преобразования возвращены в исходную систему, возможно, вам не потребуется активировать промежуточную область. Отключение промежуточного хранения снижает потребление места для хранения данных.
  • Очистка неиспользуемых потоков данных: удаление потоков данных, которые больше не требуются, немедленно удаляет связанные промежуточные данные.
  • Рассмотрим частоту обновления: частые обновления с поддержкой промежуточного хранения могут привести к более высокому потреблению хранилища. Сбалансируйте преимущества производительности с учетом затрат на хранение.

Дополнительные сведения о ценах на хранилище OneLake см. в разделе Цены на Microsoft Fabric.