Длина поля DB2 Varchar - PullRequest
       18

Длина поля DB2 Varchar

3 голосов
/ 27 февраля 2012

Я не уверен, стоит ли выбирать длину varchar 255 или 256 для поля varchar в DB2.

Какой будет хороший размер для производительности? Из моего поиска в Google это выглядит как 255 лучше, потому что он равен 1 байту. Какой правильный? Требует ли varchar (255) 1 байт или varchar (256) требует 1 байт.

1 Ответ

6 голосов
/ 27 февраля 2012

Лично я думаю, что чтение одного или двух байтов для столбца переменной длины не окажет большого влияния. Тот факт, что эта длина будет использоваться для анализа количества символов, читаемых в строке, более наказуемо (две операции, одна для количества и одна для данных).

Можно подумать, что один дополнительный байт, например, в таблице с одним миллионом записей, занимает много ненужного дискового пространства, но с активированной функцией сжатия это на самом деле не касается ни хранилища (IO), ни обработки (CPU) ).

Кстати: 255 = 11111111 (один байт) 256 = 100000000 (два байта)

Единственная рекомендация - использовать varchar для столбцов, содержащих более 30 символов, в противном случае лучше всего использовать столбец CHAR фиксированной длины, потому что издержки на чтение длины плюс данные - это много, сравнивая количество данных с читать, когда мало символов. (http://www.ibm.com/developerworks/data/library/techarticle/dm-0404mcarthur/)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...