Файловая система WinFS

WinFS - это кодовое название для проекта файловой системы, основанной на концепции реляционных баз данных. Данная система была разработана Microsoft, и впервые продемонстрирована в 2003 году как улучшенная подсистема хранения данных для операционных систем Windows, разработанная для надежности и структурирования данных.

В WinFS входит реляционная база данных для хранения информации, и она позволяет хранить любой вид информации из-за хорошо определенной схемы данных. Отдельные данные могут быть связаны друг с другом с помощью отношений, которые либо автоматически выводятся системой, исходя их некоторых атрибутов, либо явно назначаются пользователем.

WinFS позволяет приложениям автоматически определять тип данных. Приложение может определить, и выделить только те данные, с которыми оно может работать.


Когда WinFS была впервые показана на конференции в 2003 году, то она была названа как одна из возможностей Longhorn, предполагавшейся новой версии Windows. Позднее было решено, что WinFS появится после выпуска Windows Vista, однако в июне 2006 года эти планы были заморожены, а уже готовый код был добавлен к последующим релизам ADO.NET и Microsoft SQL Server.

Многие файловые системы, включая NTFS, которая используется в современных версиях Microsoft Windows, хранят файлы и другие объекты просто как последовательность байт, и практически ничего не знают о том, что за данные сохранены в файле. Такие файловые системы имеют только один способ организации файлов – по их именам. Более хорошим решением может быть присвоение каждому файлу тегов для его описания. Такие теги были бы метаданными для файла, и могли бы указывать, например, тип файла (документ, музыкальный файл, и так далее). Это позволило бы искать файлы по их атрибутам такими способами, которые невозможны в традиционных файловых системах, например по запросу “найти все фотографии, на которых есть человек Х”.

Однако это все еще не поможет в работе с данными, которые каким-то образом связаны друг с другом. Например, невозможно будет найти “все телефонные номера людей, каждый из которых хотя бы 100 раз появлялся на моих фотографиях, которые живут в городе Москве, и кому я отправлял письма за последний месяц”. Такой поиск может быть выполнен только в модели, где учитываются и отношения между данными. WinFS пыталась представить такую модель, которая может использоваться для хранения данных на приемлемом уровне производительности.


WinFS изначально поддерживает различные типы данных, такие как изображения, письма, документы, аудио, видео, и многие другие, а не оставляет их как непроанализированные потоки байт. Данные структурируются по их свойствам. Например, тип данных «резюме» будет отображать свои данные через свойства «Имя», «Образование», «Опыт работы» и других. Каждое из этих свойств может быть простым (строка, число или дата) или комплексным типом, например контактом. Различные типы данных имеют различные свойства. Кроме того, WinFS позволяет связывать различные источники данных, например, документ можно связать с контактом отношением «Создан», что будет означать, что данный документ создан автором с данного контакта.

Такой доступ к данным позволяет проводить комплексный поиск, вроде того запроса, который был описан выше. WinFS может просмотреть отношение «Субъект» всех фотографий, чтобы найти все контакты. Также, она может отфильтровать все электронные письма за прошедший месяц, и воспользоваться отношением «Писал», чтобы найти контакты. Из этих двух наборов результатов будут найдены нужные контакты, которые будут отфильтрованы по городу проживания, и затем, будут получены их телефонные номера.

WinFS предоставляет единый механизм хранения, но не определяет формат того, что сохранено в базе данных. Вместо этого, она предоставляет приложениям самим решать, в каком формате нужно писать в базу. Приложения должны предоставить схему, описывающую, как нужно интерпретировать формат файла. Например, чтобы читать или анализировать, например, файл .DOC, нужно добавить схему, чтобы WinFS смогла понять данный формат. С данной схемой все другие приложения смогут писать в формат .DOC, так как они смогут прочитать данную схему.


Резюмируя вышесказанное, можно сказать, что если бы проект WinFS удался, это была бы революция в сфере хранения файлов. Однако, скорее всего, в ближайшем будущем мы не увидим таких файловых систем. Уж очень много проблем стоит перед их создателями. Даже люди-то не всегда могут сказать, какие фильмы и песни лежат у них на компьютере.
Немного рекламы :)

Copyright, design, ideas © Mihail. При копировании материалов, ссылка на сайт "Seozar.ru" обязательна. Контакты - admin@halych.ru
Тариф «Первый»: 2 сайта, 1 Гб, 2 MySQL, 2 FTP