Розподілена файлова система
Розподілена файлова система (Мережева файлова система) — в інформатиці будь-яка файлова система, що дозволяє отримати доступ до файлів з декількох хостів через комп'ютерну мережу.[1] Це уможливлює загальний доступ до файлів і ресурсів зберігання для декількох користувачів на декількох комп'ютерах.
Клієнтські вузли не мають прямого доступу до базових блоків зберігання, але взаємодіють через мережу з використанням протоколу. Це дозволяє обмежити доступ до файлової системи залежно від списку доступу або можливості як на серверах, так й на клієнтах, залежно від призначення протоколу.
Навпаки, в загальній дисковій файловій системі всі вузли мають рівний доступ до блоків зберігання, де міститься файлова система. В цих системах контроль доступу перебуває на стороні клієнта.
Розподілені файлові системи можуть включати в себе засоби для прозорої реплікації та відмовостійкості. Тобто, коли обмежене число вузлів у файловій системі переходить в автономний режим, система продовжує працювати без втрати даних.
Різниця між розподіленою файловою системою і розподіленим сховищем даних може бути не чіткою, проте розподілені файлові системи, зазвичай, спрямовані на використання в локальній мережі.
Перші файл-сервери були розроблені в 1970-х роках. У 1976 році Digital Equipment Corporation створила File Access Listener (FAL), реалізацію протоколу доступу до даних в рамках DECnet Phase II, яка стала першою широко використовуваною мережевою файловою системою. У 1985 році Sun Microsystems створев файлову систему під назвою Network File System (NFS), яка стала першою поширеною мережевою файловою системою на основі інтернет-протоколу. Інші відомі мережеві файлові системи Andrew File System (AFS), Apple Filing Protocol (AFP), NetWare Core Protocol (NCP) і Server Message Block (SMB), який також відомий як Загальна інтернетова файлова система (CIFS).
Прозорість, як правило, вбудована в розподілену файлову систему, означає, що файли, доступні по мережі, для програм і користувачів можна розглядати так само, як файли на локальному диску. Множинність та розподілення по серверам і пристроям зберігання, таким чином, стає невидимимою. Мережева файлова система має вміти шукати файли і організувати транспортування даних.
Загальна продуктивність розподіленої файлової системи вимірюється кількістю часу, необхідного для задоволення запитів на обслуговування. У традиційних системах цей час складається з часу доступу диску і невеликої затримки на обробку даних. Але в мережевій файловій системі віддалений доступ має додаткові накладні витрати в зв'язку з розподіленою структурою. Це включає в себе час, щоб поставити запит на сервер, час, щоб доставити відповідь на клієнта, і для кожного напряму, навантаження на процесор ведення програмного протоколу зв'язку. Продуктивність мережевої файлової системи можна розглядати як ще один вимір його прозорості — щоб бути повністю еквівалентними, необхідне порівняння з операціями на локальному диску.
Управління паралелізмом стає проблемою, коли більш ніж одна особа або клієнт звертається до одного файлу і хочуть оновити його. Таким чином, зміни у файлі з одного клієнта не повинні перешкоджати доступу і поновленню від інших клієнтів. Управління паралелізмом або блокування (locking) має бути вбудована у файлову систему або надані через доповнення протоколу.
- ↑ Silberschatz, Galvin (1994). Operating System concepts, chapter 17 Distributed file systems. Addison-Wesley Publishing Company. ISBN 0-201-59292-4.