У меня точно такая же таблица в 2 разных кластерах ADX / Kusto - данные / схема идентичны, но если я вычислю ExtentSize для 1 дня данных, разница между ними будет огромной. В то время как таблица на кластере имеет 10 ТБ, таблица на другой имеет 15 ТБ. Это большая разница. Когда я проверил политики кодирования в обеих таблицах, была небольшая разница. Таблица в первом кластере имеет следующую политику кодирования: -
"ColumnIndexRangeGranularity": 0,
"ShardFieldCompressionCodec": "DEFAULT",
В то время как таблица в другом кластере имеет следующее: -
"ColumnIndexRangeGranularity": 32,
"ShardFieldCompressionCodec": "LZ4",
Моя цель - уменьшить размер другая таблица того же размера, что и первая таблица, поэтому я могу сделать это с меньшим количеством политик кэша. Поэтому в идеале я хотел бы изменить эти два параметра. Но когда я запускаю следующую команду, она не влияет на политику кодирования таблицы: -
.alter table MyTable policy encoding @'{ "ShardFieldCompressionCodec": "Default" }'
Также нет ошибки.
Итак, у меня два вопроса.
- Игнорирует ли ADX всякий раз, когда мы пытаемся изменить политику кодирования таблицы? Эти политики кодирования мы не указали явно, когда таблица создавалась, они назначались кластерами по умолчанию.
- Означает ли это, что если у нас одна и та же таблица в 2 разных кластерах с одной и той же схемой / таблицей - их размер экстента всегда будет меняться (поскольку сжатие базовой таблицы различно)?