Можно ли обновить строки в Azure Data Explorer (Kusto) - PullRequest
1 голос
/ 23 января 2020
  1. Можно ли обновить строки в Azure Обозреватель данных?

  2. Является ли это хорошим выбором для хранения больших запасов (100 млн. Единиц), которые часто обновляются или в большинстве случаев оптимизированы для сценария данных только для добавления ios? Мой репозиторий обновляется круглосуточно, и мне нужно, чтобы изменения были видны немедленно (почти в реальном времени).

  3. Предполагается, что мне нужен полнотекстовый поиск, фасетирование и базовые c запросы / поиск элементов и почти в режиме реального времени обновления (которые поступают круглосуточно). как это сравнить с ElasticSearch? Предполагая, что я использую оба как управляемый сервис. Меня больше всего беспокоит часть обновлений.

Ответы [ 2 ]

1 голос
/ 10 февраля 2020

Если мы говорим о маленькой таблице, вы можете обновить записи в Kusto, используя эту технику:

.ingest inline into table temp_ABC <|
01,John,Doe,21
02,Jim,Brown,23

.set-or-replace ABC <| temp_ABC

.drop table temp_ABC
1 голос
/ 23 января 2020
  1. Обновление отдельных записей невозможно. У вас есть возможность обновлять данные в пакетном режиме, помечая их во время приема и используя команды уровня шарда (такие как .replace extents ), когда вам нужно выполнить ' update '.

  2. Хотя это, возможно, не «естественный» выбор, теоретически вы все равно можете этого добиться, приняв новую запись для каждого обновления и используя arg_max () , чтобы всегда получать последнюю версию для каждого элемента.

    • Предусмотрена новая функция Materialized Views, которая может (пока она не станет доступна, вы можете периодически организовывать эту материализацию, используя любой планировщик, который принимает из запрос )
  3. Полное и содержательное сравнение не является однострочным (слишком много соображений для перечисления), а в большинстве случаев - результатом такое сравнение будет очень точно c для вашего варианта использования, бюджета, личных предпочтений, требований к производительности и т. д. c. При этом все перечисленные функции поддерживаются ADX / Kusto.

...