WinFS когда будет?
От: turbocode  
Дата: 12.06.17 22:00
Оценка: :)
Помню у MS была идея выпустить файловую систему операционной системы Windows на базе ядра SQLServer но первый заход в продакшин был полным провалом из-за очень низкого перформанса копирования файлов.
Но сейчас ввиду SSD теперь WinFS должен работать приемлимо, почему не пытаются сделать повторный запуск этой идеи?
Re: WinFS когда будет?
От: Kolesiki  
Дата: 12.06.17 23:17
Оценка: +1
Здравствуйте, turbocode, Вы писали:

T>Помню у MS была идея выпустить файловую систему операционной системы Windows на базе ядра SQLServer

T>почему не пытаются сделать повторный запуск этой идеи?

Возможно, потому что сама идея была глупая? Не всё можно унифицировать по количеству ног, не всё есть база, что имеет поля.
ФС — это не только (и не столько) записи о файлах, сколько оптимальное управление пространством носителя. На хардах это были сектора и важнейшая задача ФС в том числе была оптимизация перемещения головки между цилиндрами. Абстрактная СУБД ничего не должна знать о таких вещах, у неё тупо записи, индексы... Получается, что ФС только с виду — иерархичная БД, на деле не получится полностью абстрагироваться от носителя.
Да и в целом, ну что принесёт важного использование БД? Профит — мизерный, а гемора по склейке БД и носителей — много.
Re[2]: WinFS когда будет?
От: turbocode  
Дата: 12.06.17 23:38
Оценка: +1
K>Да и в целом, ну что принесёт важного использование БД? Профит — мизерный, а гемора по склейке БД и носителей — много.

Транзакции, распределённые транзакции, откаты (restore points), очень быстрый поиск, встроенная версионность файлов, виртуализация, репликация и все это на уровне файловой системы операционной системы.
Стабильность такой системы будет over 9000
Для програмистов наконец то нормальная объектная модель для работы с файловой системой, можно будет даже через SQL или через ORM работать с ней.
Re[3]: WinFS когда будет?
От: Ops Россия  
Дата: 13.06.17 07:14
Оценка:
Здравствуйте, turbocode, Вы писали:

K>>Да и в целом, ну что принесёт важного использование БД? Профит — мизерный, а гемора по склейке БД и носителей — много.


T>Транзакции, распределённые транзакции, откаты (restore points), очень быстрый поиск, встроенная версионность файлов, виртуализация, репликация и все это на уровне файловой системы операционной системы.

Это во многом уже есть и без БД. Версионность с откатами на уровне файлов, например.
T>Стабильность такой системы будет over 9000
А стабильность — это разве проблема сейчас? По-моему, с ССД эта проблема довольно редкая, даже при сбое питания. Разве что на серверах, но они и так в БД, а не прямо на диск пишут.
T>Для програмистов наконец то нормальная объектная модель для работы с файловой системой, можно будет даже через SQL или через ORM работать с ней.
Нафиг-нафиг.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re: WinFS когда будет?
От: vsb Казахстан  
Дата: 13.06.17 07:28
Оценка:
Здравствуйте, turbocode, Вы писали:

T>Но сейчас ввиду SSD теперь WinFS должен работать приемлимо, почему не пытаются сделать повторный запуск этой идеи?


Судя по тому, что файловая система следующего поколения для Windows называется ReFS и в ней нет ничего подобного, этот проект похоронили.
Re[3]: WinFS когда будет?
От: vsb Казахстан  
Дата: 13.06.17 07:34
Оценка: +1 -2
Здравствуйте, turbocode, Вы писали:

T>Транзакции


Транзакции уже давно есть в NTFS, но программисты ими не пользуются, поэтому это API помечено устаревшим.

T>откаты (restore points)


Это есть на любой современной файловой системе, SQL для такого не нужен.

T>очень быстрый поиск


Какая-то особая ФС для этого не нужна, нужен обычный индекс по метаданным (и данным если нужно). Это делается внешними программами.

T>встроенная версионность файлов


Как это предполагается работать? На каждый flush делать новую копию? Мне кажется, в масштабах ОС это работать не будет, всё место моментально отожрётся, люди, которые пишут программы, не рассчитывают на это. Кроме того это тривиально реализуется в рамках NTFS и тот факт, что никто этого не делает, показывает, что никому оно особо не надо. Но в принципе любая современная файловая система такое может делать, нужно только API доработать.

>виртуализация


Что имеется в виду?

> репликация


Это может быть полезно, но, опять же, какие-то SQL для этого не нужны.

T>Стабильность такой системы будет over 9000


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

T>Для програмистов наконец то нормальная объектная модель для работы с файловой системой, можно будет даже через SQL или через ORM работать с ней.


