(Я добавил это как отдельный ответ, потому что он существенно отличается от моего первого.) Хорошо, нашел кое-какую актуальную документацию. В этой статье MS KB говорится о существующих различиях в производительности между различными сопоставлениями, но не там, где вы думаете. Разница между сопоставлениями SQL (обратно совместимыми, но без поддержки Юникода) и сопоставлениями Windows (с поддержкой Юникода):
Как правило, степень разницы в производительности между сопоставлениями Windows и SQL не будет существенной. Разница проявляется только в том случае, если рабочая нагрузка привязана к ЦП, а не ограничена вводом-выводом или скоростью сети, и большая часть этой нагрузки на ЦП вызвана накладными расходами на манипуляции со строками или сравнения, выполняемые в SQL Server.
И SQL, и Windows имеют версии с учетом регистра и без учета регистра, поэтому похоже, что это не главная проблема.
Еще одна хорошая история "из окопов" в отличной статье Дэна под названием "Ад сортировки":
Я унаследовал смешанную среду сортировки с большим количеством сортировок, чем я могу сосчитать по пальцам одной руки. Различные сопоставления требуют обходных путей, чтобы избежать ошибок «невозможно разрешить конфликт сопоставления», и эти обходные пути снижают производительность из-за выражений, не подлежащих анализу. Работа со смешанной сортировкой — это настоящая боль, поэтому я настоятельно рекомендую вам стандартизировать единственную сортировку и отклоняться от нее только после тщательного обдумывания.
Он заключает:
Я лично не думаю, что производительность следует даже учитывать при выборе правильного сопоставления. Одна из причин, по которой я живу в аду сортировки, заключается в том, что мои предшественники выбрали бинарную сортировку, чтобы максимально использовать производительность наших систем OLTP с высокой степенью транзакций. За единственным исключением ведущего поиска по таблице с подстановочными знаками, я не обнаружил заметной разницы в производительности с нашими различными сопоставлениями. Настоящим ключом к производительности является настройка запросов и индексов, а не сопоставление. Если для вас важна производительность, я рекомендую вам выполнить тест производительности с реальными запросами приложения, прежде чем выбирать параметры сортировки на основе ожидаемой производительности.
Надеюсь это поможет.
person
BradC
schedule
17.11.2010