Добавить назначение Lakehouse в поток событий

В этой статье объясняется, как добавить Lakehouse в качестве пункта назначения в поток событий Microsoft Fabric. Для оптимизации производительности потоковой передачи и запросов в режиме реального времени рассмотрите возможность потоковой передачи данных в Eventhouse с добавлением назначения Eventhouse в поток событий, а затем включите доступность Eventhouse OneLake.

Примечание.

Расширенные возможности включены по умолчанию при создании потоков событий. Если у вас есть потоки событий, созданные с помощью стандартных возможностей, эти потоки событий будут продолжать работать. Вы по-прежнему можете изменять и использовать их как обычно. Рекомендуется создать новый поток событий для замены стандартных потоков событий, чтобы воспользоваться дополнительными возможностями и преимуществами расширенных потоков событий.

Внимание

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

При записи выходных данных в новую разностную таблицу схема таблицы создается на основе первой записи. Все записи выходных данных проецируются на схему существующей таблицы.

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

Если схема таблицы Delta и входящей записи не имеют пересечения, это приведет к сбою преобразования схемы. Однако это не единственный сценарий, который может вызвать такой сбой.

Если схема входящих данных изменяется (т. е. схема новой записи данных не соответствует первой записи), некоторые столбцы или все записи могут быть потеряны при записи в lakehouse. Таким образом, использование lakehouse для получения потоковых данных, например, данных CDC из базы данных, не рекомендуется.

Предварительные условия

  • Доступ к рабочей области в режиме лицензии емкости Fabric или в режиме пробной лицензии с разрешениями уровня "Участник" или выше.
  • Доступ к рабочей области, в которой находится озерный дом, с разрешениями участника или более высокого уровня.

Добавьте дом у озера в качестве пункта назначения

Чтобы добавить Lakehouse в поток событий по умолчанию или в производный поток событий, выполните следующие действия.

  1. В режиме редактирования для потока событий выберите "Добавить назначение " на ленте и выберите Lakehouse из раскрывающегося списка.

    Снимок экрана раскрывающегося списка

  2. Подключите узел Lakehouse к узлу потоковой передачи или оператору.

  3. На экране конфигурации Lakehouse выполните следующие сведения:

    1. Введите имя назначения.
    2. Выберите рабочее пространство Workspace, содержащее озёрный дом.
    3. Выберите существующий Lakehouse из указанной рабочей области.
    4. Выберите существующую таблицу Delta или создайте новую для получения данных.
    5. Выберите формат входных данных, который отправляется в "lakehouse". Поддерживаемые форматы данных : JSON, Avro и CSV.

    Снимок экрана: верхняя часть экрана конфигурации Lakehouse.

  4. Выберите Дополнительно.

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

    • Минимальные строки данных — это минимальное количество строк, которые озеро данных загружает в одном файле. Минимальное значение — 1 строка, а максимальное — 2 миллиона строк на файл. Чем меньше минимальное число строк, тем больше файлов lakehouse создает во время загрузки.

    • Максимальная длительность — это максимальное время, которое lakehouse тратит на прием одного файла. Минимальное значение составляет 1 минуту, а максимальное — 2 часа. Чем больше продолжительность, тем больше строк попадают в файл.

    Снимок экрана: раздел

  6. Выберите Сохранить.

  7. Чтобы внедрить недавно добавленное назначение для lakehouse, выберите Опубликовать.

    Снимок экрана: место назначения stream и lakehouse в режиме редактирования с выделенной кнопкой

После выполнения этих шагов целевое хранилище Lakehouse доступно для визуализации в режиме Live View. На панели сведений можно выбрать ярлык "Оптимизация таблицы" в ноутбуке, чтобы запустить задание Apache Spark в ноутбуке, которое объединяет небольшие потоковые файлы в целевой таблице Lakehouse.

Скриншот места назначения Lakehouse и кнопки оптимизации таблицы в реальном времени.

Примечание.

При настройке потока событий источник, логика преобразования и назначение обычно добавляются вместе. По умолчанию при публикации потока событий серверные службы для приема данных и маршрутизации данных начинаются с Теперь соответственно. Однако прием данных может начинаться быстрее, чем маршрутизация данных, что приводит к приему некоторых данных в eventstream до полной инициализации маршрутизации. В результате эти данные могут не направляться в место назначения.

Чтобы устранить эту проблему, выполните следующие действия.

  1. При настройке назначения Eventhouse (обработка событий перед приемом) или назначения Lakehouse снимите флажок Активировать прием после добавления источника данных.

    Снимок экрана базы данных KQL без выбора активации сбора данных после добавления источника данных.

  2. Активируйте прием вручную после публикации Eventstream.

  3. Используйте параметр пользовательского времени, чтобы выбрать более раннюю метку времени, обеспечивая правильную обработку и маршрутизацию исходных данных.

Снимок экрана: возобновление назначения Lakehouse. Дополнительные сведения см. в статье Приостановка и возобновление потоков данных

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