Дополнительные параметры конфигурации в Azure Synapse Link
Azure Synapse Link содержит несколько способов записи и чтения ваших данных для соответствия различным аналитическим сценариям.
Примечание
Azure Synapse Link for Dataverse ранее называлось "Экспорт в озеро данных". Служба была переименована в мае 2021 года и будет продолжать экспортировать данные в Azure Data Lake, а также в Azure Synapse Analytics.
В этой статье рассматриваются следующие вопросы:
- Обновления на месте в сравнении с записями "только добавление".
- Секционирование данных, заданных пользователем.
Обновления на месте в сравнении с записями "только добавление"
Во время записи данных таблицы Dataverse в Azure Data Lake на основе значения createdOn
, которое является датой и временем создания записи, можно выбрать один из двух различных параметров. Это Обновление на месте и Только добавление.
Настройка по умолчанию (для таблиц, где значение createdOn
доступно) заключается в обновлении на месте или операции upsert (обновлении или вставке) инкрементных данных в место назначения. Если изменение является новым и соответствующей строки в озере не существует, в случае создания целевые файлы сканируются, и изменения вставляются в соответствующий файловый раздел в озере. Если изменение является обновлением и в озере существует строка, соответствующий файл в озере обновляется, а не производится вставка, с инкрементными данными. Другими словами, настройка по умолчанию для всех изменений CUD (создание, обновление, удаление) в таблицах Dataverse, где доступно значение createdOn
, состоит в том, чтобы выполнить обновление на месте в месте назначения в Azure Data Lake.
Вы можете переключить поведение по умолчанию для обновления на месте, используя необязательный параметр, называемый Только добавление. В отличие от режима Обновление на месте, в режиме Только добавление инкрементальные данные и таблицы Dataverse добавляются к соответствующему разделу файла в озере. Это настройка для каждой таблицы и доступна в виде флажка в разделе Дополнительно > Показать дополнительные параметры конфигурации. Для таблиц Dataverse с включенным параметром Только добавление все изменения CUD инкрементно добавляются к соответствующим файлам назначения в озере. При выборе этого параметра стратегия разделения на разделы по умолчанию будет Год, и когда данные записываются в озеро данных, они разбиваются по годам. Только добавление также является настройкой по умолчанию для таблиц Dataverse, в которых нет значения createdOn
.
В таблице ниже описывается, как строки обрабатываются в озере относительно событий CUD для каждого из вариантов записи данных.
Мероприятие | Обновление на месте | Только добавление |
---|---|---|
Создание | Строка вставляется в файл раздела и основана на значении createdOn в строке. |
Строка добавляется в конец файла раздела и основана на значении createdOn записи. |
Обновить | Если строка существует в файле раздела, она заменяется или обновляется обновленными данными. Если она не существует, она вставляется в файл. | Строка вместе с обновленной версией добавляется в конец файла раздела. |
DELETE | Если строка существует в файле раздела, она удаляется из файла. | Строка добавляется в конец файла раздела с IsDelete column = True . |
Примечание
Для таблиц Dataverse, в которых включен режим Только добавление, удаление строки в источнике не приведет к удалению или устранению строки в озере. Вместо этого удаленная строка добавляется как новая строка в озере и в столбце isDeleted
устанавливается значение True.
«Грязное» чтение (ALLOW_INCONSISTENT_READS) для бессерверных вычислений включено для режима «только добавление». ALLOW_INCONSISTENT_READSозначает, что пользователь может считывать файлы, которые могут постоянно изменяться во время выполнения запроса SELECT
. Результаты будут согласованными и эквивалентными чтению моментального снимка файла. (Это не эквивалентно изоляции моментального снимка базы данных из-за другого времени создания моментального снимка.)
Не все изменения CUD будут фиксироваться в только добавление: Synapse Link обрабатывает изменения в данных в группах или «пакетах» перед их публикацией в озере данных. В результате, если пользователь вносит изменения в течение короткого промежутка времени, не все изменения CUD будут зафиксированы в озере данных.
Вот еще несколько подробностей о том, когда использовать каждый из вариантов.
- Обновление на месте: этот параметр является настройкой по умолчанию и рекомендуется, только если вы хотите напрямую подключиться к данным в озере и вам нужно текущее состояние (а не история или добавочные изменения). Файл содержит полный набор данных и может быть использован через Power BI или путем копирования всего набора данных для конвейеров ETL (извлечение, передача, загрузка).
- Только добавление: выберите этот параметр, если вы не подключаетесь напрямую к данным в озере и хотите инкрементно копировать данные в другое место назначения с помощью конвейеров ETL. Этот вариант предоставляет историю изменений для включения сценариев ИИ и машинного обучения.
Вы можете переключить параметр Показать дополнительные параметры конфигурации в разделе Дополнительно в Azure Synapse Link for Dataverse, чтобы настроить стратегию разделов данных и выбрать варианты для записи в Azure Data Lake.
Секционирование данных
Когда вы записываете данные таблицы Dataverse в Azure data lake storage с помощью Azure Synapse Link, таблицы секционируются (вместо одного файла) в озере на основе значения createdOn
для каждой строки в источнике. Стратегия секционирования по умолчанию — по месяцам, данные в озере данных Azure секционируются ежемесячно.
На основе объема таблицы Dataverse и распределения данных вы можете разбить данные по годам. С помощью этого варианта, когда данные таблицы Dataverse записываются в озеро данных Azure, оно будет секционироваться ежегодно на основе значения createdOn
в каждой строке в источнике. Для таблиц без столбца createdOn
строки данных секционируются в новый файл каждые пять миллионов записей. Это настройка для каждой таблицы и доступна в виде флажка в разделе Дополнительно > Показать дополнительные параметры конфигурации.
Более подробная информация с примерами того, как данные обрабатываются в озере с ежегодной или ежемесячной стратегией разделения:
См. также
Azure Synapse Link for Dataverse
Примечание
Каковы ваши предпочтения в отношении языка документации? Пройдите краткий опрос (обратите внимание, что этот опрос представлен на английском языке).
Опрос займет около семи минут. Личные данные не собираются (заявление о конфиденциальности).
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по