Создание почти реального времени, только для чтения реплики базы данных Azure SQL Database в Fabric без влияния на источник.
→Используйте Fabric Mirroring для Azure SQL Database.
Почему: Mirroring обеспечивает репликацию данных с низкой задержкой и непрерывным потоком в OneLake в виде таблиц Delta, идеально подходит для аналитики в реальном времени без разработки ETL.
Совместное использование набора данных с другой рабочей областью или доступ к внешним данным без создания копии.
→Создайте Shortcut, указывающий на исходную таблицу Lakehouse или внешнее расположение данных.
Почему: Shortcuts действуют как символические ссылки, предоставляя единое представление данных в OneLake, избегая дублирования данных, затрат на хранение и проблем с синхронизацией.
Объединение высокоскоростных потоковых данных с историческими пакетными данными для унифицированной аналитики.
→Используйте Eventstream для приема данных в реальном времени и Lakehouse с таблицами Delta Lake для унифицированного хранения.
Почему: Eventstream обрабатывает потоковый путь, а свойства ACID Delta Lake позволяют ему служить целью как для потоковых добавлений, так и для пакетных обновлений.
Обеспечение анализа на основе T-SQL и Data Science на основе Python для одних и тех же данных Lakehouse.
→Используйте автоматически генерируемую конечную точку SQL analytics для Lakehouse.
Почему: Fabric предоставляет двухдвигательный доступ к одним и тем же таблицам Delta: конечная точка SQL для запросов T-SQL и движок Spark для ноутбуков, без дублирования данных.
Прием данных из локального источника данных (например, Oracle, SQL Server) в Fabric.
→Установите и настройте локальный шлюз данных.
Почему: Шлюз действует как безопасный мост, передавая данные между локальной сетью и облачным сервисом Fabric без exposing источника в интернет.
Автоматическая обработка новых файлов сразу после их поступления в Azure Blob Storage.
→Используйте триггер Storage Event для конвейера данных, настроенный на срабатывание по событиям создания BLOB-объектов.
Почему: Триггеры, управляемые событиями, обеспечивают меньшую задержку и более эффективны, чем запланированный опрос, который может пропустить данные или выполняться без необходимости.
Реализация логики Slowly Changing Dimension Type 2 или обработка потоков Change Data Capture (CDC).
→Используйте операцию Delta Lake MERGE с выражениями `WHEN MATCHED` и `WHEN NOT MATCHED`.
Почему: MERGE предоставляет возможности атомарного upsert (обновление/вставка/удаление), что является основной операцией для поддержания исторических записей в шаблонах SCD2.
Преобразование столбца DataFrame, содержащего вложенные массивы объектов, в отдельные строки.
→Примените функцию `explode()` к столбцу массива в PySpark notebook.
Почему: `explode()` — это стандартная функция Spark для разворачивания массивов, создающая новую строку для каждого элемента в массиве.
Обработка поздно поступающих данных в агрегации состояния потока (например, подсчеты по окнам).
→Настройте watermark на столбце времени события в запросе Spark Structured Streaming.
Почему: Watermarking определяет временной порог, в течение которого движок будет ждать поздно поступающие данные, предотвращая бесконечный рост состояния и обеспечивая корректность.
Выполнение инкрементальной загрузки данных из исходной системы, имеющей столбец временной метки, но без CDC.
→Реализуйте шаблон high-watermark. Сохраните максимальную временную метку из последнего запуска и используйте ее для фильтрации источника в следующем запуске.
Почему: Это эффективный и распространенный шаблон для извлечения только новых или обновленных записей без накладных расходов на полное сканирование таблиц или требований формального CDC.
Действие конвейера периодически завершается сбоем из-за временных проблем с сетью или нагрузки на исходную систему.
→Настройте политику повторных попыток для действия с указанным количеством и интервалом экспоненциальной задержки.
Почему: Встраивает устойчивость в конвейер, автоматически повторяя неудачные операции, часто решая временные проблемы без ручного вмешательства.
Прием и запрос больших объемов телеметрических данных или данных журналов с низкой задержкой для исследовательского анализа в реальном времени.
→Примите данные в Eventhouse и запросите их с использованием Kusto Query Language (KQL).
Почему: Eventhouse (построенный на Azure Data Explorer) и KQL специально разработаны для высокопроизводительного анализа временных рядов и журналов.
Создание единого, многократно используемого конвейера для загрузки десятков таблиц, использующих одинаковую логику преобразования.
→Используйте подход, управляемый метаданными. Храните информацию об источнике/назначении в контрольной таблице и используйте действие ForEach для итерации и передачи параметров в общий дочерний конвейер.
Почему: Этот шаблон является высокомасштабируемым и легко поддерживаемым, избегая дублирования и накладных расходов на управление при создании отдельных конвейеров для каждой таблицы.
Оптимизация производительности Dataflow Gen2, который получает данные из реляционной базы данных, такой как SQL Server.
→Разработайте преобразования, которые могут быть свёрнуты (folded). Проверьте статус свёртывания запросов в редакторе Power Query.
Почему: Query folding перемещает логику преобразования в движок исходной базы данных, что значительно более производительно, чем извлечение всех данных в движок Spark для преобразования.
Запрос таблицы в том состоянии, в котором она существовала в определенный момент в прошлом, для аудита или восстановления после случайного обновления.
→Используйте функцию Delta Lake time travel с `VERSION AS OF` или `TIMESTAMP AS OF` в запросе.
Почему: Delta Lake по умолчанию версионирует каждую транзакцию, позволяя выполнять запросы к определенному моменту времени без необходимости ручных снимков или резервных копий.