Почему в Microsoft SQL Server лог-файл важнее файла данных

Для того, чтобы при изменении данных запросом, эти изменения сохранились бы “навсегда”, как того требуют принципы транзакционной целостности (ACID), любые изменения должны быть сохранены на долговременный физический носитель еще до того, как инициатор запроса получит подтверждение о выполнении запроса (завершении транзакции).
То есть кэширование записи недопустимо – иначе в случае сбоя системы мы получим как минимум базу данных, в которой нет сделанных изменений, а скорее всего – и вовсе несогласованные внутренние структуры.
С другой стороны, если ваш SQL Server установлен на “Desktop” с Windows7, XP или в системе установлены недорогие “бытовые” диски, то кэширование возможно будет включено и без поддерживания кэша батарейкой. Поэтому часто обычные компьютеры в роли сервера к удивлению администратора работают быстрее, чем на первый взгляд более мощные «настоящие» серверные компьютеры. Но эта разница в производительности достигается за счет снижения надежности – “вовремя” нажатая кнопка Reset или скачек напряжения могут разрушить базы данных.

 

Перевожу на понятный язык- для производительности sql сервера критически важна скорость записи лога. Вот он серьезный тормоз производительности, вот он важнейший резерв ее увеличения. 

Статья особо нового ничего не открыла, но все очень логично и лаконично изложено

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *