Подскажите такой момент, в основной таблице имеются давольно много полей с типом tinyInt, которые по большей части отвечают за хранение boolean. Ни выборки ни фильтрации по данным полям не происходит при работе с данными (используются только при непосредственной работе со строкой).
На сколько будет эффективно (в плане размера БД) и вообще разумно ли хранить все эти поля tinyInt в одном поле text в JSON формате. Раз я не использую эти данные в запросах и т.п.?
Как узнать что будет меньше весить одно заполнение text поле либо 20 tinyInt(1). Записей уже практически под 1 млн.
Для правильного вопроса надо знать половину ответа
Если никакой выборки (WHERE, JOIN, GROUP BY и т.д.) по этим полям не проводится, то компактнее всего хранить логические значения в виде SET. В этом случае 64 значения займут 8 байт, 20 значений - 4 байта.