Для підвищення швидкодії дисків варто усувати ефект фрагментації. Крім того, можна також урахувати, що швидкість читання на початку механічного диска вище, ніж наприкінці. Для дефрагментації використовують спеціальні програми. Наприклад, пакет Norton Utilities в Windows 98 використовує наступний порядок розміщення файлів по поверхні диска (швидкість читання знижується від початку до кінця диска):
1) Файл підкачування (початок диска);
2) Рідко використовувані;
3) Часто використовувані;
4) Часто змінювані;
5) Вільна область;
6) Рідко змінювані файли (кінець диска).
Файлова система FAT і NTFS
Файлова система - це спосіб зберігання файлів на диску. Системи FAT16 та FAT32 використовують 16 та 32 розрядну таблицю розміщення файлів (FAT). В FAT32 максимальні розмір файлу та розділу - 2ГБ та 40 ГБ. Система недостатньо стабільна (типова помилка - невірний розмір вільної області). Сильно піддана фрагментації. Разом з тим, має високу швидкодію та гарну програмну підтримку.
З появою NT-подібних операційних систем була запропонована файлова система NTFS. Використовує 48-розрядну адресацію. Тому обмеження на розмір файлу та диска практично відсутні. 12% диска приділяються під основну таблицю файлів MFT (Master File Table), а також її копію. Ушкодження MFT можливе тільки при практично повному виході диска з ладу.
Відмовостійкість NTFS пов'язана з тим, що робота з даними проводиться на основі транзакцій - дій, які виконуються цілком і коректно або не виконуються взагалі.
Каталог в NTFS являє собою специфічний файл, що зберігає посилання на інші файли та каталоги. Його внутрішня структура подібна до бінарного дерева, що дозволяє в десятки разів скоротити час пошуку потрібного файлу (так званий метод розподілу навпіл). Чим більше файлів у каталозі, тим більше перевага перед FAT32 при пошуку файлів.
Розмежування прав доступу до файлів в NTFS далеко не завжди захищає від несанкціонованого доступу до секретних даних. Зловмисник може підключити ваш жорсткий диск до іншого комп'ютера і легко прочитати потрібні файли, оскільки обмеження прав доступу не поширюється за межі вашої ОС. Тому в NTFS був застосований додатковий захід - шифрування даних на рівні файлової системи, що дозволяє приховувати інформацію більш успішно.
Стискання даних в NTFS теж виконується на рівні ФС, що дозволяє працювати з ними відносно швидко, розпаковуючи інформацію "на льоту". Механізм стискання надзвичайно гнучкий - можна стискати навіть половину файлу, іншу частину залишаючи нестиснутою.
Ім'я файлу може містити будь-які символи, включаючи повний набір національних алфавітів, тому що дані представлені в Unicode (65535 різних символів). Використовується стискання даних на рівні файлової системи. Це дозволяє працювати з файлами відносно швидко.
Підтримується автоматичне відновлення системи після збою.
Однак, високі вимоги до оперативної пам'яті та складність повної дефрагментації обмежують використання NTFS. Швидкість жорстких дисків в FAT32 трохи вище, ніж в NTFS.
17.3. Типи накопичувачів
Класифікація накопичувачів. Накопичувачі бувають механічні з носієм інформації на стрічці або диску, а також чисто електронні на Flash-пам'яті. Дискові накопичувачі використовують гнучкі диски (Floppy), жорсткі диски (HD) або оптичні носії (CD). Для уніфікації будь-який носій інформації називають диском.
Гнучкі диски (Floppy)
Є найдорожчим та ненадійним способом зберігання інформації (300$/ГБ). Час доступу - 200мс. Швидкість читання - 35кБ/с. На одній дискеті розміщається до 1.4МБ інформації.
Жорсткі диски (HD)
Перший жорсткий диск був розроблений в 1956р. фірмою IBM, мав ємність 5МБ, складався з 50-и 24'' пластин та важив 971кг. У наш час HD є найефективнішим за критерієм ціна-продуктивність-надійність способом зберігання інформації. Являє собою пакет твердих магнітних дисків, діаметром 2.5-3.5'', над якими «літає» головка. Використовується очищене повітряне середовище. Точна механіка забезпечує довговічність та надійність. Час доступу порядку 8..15мс, лінійна швидкість читання 50..100МБ/с (7200об/хв). Кеш-пам'ять 2-32МБ. Застосовується паралельний ATA інтерфейс зі швидкістю до 133МБ/с або послідовний SATA із продуктивністю більше 155МБ/с.
За останні 20 років швидкість лінійного читання збільшилася на 2 порядки, а час доступу зменшилося менше, ніж на порядок. Швидкість CPU зросла на 4 порядки. Тому HD (CD також) є самим повільним елементом системи.
Ємність HD збільшується приблизно за законом Мура: за 20 років з 1983р. від 12МБ до 200ГБ. Вартість HD також неухильно знижується (<0.3$/ГБ в 2006-2007рр.). До системної плати можуть бути підключені до 2 пар ATA пристроїв.
До 2005р. використовувався горизонтальний спосіб запису. Для підвищення щільності запису з 2005р. застосовується вертикальний запис на диск, що дозволило випускати диски більше 200-500ГБ із лінійною швидкістю читання близько 100МБ/с (7200об/хв). Щільність запису в 2007р. перевищила 500ГБ/дюйм2, що дозволяє створювати 3.5'' диски обсягом більше 1ТБ (більше 600ГБ на пластину).
Твердотільні накопичувачі SSD (solid state drive)
Традиційно вони являють собою накопичувачі, схожі на жорсткі диски, але використовують звичайну кремнієву пам'ять та невелику батарейку для резервного живлення. Подібні продукти дуже швидкі, але дорогі та ексклюзивні, для масового ринку вони не підходять.
Однак є дві технології, що загрожують традиційним жорстким дискам:
1) накопичувачі на флеш-пам’яті, які використовують енергонезалежну пам'ять;
2) гибридні вінчестери (H-HDD).
Останні являють собою звичайні жорсткі диски, що мають додатковий банк флеш-пам'яті, що може використовуватися для зберігання інформації OEM-виробників та часто використовуваних файлів ОС.
Однієї з основних особливостей жорстких дисків є досить великий час пошуку, тому сучасні операційні та файлові системи реалізовані таким чином, щоб зменшити кількість операцій пошуку будь-яким можливим образом. Програмне забезпечення зберігає значні обсяги даних у буферній пам'яті, файлові та операційні системи дефрагментують диски, домагаючись послідовного розташування великих обсягів даних, інтерфейси оптимізовані для підтримки блоків даних, характерних для жорстких дисків, відрізняють операції читання з кеш-пам'яті та з дисків.
У той же час, подібна оптимізація погано підходить для SSD. Час пошуку у твердотільних дисках незначно, тому фрагментовані файли на такому накопичувачі не представляють великої проблеми з погляду продуктивності. Найчастіше пристрої зберігання на базі NAND-флеш не містять кеш-пам'яті, тому диференціація джерела для читання також неактуальна. Зате кількість циклів читання-запису у твердотільних накопичувачах хоча велике, але все-таки обмежено, тому для SSD бажано усунути зайві операції по обміну даними, зв'язані, наприклад, з виконанням операцій дефрагментації або перезаписом файлів підкачування.
Нарешті, адресація у випадку NAND флеш-пам'яті використовується не байтова, а сторінкова, що припускає зчитування за один раз досить великого обсягу даних. Файлові системи також оперують блоками даних, і розбіжність цих параметрів може істотно погіршити характеристики продуктивності. Наприклад, якщо файлова система має розмір блоку 512 байт, а сторінка в SSD дорівнює 4кБ, то при читанні буде оброблятися значна кількість зайвої інформації.
Intel випускає SSD зі швидкістю читання 240МБ/с і запису 70-170МБ/с.
Флэш-Накопичувачі (Flash-card)
Є самим надійним і перспективним способом зберігання інформації. Час доступу - менше 1мс. Швидкість запису-читання більше 10МБ/с. Вартість порядку 3$/ГБ (2009р.) з тенденцією до падіння.
Гибридные жёсткие диски (H-HDD)
Дозволяють прискорити час запуску системи, зчитуючи дані із флеш-пам'яті, а не з повільного механічного носія. Втім, від останнього можна взагалі відмовитися. Наприклад, накопичувач SSD 5000 от SanDisk, не використовує обертаючихся дисків взагалі, будуючись цілком на флеш-пам'яті, що стало можливим завдяки триваючому росту ємності чипів флеш-пам'яті.
Втім, гібридні жорсткі диски страждають через недостатню підтримку з боку операційних систем. На даний момент гібридні вінчестери не дають відчутних переваг, як-то збільшення часу автономної роботи (мотор шпинделя жорсткого диска може вимикатися, якщо дані гібридного накопичувача вміщаються у флеш-пам'яті) або підвищення продуктивності.
Разом з тим, покупка гібридного вінчестера замість традиційного – варіант аж ніяк не поганий. Жорсткі диски виразно розвиваються в цьому напрямку, але пройде якийсь час, перш ніж гібридні вінчестери покажуть себе із кращої сторони.
Жорсткі диски на флеш-пам'яті кращають із кожним поколінням. Перші моделі були обмежені 32ГБ за ціновими міркуваннями і не могли обійти традиційні жорсткі диски в багатьох тестах. Прийдешнє покоління зможе забезпечити швидкість передачі даних на рівні останніх HD накопичувачів на 7200об/хв. Єдине, чого не можна вирішити інженерним методом, так це проблему ємності: флеш-накопичувачі поки що будуть обмежені обсягом в 64 або 128 ГБ.
Оптичні диски (CD)
Компакт-диски є самим мобільним та дешевим способом зберігання інформації (0.1$/ГБ у 2007р.).
Мають одну спіральну доріжку з початком у центрі диска. Інформація зберігається у вигляді пітів - ділянок з різною відбиваючою здатністю. Використовується безконтактне (оптичне) зняття інформації. Для запису даних використовується надлишковий код, що зберігає інформацію навіть при наявності сильних радіальних подряпин. Час доступу 100мс. Швидкість читання-запису визначається кратністю від 1x до 52x (150-7800кБ/с) для звичайних дисків та до 16x (21МБ/с) для DVD. На одному CD розміщається 700 МБ, а на одному DVD - більше 4ГБ інформації.
Файлова система аналогічна FAT. Таблиця розміщення файлів називається TOC. Інтерфейс також східний з HD. Однак рекомендується для HD та CD використовувати підключення через різні контролери через велику різницю у швидкодії.
Контрольні питання
1. Які характеристики накопичувачів є основними?
2. Опишіть структуру диска накопичувача.
3. Як формується фрагментація файлів та що дає дефрагментація?
4. Проведіть порівняння файлових систем FAT та NTFS.
5. Дайте порівняльні характеристики різних типів накопичувачів.
Лекція 18. Сучасні технології зберігання даних