|
Логика работы кэша
|
|||
---|---|---|---|
#18+
Здравствуйте. Провёл такой тест . Простая таблица два int, один small и char10 Процедура в цикле 29 миллионов раз в неё добавляет запись. Смотрю мониторинг ресурсов. Идёт стабильная запись в районе 30 метров в секунду. В итоге где то гиг получается. В общем стабильная запись на диск вроде как без перебоев . Хотя добавляет фб эти записи за примерно 2 мин 40 секунд. Много или мало не знаю. Делать было нечего. Навострил на дельфи свой стандартный кэш. Воспроизвёл инсерт в эти страницы и сброс кэша. У меня получилось так. Пока кэш не заполнился - прога молотит свое- распихивает данные по страницам. Кэш заполнился. Сбрасывается на диск и вроде как и из кэша убираются страницы. Сброс 2к страниц по 8к занимает судя по замеру 0.002 секунды. Те по сути у меня получилось рывками. Заполнение кэша- сброс-очистка-заполнение. Собственно а как в фб это происходит? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2019, 13:44 |
|
Логика работы кэша
|
|||
---|---|---|---|
#18+
sergqСобственно а как в фб это происходит? А в FB это происходит по коммиту транзакции. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2019, 13:48 |
|
Логика работы кэша
|
|||
---|---|---|---|
#18+
sergqНавострил на дельфи свой стандартный кэш. Воспроизвёл инсерт в эти страницы и сброс кэша. не знаю что ты там делал и какой кеш имеешь ввиду. Но имитация работы кеша FB у тебя явно не правильная. В Firebird есть предварительное выделение места под страницы, оно происходит довольно большими порциями. Кеш сбрасывается вроде как когда страница помечается как полная (а не кеш), но там ещё надо соблюдать Cureful Write а потому хитрее. Ещё в SS помогает Cache Writer. Плюс ещё есть принудительный сброс по коммиту, то что не успело сброситься. В трёшке ещё и дополнительные плюшки с экстентами, но оно связано не со сбросом кеша, а с выделением страниц непрерывными группами ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2019, 13:54 |
|
Логика работы кэша
|
|||
---|---|---|---|
#18+
суперсервер кеш (грязные страницы) пишет на диск в фоновом потоке, может из-за этого и наблюдается эффект "непрерывности" ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2019, 20:06 |
|
Логика работы кэша
|
|||
---|---|---|---|
#18+
Даже если cache writer не пишет, то страницы всё равно идут на диск по мере вытеснения их из кеша. Не скопом, конечно же, а по мере необходимости. По коммиту пишется то, что осталось грязным в кеше. Насчёт "записи" 2к страниц по 8к за 2 мс - ну нужно же иногда и посчитать и сопоставить числа-то. 16МБ за 2мс - это почти 8ГБ/с, уверен, что это была запись на диск ? Ну и надо ещё понимать, что от режима открытия файла и от способа работы с ним тоже зависит многое. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2019, 21:20 |
|
|
start [/forum/topic.php?fid=40&msg=39762355&tid=1560832]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
112ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 217ms |
0 / 0 |