В PosgreSql недоделанные кластерные индексы - они фрагментируются и перестают быть кластерными по мере использования, чтобы вернуть кластерность приходится запускать вакуум
Кластерность запускается вакуумом??? Покажите, пожалуйста, ссылку на доку. ЕМНИП, кластеризация -- это операция, которую можно запустить по конкретному индексу. Тогда строки в таблице перестроятся по порядку этого индекса. Но эту операцию в постгресе делать и не надо, ведь используется heap.
что-то вы путаете, фрагментация индекса - это отличие в порядке хранения страниц индекса от порядка его значений. никакую "кластерность" это не может нарушить в принципе, это просто приводит к лишним чтениям из разных мест диска, но при этом ссылки между его страницами все равно будут соответствовать порядку ключа. к фрагментации приводят изменения и вставки в таблицу, которые меняют порядок и приводят к механизмам расщепления страниц при их переполнении - создается новая страница в свободном пространстве диска, а на старой странице прописывается ссылка на новую. в результате у вас старая страница хранится в одном месте дискового пространства, а новая - через какое-то количество данных на удалении от нее. подробнее погуглите операции вставки в B-tree
Доклад супер, раздам свим для просмотра. Спасибо
Интересно как мигрируют процедуры, особенно с try..catch + transaction
В постгресе нет tinyint и bit. А boolean менее удобен и занимает больше места, чем bit
супер!
Боже, сколько народу в зале :D
Аж тянет на кнопку назад)
18:00 Нормализованные колонки из-за кривой реализации оператора LIKE, вы серьезно?))) Ужас какой...
В PosgreSql недоделанные кластерные индексы - они фрагментируются и перестают быть кластерными по мере использования, чтобы вернуть кластерность приходится запускать вакуум
Кластерность запускается вакуумом??? Покажите, пожалуйста, ссылку на доку.
ЕМНИП, кластеризация -- это операция, которую можно запустить по конкретному индексу. Тогда строки в таблице перестроятся по порядку этого индекса.
Но эту операцию в постгресе делать и не надо, ведь используется heap.
что-то вы путаете, фрагментация индекса - это отличие в порядке хранения страниц индекса от порядка его значений. никакую "кластерность" это не может нарушить в принципе, это просто приводит к лишним чтениям из разных мест диска, но при этом ссылки между его страницами все равно будут соответствовать порядку ключа. к фрагментации приводят изменения и вставки в таблицу, которые меняют порядок и приводят к механизмам расщепления страниц при их переполнении - создается новая страница в свободном пространстве диска, а на старой странице прописывается ссылка на новую. в результате у вас старая страница хранится в одном месте дискового пространства, а новая - через какое-то количество данных на удалении от нее. подробнее погуглите операции вставки в B-tree
Такое впечатление, что докладчик читает текст с ноутбука, а не рассказывает. Звучит из-за этого хуже. Но сам доклад хороший.