Да вроде и сейчас можно, я точно видел такие решения. Только никому это не нужно.
Re: WinFS когда будет?
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 13.06.17 08:12
Оценка:
Здравствуйте, turbocode, Вы писали:

T>Помню у MS была идея выпустить файловую систему операционной системы Windows на базе ядра SQLServer но первый заход в продакшин был полным провалом из-за очень низкого перформанса копирования файлов.

T>Но сейчас ввиду SSD теперь WinFS должен работать приемлимо, почему не пытаются сделать повторный запуск этой идеи?

Microsoft готовит новую редакцию Windows 10 с файловой системой ReFS

— Файловая система ReFS (Resilent File System), оптимизированная для использования на компьютерах с большими массивами данных. Она поддерживает автоматическое исправление ошибок на дисках.

https://ru.wikipedia.org/wiki/ReFS

Среди основных особенностей:[4][5]
Улучшенная надёжность хранения информации на диске структур. ReFS использует B+ деревья[4] (принцип, сходный с хранением данных в реляционных СУБД) как для метаданных, так и для содержимого файлов. Размеры файлов, томов, количество файлов в каталоге ограничены лишь 64-битным числом, что соответствует размеру файла в 16 эксбибайт, размеру тома в 1 йобибайт (при использовании кластеров данных размером 64 КиБ). Свободное место на диске описывается 3 отдельными иерархическими таблицами для малых, средних и больших фрагментов свободного пространства. Имена файлов и длина пути ограничена 32 кибибайтами, для их хранения используется Unicode.
Поддержка стратегии Copy-on-write (копирование при записи, выделение при записи) для метаданных[4], при которой любые транзакции файловой системы не перезаписывают старые метаданные, а записываются в новый блок и организуются в пачки. Для всех метаданных в ReFS используются 64-битные контрольные суммы, хранящиеся независимо. Данные файлов могут иметь контрольную сумму в отдельном потоке (атрибут «integrity»). В случае, если содержимое файлов или метаданных не соответствует контрольным суммам, не требуется отключение файловой системы для удаления или восстановления таких данных. За счет встроенных проверок ReFS не требует регулярного использования утилит проверки диска типа CHKDSK.
Совместимость со старыми API[4], поддержка многих особенностей NTFS, например, шифрование BitLocker, Access Control Lists, USN Journal, уведомления об изменениях,[6] символьные ссылки, junction point, точки монтирования, reparse point, «теневых» копий, идентификаторов файлов, NTFS oplock. ReFS интегрируется с технологией виртуализации носителей данных Storage Spaces[4], которая позволяет применять зеркалирование и объединять несколько физических носителей, как в рамках одного ПК, так и через сеть.[7] При использовании зеркалирования ReFS может обнаруживать и исправлять сбойные копии файлов в процессе data scrubbing, при котором проводится фоновая сверка контрольных сумм.
Многие возможности NTFS не поддерживаются в ReFS, включая именованные потоки файлов (после проверки на Windows 10 TP ADS работает с ReFS. Для поддержки ReFS нужно вносить изменения в реестр), NTFS Distributed Link Tracking (DLT), короткие имена файлов (формат 8.3), сжатие файлов, шифрование на уровне файлов Encrypting File System, транзакции NTFS, жёсткие ссылки, extended attributes и дисковые квоты.[4][2] Разреженные файлы (Sparse files) поддерживаются в RTM.[8][9]
В Windows Server 2012 не поддерживается загрузка с ReFS. Ввиду отсутствия поддержки именованных потоков ReFS не может быть использована для размещения экземпляров MS SQL, включая версию 2012.[10]

и солнце б утром не вставало, когда бы не было меня
Отредактировано 13.06.2017 8:17 Serginio1 . Предыдущая версия .
Re: WinFS когда будет?
От: ononim  
Дата: 13.06.17 08:44
Оценка: +1
T>Но сейчас ввиду SSD теперь WinFS должен работать приемлимо, почему не пытаются сделать повторный запуск этой идеи?
Потому что блочное устройство, файловая система и СУБД — три разных уровня абстракции, которые хорошо имплементятся именно в таком порядке (который внезапно совпадает с ествественным порядком роста сложности системы). Сделать СУБД на базе файловой системы — можно, и работать оно будет ничуть не лучше чем СУБД на блочном устройстве напрямую. Сделать файловую систему на СУБД — можно, но работать оно будет так как работало в результате у МС, изза чего все и закрыли.
Как много веселых ребят, и все делают велосипед...
Re[2]: WinFS когда будет?
От: turbocode  
Дата: 13.06.17 08:50
Оценка:
T>>Но сейчас ввиду SSD теперь WinFS должен работать приемлимо, почему не пытаются сделать повторный запуск этой идеи?
O>Потому что блочное устройство, файловая система и СУБД — три разных уровня абстракции, которые хорошо имплементятся именно в таком порядке (который внезапно совпадает с ествественным порядком роста сложности системы). Сделать СУБД на базе файловой системы — можно, и работать оно будет ничуть не лучше чем СУБД на блочном устройстве напрямую. Сделать файловую систему на СУБД — можно, но работать оно будет так как работало в результате у МС, изза чего все и закрыли.

