У меня есть ADF, который ежедневно записывает выходные данные функции Kusto в таблицу Kusto. Мне нужно ежедневно вносить данные в таблицу. Я не нашел способа обновить существующие данные в Kusto DB. Есть ли способ вставить строку, если данные не существуют с зерном, иначе обновить существующую строку через ADF?
Установить или заменить будет очень дорого для меня, так как таблица состоит из огромного набора данных
Если это невозможно, могу ли я обрезать данные за последние 2 месяца, используя имеющуюся у меня отметку даты и времени, и перезагрузить ее из функции
ADX/Kusto is built for analytics, rather than OLTP, scenarios. Therefore, its design trade-offs favor very fast bulk Create (supporting high rates of inserts/appends of new records) and very fast bulk Read (supporting queries over large amounts of data). ADX/Kusto's support for Delete scenarios focuses on bulk-delete (mainly for retention period), and per-record deletion is not supported. Likewise, Updates of existing records is not supported in ADX/Kusto.
Существует несколько методов работы с «дубликатами» данных, которые могут позволить вам просто принимать новые записи, не выполняя то, что вы называете upsert
(что не поддерживается ADX/Kusto, как объяснялось выше): https://docs.microsoft.com/en-us/azure/data-explorer/dealing-with-duplicates
Другой вариант, который вы можете рассмотреть, — это массовая замена данных — путем пометки и замены осколков данных (extents
) с помощью команд управления на уровне экстента: