Согласно документации, мы можем выбрать столбец для кластеризации на основе количества элементов (различные значения столбца) и столбца, используемого в условии соединения. Вот вывод информации о кластеризации для одной из таблиц в запрос select, выполнение которого занимает более 80% от общего времени выполнения (просто для сканирования таблицы). К вашему сведению, я собрал ниже вывод для таблицы на основе столбца, используемого в условии соединения.
Основываясь на o / p, относящемся к моему пониманию. Ниже приведены точки, которые заставляют меня чувствовать, что кластеризация таблицы на основе столбца в теме поможет в увеличении производительности. отношение total_partition_count 20955 к average_depth: 16142.2524
1. Исправьте меня, если я неправильно понимаю. (на основе приведенных ниже фактов, является ли эта таблица хорошим кандидатом для кластеризации или нет)?
Пожалуйста, также помогите с другими пунктами ниже
2. Если я выберу кластеризацию таблицы, потребуется ли какое-либо время простоя (или) добавит ли кластеризация моего счета?
3. Влияет ли эта кластеризация на будущие операции DML?
4. Я вижу, что запрос выбора возвращает 23 строки после сканирования 37 ГБ данных, что было бы лучшим решением для повышения производительности запроса, кроме выбора кластеризации в качестве опции.
Дайте мне знать, если потребуется
select SYSTEM$CLUSTERING_INFORMATION('tablename','(columnname)');
{
"cluster_by_keys" : "LINEAR(column used in join condition)",
"total_partition_count" : 20955,
"total_constant_partition_count" : 2702,
"average_overlaps" : 17151.4681,
"average_depth" : 16142.2524,
"partition_depth_histogram" : {
"00000" : 0,
"00001" : 1933,
"00002" : 0,
"00003" : 0,
"00004" : 0,
"00005" : 0,
"00006" : 0,
"00007" : 0,
"00008" : 0,
"00009" : 0,
"00010" : 0,
"00011" : 0,
"00012" : 0,
"00013" : 0,
"00014" : 0,
"00015" : 0,
"00016" : 0,
"08192" : 2,
"16384" : 3,
"32768" : 19017
}
}