Запрос данных, как он существовал в прошлом
Область применения:✅ хранилище в Microsoft Fabric
Хранилище в Microsoft Fabric предоставляет возможность запрашивать исторические данные по мере его существования в прошлом. Возможность запрашивать данные из определенной метки времени известна в отрасли хранения данных как путешествия по времени.
- Перемещение времени упрощает стабильные отчеты, сохраняя согласованность и точность данных с течением времени.
- Путешествие по времени позволяет анализировать исторические тенденции, запрашивая различные прошлые точки во времени, и помогает прогнозировать будущие тенденции.
- Перемещение по времени упрощает сравнение с низкими затратами между предыдущими версиями данных.
- Путешествия по времени помогают анализировать производительность с течением времени.
- Перемещение по времени позволяет организациям выполнять аудит изменений данных с течением времени, часто необходимых для обеспечения соответствия требованиям.
- Путешествие по времени помогает воспроизвести результаты из моделей машинного обучения.
- Перемещение по времени может запрашивать таблицы по мере их существования в определенный момент времени в нескольких хранилищах в одной рабочей области.
Что такое путешествие по времени?
Перемещение по времени в хранилище данных — это низкая стоимость и эффективная возможность быстро запрашивать предыдущие версии данных.
В настоящее время Microsoft Fabric позволяет получить прошлые состояния данных следующим образом:
Перемещение по времени с помощью команды FOR TIMESTAMP AS OF T-SQL
В элементе хранилища таблицы можно запрашивать с помощью синтаксиса OPTION FOR TIMESTAMP AS OF T-SQL для получения данных в прошлые моменты времени. Предложение FOR TIMESTAMP AS OF
влияет на всю инструкцию, включая все присоединенные таблицы хранилища.
Результаты, полученные из запросов на поездки во время, по сути, доступны только для чтения. Операции записи, такие как INSERT, UPDATE и DELETE , не могут возникать при использовании указания ЗАПРОСА FOR TIMESTAMP AS OF.
Используйте предложение OPTION, чтобы указать указание ЗАПРОСА FOR TIMESTAMP AS OF. Запросы возвращают данные точно так же, как он существовал в метке времени, указанной как YYYY-MM-DDTHH:MM:SS[.fff]
. Например:
SELECT *
FROM [dbo].[dimension_customer] AS DC
OPTION (FOR TIMESTAMP AS OF '2024-03-13T19:39:35.28'); --March 13, 2024 at 7:39:35.28 PM UTC
CONVERT
Используйте синтаксис для необходимого формата datetime с стилем 126.
Метка времени может быть указана только один раз с помощью OPTION
предложения для запросов, хранимых процедур, представлений и т. д. Применяется OPTION
ко всему в инструкции SELECT .
Примеры см. в разделе "Практическое руководство. Запрос с помощью перемещения по времени".
Хранение данных
В Microsoft Fabric хранилище автоматически сохраняет и поддерживает различные версии данных до срока хранения по умолчанию в тридцати календарных дней. Это позволяет запрашивать таблицы как любой предыдущий момент времени. Все вставки, обновления и удаления, сделанные в хранилище данных, сохраняются. Срок хранения автоматически начинается с момента создания хранилища. Просроченные файлы автоматически удаляются после порогового значения хранения.
- В настоящее время
SELECT
инструкция сFOR TIMESTAMP AS OF
указанием запроса возвращает последнюю версию схемы таблицы. - Все записи, удаленные в таблице, доступны для запроса по мере их существования перед удалением, если удаление находится в течение срока хранения.
- Любые изменения, внесенные в схему таблицы, включая, но не ограничиваются добавлением или удалением столбцов из таблицы, не могут быть запрошены перед изменением схемы. Аналогичным образом удаление и повторное создание таблицы с теми же данными удаляет журнал.
Сценарии перемещения по времени
Рассмотрим возможность перемещения по времени до предыдущих данных в следующих сценариях:
Стабильные отчеты
Частое выполнение заданий извлечения, преобразования и загрузки (ETL) важно для постоянно изменяющегося ландшафта данных. Возможность перемещения по времени поддерживает эту цель путем обеспечения целостности данных, обеспечивая гибкость создания отчетов на основе результатов запроса, возвращаемых за прошлый момент времени, таких как предыдущий вечер, в то время как фоновая обработка продолжается.
Действия ETL могут выполняться одновременно, а та же таблица запрашивается по состоянию на предыдущий момент времени.
Исторический тренд и прогнозный анализ
Путешествие по времени упрощает анализ исторических данных, помогая выявить ценные тенденции и закономерности путем запроса данных в различных прошлых временных кадрах. Это упрощает прогнозный анализ, позволяя экспериментировать с историческими наборами данных и обучением прогнозных моделей. Он помогает ожидать будущих тенденций и помогает принимать хорошо информированные решения, управляемые данными.
Анализ и сравнение
Путешествие по времени обеспечивает эффективную и эффективную возможность устранения неполадок, предоставляя историческую объективу для анализа и сравнения, помогая выявить первопричину.
Анализ производительности
Перемещение по времени может помочь проанализировать производительность запросов хранилища сверхурочно. Это помогает определить тенденции снижения производительности на основе которых можно оптимизировать запросы.
Аудит и соответствие
Временные поездки упрощают аудит и соблюдение процедур, позволяя аудиторам перемещаться по журналу данных. Это не только помогает оставаться в соответствии с правилами, но и помогает повысить надежность и прозрачность.
Модели машинного обучения
Возможности перемещения по времени помогают воспроизвести результаты моделей машинного обучения путем упрощения анализа исторических данных и имитации реальных сценариев. Это повышает общую надежность моделей, чтобы можно было принимать точные решения, управляемые данными.
Рекомендации по проектированию
Рекомендации по указанию ЗАПРОСА OPTION FOR TIMESTAMP AS OF:
- Указание
FOR TIMESTAMP AS OF
запроса не может использоваться для создания представлений в течение любого предыдущего момента в течение периода хранения. Его можно использовать для запроса представлений по состоянию на прошлый момент времени в течение периода хранения. - Указание
FOR TIMESTAMP AS OF
запроса может использоваться только один раз в инструкцииSELECT
. - Указание
FOR TIMESTAMP AS OF
запроса можно определить вSELECT
инструкции в хранимой процедуре.
Разрешения на перемещение по времени
Любой пользователь, имеющий роли администратора, участника, участника или средства просмотра, может запрашивать таблицы по истечении предыдущей точки во времени. Когда пользователи запрашивают таблицы, ограничения, введенные безопасностью на уровне столбцов (CLS), безопасность на уровне строк (RLS) или динамическое маскирование данных (DDM) автоматически применяются.
Ограничения
Укажите не более трех цифр дробных секунд в метке времени. Если вы предоставляете большую точность, вы получите сообщение
An error occurred during timestamp conversion. Please provide a timestamp in the format yyyy-MM-ddTHH:mm:ss[.fff]. Msg 22440, Level 16, State 1, Code line 29
об ошибке.В настоящее время для перемещения по времени используется только часовой пояс UTC.
В настоящее время срок хранения данных для запросов на поездки по времени составляет тридцати календарных дней.
FOR TIMESTAMP AS OF
значения в предложенииOPTION
должны быть детерминированными. Пример параметризации см. в разделе "Время перемещения" в хранимой процедуре.Перемещение по времени не поддерживается для конечной точки аналитики SQL в Lakehouse.
Синтаксис
OPTION FOR TIMESTAMP AS OF
можно использовать только в запросах, начинающихся сSELECT
инструкции. Такие запросы, какINSERT INTO SELECT
иCREATE TABLE AS SELECT
не могут использоваться вместе сOPTION FOR TIMESTAMP AS OF
ним. Вместо этого можно клонировать таблицу хранилища в определенный момент времени.Определения представления не могут содержать
OPTION FOR TIMESTAMP AS OF
синтаксис. Представление можно запросить с помощью синтаксисаSELECT .. FROM <view> ... OPTION FOR TIMESTAMP AS OF
. Однако вы не можете запрашивать прошлые данные из таблиц в представлении до создания представления.FOR TIMESTAMP AS OF
Синтаксис для перемещения по времени в настоящее время не поддерживается в режиме прямого запроса Power BI Desktop или в параметре "Изучение этих данных ".