SSD дает быстрый доступ, почему и теперь должно тормозить?
Re[4]: WinFS когда будет?
От: turbocode  
Дата: 13.06.17 08:55
Оценка:
T>>Транзакции
vsb>Транзакции уже давно есть в NTFS, но программисты ими не пользуются, поэтому это API помечено устаревшим.

Проблема всех этих NTFS это низкоуровневое API. NTFS это как ассемблер, да можно писать и на ассемблере сегодня но это долго, дорого и неудобно.
Re[4]: WinFS когда будет?
От: mike_rs Россия  
Дата: 13.06.17 09:04
Оценка: +1
Здравствуйте, vsb, Вы писали:

T>>Транзакции

vsb>Транзакции уже давно есть в NTFS, но программисты ими не пользуются, поэтому это API помечено устаревшим.

не-не, подмена понятий. МС упорно пытался сделать транзакции, но не осилил их, в итоге объявил данное API устаревшим и строго-настрого запретил всем пользоваться транзакциями, т.к. они будут выпилены в скором времени. При этом новые ФС
от микрософта транзакций не поддерживают совсем (refs). Поэтому программисты их не используют.
PS: единственное применение транзакций на сегодняшний день — это windows updater.
Re[3]: WinFS когда будет?
От: ononim  
Дата: 13.06.17 09:26
Оценка:
T>SSD дает быстрый доступ, почему и теперь должно тормозить?
Оно все равно для типично файловых задач будет работать медленнее чем plain FS на том самом железе. А значит — не нужно.
Как много веселых ребят, и все делают велосипед...
Отредактировано 13.06.2017 9:29 ononim . Предыдущая версия .
Re[4]: WinFS когда будет?
От: turbocode  
Дата: 13.06.17 09:30
Оценка:
T>>SSD дает быстрый доступ, почему и теперь должно тормозить?
O>Оно все равно для типично файловых задач будет работать медленнее чем plain FS. А значит — не нужно,

MSDOS сейчас вообще летает, но никто ж не говорит что Windows медленно работает поэтому давайте её в топку и верните нам DOS.
Если WinFS будет приемлемо работать с транзакциями и всем добром что может обеспечить SQLServer то выбор очевиден.
Re[5]: WinFS когда будет?
От: ononim  
Дата: 13.06.17 09:37
Оценка: +2
T>>>SSD дает быстрый доступ, почему и теперь должно тормозить?
O>>Оно все равно для типично файловых задач будет работать медленнее чем plain FS. А значит — не нужно,
T>MSDOS сейчас вообще летает, но никто ж не говорит что Windows медленно работает поэтому давайте её в топку и верните нам DOS.
Нет, не летает.

T>Если WinFS будет приемлемо работать с транзакциями и всем добром что может обеспечить SQLServer то выбор очевиден.

Дык поставь любую СУБД и получишь тот же функционал. Какой выигрыш в 'СУБД вместо ФС' по сравнению с 'СУБД поверх ФС'?
Как много веселых ребят, и все делают велосипед...
Re[6]: WinFS когда будет?
От: turbocode  
Дата: 13.06.17 09:39
Оценка: :)
T>>Если WinFS будет приемлемо работать с транзакциями и всем добром что может обеспечить SQLServer то выбор очевиден.
O>Дык поставь любую СУБД и получишь тот же функционал. Какой выигрыш в 'СУБД вместо ФС' по сравнению с 'СУБД поверх ФС'?

Тесная интеграция.
Re[5]: WinFS когда будет?
От: Kolesiki  
Дата: 13.06.17 14:28
Оценка: +2
Здравствуйте, turbocode, Вы писали:

T>MSDOS сейчас вообще летает, но никто ж не говорит что Windows медленно работает поэтому давайте её в топку и верните нам DOS.


