1 / 13

Построение модели подсистемы кэширования СХД AVRORA

Построение модели подсистемы кэширования СХД AVRORA. Зольников Павел pasha.zolnikov@gmail.com Кривых Алексей krivykhalexey@gmail.com Самунь Виктор victor.samun@gmail.com IT Summer SPb 2012 18 июля 2012. Реальная система. Инициатор Подсистема кэширования Кэш память Логика

Download Presentation

Построение модели подсистемы кэширования СХД AVRORA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Построение модели подсистемы кэширования СХД AVRORA Зольников Павел pasha.zolnikov@gmail.com Кривых Алексей krivykhalexey@gmail.com Самунь Викторvictor.samun@gmail.com IT Summer SPb 2012 18 июля 2012

  2. Реальная система • Инициатор • Подсистема кэширования • Кэш память • Логика • Массив дисков

  3. Напоминания • “Чистый” сегмент – сегмент, содержащий копию данных на диске • “Грязный” сегмент – сегмент, содержащий данные новее, чем на диске • Используемый сегмент – если идет запись/чтение из этого сегмента

  4. Напоминания • Read ahead(упреждающее чтение) – стратегия кэширования, при которой вместе с запрашиваемыми данными считываются соседние с ними данные • Write back (отложенная запись) – стратегия кэширования, при которой данные не передаются сразу от инициатора на диск, а помещаются в кэш и лежат там некоторое время, пока не будут записаны на диск

  5. Работа подсистемы: чтение • Поиск запрашиваемых данных в кэше • Если данные найдены, передача их инициатору • Если данные не найдены, поиск их на диске • Копирование данных в кэш • Передача данных из кэша инициатору

  6. Работа подсистемы: read ahead • Система распознает, что идет последовательное чтение • Минимальное количество последовательно считываемых страйпов • Считывание некоторого количества страйпов наперед • Тоже параметр системы • Ограничения сверху и снизу

  7. Работа подсистемы: запись • Всегда write back • “Грязные” данные сливаются на диск: • При достижении порога заполнения • По таймеру (10 раз в секунду) • Когда система на может выделить сегмент под запрос инициатора

  8. Трасса • ENT=0STR=1328614447.573684TRN=9442EXP=9504INI=localhostTGT=LocalNRtargetRAID=BAK LUN=LAKLNUM=0CDB=28000000040000040000000000000000LLBA=1024PLBA=1024LEN=1024RT=1STAT=0SKEY=0SCOD=0DRTC=0NRAC=0RAP=0WBP=0

  9. Параметры запроса • STR – время прихода запроса • EXP – время от прихода запроса до окончания его выполнения и уничтожения • TRN – время от прихода запроса до начала передачи данных между системой и инициатором

  10. Что есть EXP? • Главный вопрос: входит ли время стояния запроса в очереди в EXP? • Пусть так. Сравним STR(last) + EXP(last) – STR(first) ≈ 446 мсекс ≈ 9,8 сек. Гипотеза провалилась. • Пусть наоборот. Тогда сосчитаем время непрерывной работы. ≈ 228 мсек

  11. Время непрерывной работы Запрос 1 Запрос 2 Запрос 1 Запрос 2 Запрос 1 Запрос 2

  12. Параллельная работа системы • Запросы могут обрабатываться параллельно, если запрашиваемые в них данные не пересекаются • STR(last) + EXP(last) – STR(first) уже не актуально • Время непрерывной работы также надо считать по-другому • Но можно оценить время простоя системы Оно не больше чем время простоя системы, запросы которой обрабатываются последовательно

  13. Время работы дисков • Скорость передачи данных - 150 Мб/сек • Время позиционирования головки – 10-20 мсек • Оно вносит большой вклад в общее время работы • Но зависит от схемы обращения к данным(последовательное или произвольное чтение) • Требуются дополнительные эксперименты

More Related