Содержание
-
Принципы построения и работы баз данных Тема 02: Технические средства и их характеристики
Принципы построения БД Тема 2 1
-
Основные вопросы
Принципы построения БД Тема 2 2 Оборудование: Дисковая память Время доступа Пример - Megatron 747 Оптимизация Другие вопросы: Стоимость памяти Использование вторичной памяти Сбои дисков
-
Принципы построения БД Тема 2 3 Оборудование СУБД Хранилище данных
-
Принципы построения БД Тема 2 4 P M C Типичный компьютер Вторичная память ... ...
-
Принципы построения БД Тема 2 5 Процессор Быстрый, медленный, RISC/CISC, со встроенным кэшем, конвейерный,... Speed: 100 500 1000 MIPS Ореративная память Быстрая, медленная, энергонезависимая, только для чтения (ROM),... Время доступа: 10-6 10-9 sec. 1 s 1 ns
-
Принципы построения БД Тема 2 6 Вторичная память Несколько видов: - Диск: Сменные (жесткие, мягкие) Сменные пакеты Обычные жесткие диски с произвольным доступом Оптические, CD-ROМ Дисковые массивы - Ленты: катушечные, кассетные - Роботизированные хранилища
-
Принципы построения БД Тема 2 7 Основное внимание: “Типичный диск” Термины: поверхность, головка, цилиндр, дорожка, сектор (физический), блок (логический), промежуток, …
-
Принципы построения БД Тема 2 8 Вид сверху
-
Принципы построения БД Тема 2 9 “Tипичные” значения Диаметр: 1 дюйм 15 дюймов Цилиндров:100 2000 Поверхностей: 1 (CDs) (дор./цил.) 2 (флоппи) 30 Размер сектора:512B 50K Общая емкость:360 KB (флоппи) 120 GB
-
Принципы построения БД Тема 2 10 Время доступа БлокХ в оп.памяти ? Запрос на блок X
-
Принципы построения БД Тема 2 11 Время = перемещение головок + задержка вращения + передача блока + другое
-
Перемещение головок (время поиска)
Принципы построения БД Тема 2 12 3 or 5x x 1 N Кол-во цилиндров Время
-
Среднее время поиска
Принципы построения БД Тема 2 13 SEEKTIME (i j) S = N(N-1) N N i=1 j=1 ji “Tипичное” S: 5мсек20 мсек
-
Задержка вращения
Принципы построения БД Тема 2 14 Головка здесь Нужный блок
-
Средняя задержка вращения
Принципы построения БД Тема 2 15 R = 1/2 оборота диска “типичное” R = 4.167мсек (7200 об/мин)
-
Дополнительная сложность
Принципы построения БД Тема 2 16 необходимо определить начало дорожки прежде, чем можно читать нужный блок Головка здесь Нужный блок Начало дорожки
-
Скорость передачи: t
Принципы построения БД Тема 2 17 “типичное” t: 60100 MB/сек время передачи: размер блока t
-
Другие задержки
Принципы построения БД Тема 2 18 ожидание доступности процессорадля выдачи команды I/O ожидание доступности контроллера ожидание доступности шины, памяти “Tипичные” значения : 0
-
Принципы построения БД Тема 2 19 До сих пор речь шла о произвольном (случайном) доступе Что изменитсяпри чтении “следующего” блока?
-
При эффективнойорганизации I/O(двойной буферизации и других приемах)
Принципы построения БД Тема 2 20 Времяполучения= размер блока + пренебрежимо блокаt малое время - пропустить промежуток - перейти на другую дорожку цилиндра - время от времени перейти на следующий цилиндр
-
Главное Произвольный (случайный) доступ правилогораздо медленнее последовательного
Принципы построения БД Тема 2 21 Пример: 1 KB Block случайный I/O: 10 мсек. последовательный I/O: 0.5мсек.
-
Времязаписито же, чтои время чтения
Принципы построения БД Тема 2 22 За исключением записи с проверкой! надо добавить (полный) оборот + размер блока t
-
Принципы построения БД Тема 2 23 Для модификации блока: (a) прочитать блок (b) модифицировать в памяти (c) записать блок [(d) проверить?]
-
Адрес блока:
Принципы построения БД Тема 2 24 Номер устройства Номер цилиндра Номер поверхности Номер сектора
-
Осложнения:дефектные блоки
Принципы построения БД Тема 2 25 Сложно обрабатывать Может программно отображаться на последовательность целых чисел 1 2 . Отобра- Действительные жение адреса . m
-
Пример
Принципы построения БД Тема 2 26 Диаметр 3.5 дюйма 3600 об/мин 1 поверхность 16 MB полезная емкость (16 X 220) 128 цилиндров Время поиска: среднее = 25 мсек. соседнийцилиндр = 5 мсек. Megatron 747 диск (устаревший)
-
Принципы построения БД Тема 2 27 Размер сектора = 1 KB = 1 блок 10% дорожки составляют межблочные промежутки емкость = 16 MB = (220)16 = 224 число цилиндров = 128 = 27 байт/цил. = 224/27 = 217 = 128 KB блок/ цил. = 128 KB / 1 KB = 128
-
3600 об/мин 60 оборотов / сек 1 об. = 16.66 ms
Принципы построения БД Тема 2 28 Дорожка: ... Время над полезными данными:(16.66)(0.9)= 15 мсек. Время над промежутками: (16.66)(0.1) = 1.66 мсек. Время передачи 1 блока = 15/128=0.117 мсек. Время перед.1 блока+промеж. =16.66/128=0.13мсек. Макс.скорость передачи = 1/0.117 = 8.53 блок/мсек = 8.53*1KB*1000мсек/сек*1MB/1024KB = 8.33MB/сек Реальная скорость передачи (дорожки – 128KB за 16.66 мсек) = 128/16.66 = 7.68 KB/мсек = 7.5MB/сек
-
T1 = Время чтения случайного блока
Принципы построения БД Тема 2 29 T1 = поиск + задержка вращения + передача блока = 25 + (16.66/2) + .117 = 33.45 мсек. предполагая, что мы не ждем начала дорожки
-
Допустим, что ОС работает с блокамиразмером 4 KB
Принципы построения БД Тема 2 30 T4 = 25 + (16.66/2) + (.117) x 1 + (.130) X 3 = 33.83 мсек [Сравните с T1 = 33.45 ms] ... 1 2 3 4 1 блок
-
Принципы построения БД Тема 2 31 TT = Время чтения всей дорожки (начиная с любого блока) TT = 25 + (0.130/2) + 16.66* = 41.73 ms попасть на начало первого блока * На самом деле несколько меньше; не нужно читать последний промежуток
-
Новый Megatron 747 (Пример 11.3)
Принципы построения БД Тема 2 32 24 = 16поверхностей, 3.5 дюймадиаметр используется только внешний 1 дюйм 214 = 16384дорожек/поверхность 27 = 128 (в среднем) секторов/дорожку 212 = 4096байт/сектор 237 = 128GB – общая емкость 219 = 512KB – емкость 1 дорожки если все дорожки по 128 секторов, то плотность самой внешней дорожки ~ 420000 бит/дюйм плотность самой внутр. дорожки ~ 990000 бит/дюйм Если число секторов увел. с 96 (на внутр.) до 160 (на внеш.), то плотность вырастет с 530000 до 742000 бит/дюйм Скорость вращения – 7200 об/мин
-
Временныехарактеристики нового Megatron 747 (Пример11.5)
Принципы построения БД Тема 2 33 Допустим, что для разгона и остановки блока головок требуется 1 мсек плюс 1 мсек на движение на 1000 цилиндров(в ту или другую сторону) Максим. время поиска 1+16.383 = 17.383 мсек Время полного оборота = 60/7200 = 0.00833 сек Угл. радиус 16384-байт блока 36*3/128+324*4/128 = 10.97 Время чтения16384-байт блока: Мин.: 10.97/360*8.33 = 0.25 мсек (без задержки вращ.) Мах: 17.38+8.33+0.25 = 25.96 мсек Среднее: 1+ 5.641+4.17+0.25 = 10.88 мсек (5641 – среднее кол-во цилиндров между 2 случайными)
-
Способы оптимизации(контроллер,ОС)
Принципы построения БД Тема 2 34 Алгоритмы упорядочения Например, алгоритм «лифта» Использование буфера размера дорожки диска (или более) Предварительное чтение блока (до запроса) Дисковые массивы Зеркальные диски
-
Двойная буферизация
Принципы построения БД Тема 2 35 Задача: Имеется файл Последовательностьблоков B1, B2,... Программа Обработать B1 Обработать B2 Обработать B3
-
Использование одного буфера
Принципы построения БД Тема 2 36 (1) Читать B1 Буфер (2) Обработать данные в буфере (3) Читать B2Буфер (4) Обработать данные в буфере ... Пусть P = время обработки 1 блока R = время чтения 1 блока n = кол-во блоков в файле Время обработки с одним буфером = n(P+R)
-
Двойная буферизация
Принципы построения БД Тема 2 37 Память: Диск: A B C D G E F A B Обраб. A C Обраб. B
-
Пусть P R
Принципы построения БД Тема 2 38 Каково время обработки? P = время обработки 1 блока R = время чтения 1 блока n = кол-во блоков в файле Время обработки с 2 буферами = n(P+R) Время обработки с 1 буфером = n(P+R)
-
Выбор размера блока
Принципы построения БД Тема 2 39 Большой блокуменьшает относительную стоимость I/O Большой блокприходится читать много бесполезной информации, больше затраты на чтение Тенденция – по мере удешевления памяти размер блоков увеличивается К сожалению ...
-
Стоимость памяти
Принципы построения БД Тема 2 40 10-9 10-6 10-3 10-0 103 Время доступа(сек) 1015 1013 1011 109 107 105 103 кэш оперативная память вторичная память магнитные оптические диски online ленты Опти- ческие диски offline ленты Типичная емкомть(байт) согласно Gray & Reuter
-
Принципы построения БД Тема 2 41 10-9 10-6 10-3 10-0 103 Время доступа(сек) 104 102 100 10-2 10-4 кэш оперативная память вторичная память магнитные оптические диски online ленты Опти- ческие диски offline ленты долларов/MB согласно Gray & Reuter
-
Эффективное использование вторичной памяти (Раздел11.4)
Принципы построения БД Тема 2 42 Пример: внешняя сортировка Зоключение: Стоимость I/O доминирует Необходимость розработки алгоритмов по-возможности уменьшающих I/O Каков должен быть размер блоков?
-
Сбои дисков(Раздел 11.6)
Принципы построения БД Тема 2 43 ЧастичныеПолные ВременныеПостоянные Что делать в таких случаях? Детектирование Например, используя контрольные суммы Коррекция Использованиеизбыточности
-
На каком уровне можно бороться со сбоями дисков?
Принципы построения БД Тема 2 44 Отдельный диск Используя коды, корректирующие ошибки Дисковые массивы Логический диск Физические диски
-
Уровень ОС, дублирование данных
Принципы построения БД Тема 2 45 Логическийблок Копия A Копия B
-
Системы баз данных
Принципы построения БД Тема 2 46 Например, Файл протокола Текущая БД Недельная копия БД
-
Принципы построения БД Тема 2 47 Вторичная память, в основном, дисковая Характеристики (время) I/O Операций I/O, по-возможности, лучше избегать, особенно случайных (запросы к отдельным случайным блокам в файле или БД). Итог
Нет комментариев для данной презентации
Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.