Маппинг типов данных
В инструменте Конвертум реализована возможность одновременно изменять тип столбца для конкретных таблиц или всех таблиц сразу, а также переменных и параметров базы данных.
Рассмотрим несколько случаев, когда такая возможность может быть наиболее эффективна.
Например, тип smallint (двухбайтовое целое число со знаком) в PostgreSQL используется, когда требуется точное приведение чисел или когда другой целочисленной переменной присваивается значение smallint. Если вы замените все переменные smallint на целочисленные, то эта проблема исчезнет, и это не приведет к несовместимости типов.
Вы также можете использовать маппинг типов данных, если нужно увеличить размер поля счетчика. Например, в столбце разрешено хранить 10-значное число, но необходимо увеличить его до 12 или выше. Это можно сделать и в исходной базе данных, но иногда таблицы содержат огромные объемы данных или используются без возможности длительного простоя для изменения типа столбца. В этом случае миграция — отличная возможность заменить типы на корректные.
Также это может быть полезно для повышения производительности в тех случаях, когда таблицы объединяются в запросе с использованием столбцов разных (но совместимых) типов.
SELECT ...
FROM table1 t1
JOIN table2 t2 on t1.numeric_field = t2.bigint_field ...
Это поле можно использовать в различных запросах и сравнивать с полями других типов. Вам нужно выбрать параметр с более высоким приоритетом для типа столбца. Это изменение требует тщательного анализа всего кода, но может быть полезно для оптимизации критически важных запросов.
Другие материалы по теме:
Советы и рекомендации
Если у вас есть вопросы, пожалуйста, обращайтесь в нашу службу поддержки: support@convertum.ru