"Ты не поверишь!..." Именно это и хочу сказать. МИЛЛИОНЫ компьютеров используются в эксклюзивном режиме. Я даже родителей не подпускаю — это ПК, а не общажная сковородка. Отсюда, все эти попытки "надстройки над ДОС" выглядеть каким-то интыпрайзом — смехотворны или по кр. мере нелепы — в домашних условиях ЗА ГЛАЗА хватало именно "MS DOS" со всей её простотой.
По-хорошему, типичному домашнему компу нужна быстрая ФС и безпользовательская ОС. Т.е. не просто "одноюзерская", а вообще без понятия "твоё-моё"! Юзер — он же админ, он же System, он же повелитель всея Оси. А ФС — там вообще должно быть единственное понятие — иерархия файлов. И какая-то заточенная на скорость "система распределения свободного места". Всё.
Как всё это сделать устойчивым? Да это НЕ НАДО ДЕЛАТЬ СЛОЖНЫМ, тогда и устойчивость появится приятным бонусом! Типичный ДОС 6 ставился мной лично... из зазипованного каталога MSDOS. Просто форматил хард с флагом "системный" и распаковывал архив. Всё, готова чистая, безвирусная система. Помойка вроде домашней Венды именно на это и должна быть заточена — на полный формат системной области и быстрое восстановление системы. Увы, Мелкософт только с 7-ки научился ставить ОС с нуля без конвертации FAT32 в NTFS Про "быстрое восстановление" вообще забудьте — все ваши настройки, сеттинги программ, твики реестра... всё это летит к чертям, ибо мелким и мягким это лишний гемор.
Вирусы — сами видите, от ФС они ну вообще никак не зависят! Дырявое Вендо пропускает всё, что нужно ФБР. Даже сама концепция "запускаю Нотепад от имени Васяпупкин" — ущербна, вот почему на сегодня НЕТ спасения от вирусни.
ОК, и так много написал, но поверьте — перегруженная интыпрайзом Венда — всего лишь некомпетентность и лень MS — не хотят они возиться с разными редакциями, запустили слонопотама на 10 гигов — и пусть домашний хомячок утонет в этих прибамбасах! (99% которых ему вообще не впёрлись)
Re[6]: WinFS когда будет?
От: ononim  
Дата: 13.06.17 15:21
Оценка:
K>"Ты не поверишь!..." Именно это и хочу сказать. МИЛЛИОНЫ компьютеров используются в эксклюзивном режиме. Я даже родителей не подпускаю — это ПК, а не общажная сковородка. Отсюда, все эти попытки "надстройки над ДОС" выглядеть каким-то интыпрайзом — смехотворны или по кр. мере нелепы — в домашних условиях ЗА ГЛАЗА хватало именно "MS DOS" со всей её простотой.
K>По-хорошему, типичному домашнему компу нужна быстрая ФС и безпользовательская ОС. Т.е. не просто "одноюзерская", а вообще без понятия "твоё-моё"! Юзер — он же админ, он же System, он же повелитель всея Оси. А ФС — там вообще должно быть единственное понятие — иерархия файлов. И какая-то заточенная на скорость "система распределения свободного места". Всё.
Temple OS наше фсе
Как много веселых ребят, и все делают велосипед...
Re[6]: WinFS когда будет?
От: turbocode  
Дата: 13.06.17 16:38
Оценка:
K>По-хорошему, типичному домашнему компу нужна быстрая ФС и безпользовательская ОС.

Minix подойдет?
Re[2]: WinFS когда будет?
От: Pavel Dvorkin Россия  
Дата: 13.06.17 16:43
Оценка:
Здравствуйте, Kolesiki, Вы писали:

K>ФС — это не только (и не столько) записи о файлах, сколько оптимальное управление пространством носителя. На хардах это были сектора и важнейшая задача ФС в том числе была оптимизация перемещения головки между цилиндрами.


Это относится к функциям драйвера физического диска , а не драйвера файловой системы. Драйвер ФС просто передает запросы драйверу физического диска, а тот может оптимизировать перемещения головок. Тем более что к драйверу физического диска будут запросы от драйвера файловой системы, обслуживающего разные логические диски. Драйвер же физического диска о файловой системе понятия не имеет, не его дело.
With best regards
Pavel Dvorkin
Re[2]: WinFS когда будет?
От: Ночной Смотрящий Россия  
Дата: 14.06.17 15:16
Оценка:
Здравствуйте, Kolesiki, Вы писали:

K>Возможно, потому что сама идея была глупая? Не всё можно унифицировать по количеству ног, не всё есть база, что имеет поля.


Ты, как обычно, не в курсе, но уже мнение имеешь.

K>ФС — это не только (и не столько) записи о файлах, сколько оптимальное управление пространством носителя. На хардах это были сектора и важнейшая задача ФС в том числе была оптимизация перемещения головки между цилиндрами. Абстрактная СУБД ничего не должна знать о таких вещах


А неабстрактная MSSQL знает о таких вещах очень много.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.