Просто быстро один:Mysql ASCII Unicode против
подберет ... WHERE имя LIKE '...' запрос будет быстрее, если имя столбца ASCII, а затем UTF-8?
Спасибо!
Просто быстро один:Mysql ASCII Unicode против
подберет ... WHERE имя LIKE '...' запрос будет быстрее, если имя столбца ASCII, а затем UTF-8?
Спасибо!
Нет, не совсем. Нет причин, по которым это должно быть во всяком случае, они оба будут сравнивать почти ту же сумму, если не точно такую же сумму, данных.
Может быть немного незначительные накладные расходы для преобразования текстовых кодировок, но это не будет ничего рядом с накладными расходами на фактический запуск запроса.
Я провел несколько тестов времени для набора символов MySQL 5. Кодировка символов столбца влияет на скорость: если столбец UTF8, то он на 60% дольше обрабатывает текст, чем если бы он был ASCII или Latin1 , Это верно, возвращаются ли результаты в том же наборе символов, что и столбец, или преобразуется, и он не зависит от набора символов запроса. Только набор символов столбца имеет значение!
НО, прежде чем вы уйдете и преобразуете все в ASCII, поймите, что этот 60% -ный удар относится только к части обработки текста в базе данных, а в целом операции доступа к строке и индексирования занимают в несколько раз эту крошечную разницу. Например, на современном, но дешевом сервере Linux, я измерил разницу как стоимость всего 16 мс на мегабайт текста.
Во всех, кроме самых критических ситуациях, это крошечное различие хорошо стоит для достижения согласованного рабочего процесса UTF-8.
Спасибо, это то, что я, хотя. – David