On Fri, 04 Dec 2009 11:40:02 +0300
Ed <sp...@yandex.ru> wrote:

> a. запись на диск может в любой момент прерваться по аппаратным
> причинам (питание отключили, кабель отошёл, зависание системы, ...).
> b. в качестве борьбы с неконсистентным состоянием данных после сбоя 
> сейчас обычно используются транзакционные механизмы - транзакция
> может быть или полностью сохранена или же будет отменена,
> промежуточные варианты исключены.
> 
> в результате важен порядок записи на диск (можно ещё погуглить "write 
> barriers").
> приходится делать выбор - или быстро ("положить" на целостность
> данных в случае форс-мажора) или надёжно (ждать завершения операций
> записи). разумется по умолчанию везде выбирается "надёжно".
> 
> так вот батарейка позволяет совместить несовместимое - на оперции
> записи контроллер сразу отвечает, что они завершены, а в случае сбоя 
> несохранённые данные остаются в battery-backed write cache и будут 
> записаны на диск при следущем включении компьютера.

узкое место в этом случае переносится в контроллер, который в теории
тоже может взглюкнуть )

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

спасибо за развёрнутый ответ

будем брать :)

 
> ps: "ядерный элеватор" звучит дико. как его по-русски назвать?

вполне нормально звучит )

Attachment: signature.asc
Description: PGP signature

Ответить