Mam tak trochu jiny pohled na vec. Takovy hodne filozoficky: Co slozitost?
Mysleno zcela vseobecne. Celkem verim, ze ZFS je nabuseny FS a nechci upadnou do
flamu zda je lepsi, rychlejsi, krasnejsi tohle ci ono.
Jde mi o takovou tu ideu cistoty navrhu a rozumne dekompozice reseni. Nemohu se totiz zbavit dojmu, ze soucasne implementace fs jsou stale vetsi a slozitejsi bumbrlicci, coz ma (dle meho nazoru) tyto dusledky:
* vic kodu = vice chyb. Napr. ext3 je asi mene nabusena nez zfs, ale je tu s nami uz dost dlouho a nemam pocit, ze by byla "definitivne" odladena nebo ze by na ni delalo zrovna malo lidi. Z popisu ZFS, BTRFS, ... je jasne, ze jsou jeste slozitejsi a statisticky receno asi i chybovejsi.
* slozitejsi fs - vetsi problem s bezpecnosti (opravdu vyuzijete vsechny moznosti toho fs?, znate je vubec vsechny?, a mate je vsechny spravne nastavene...?)
* dekompozice - je hezke, ze "monolity" funguji, ale je take treba aby je nekdo umel pojmout (pro ucely administrace), aby bylo mozne je prizpusobovat okolnostem.
Mozna pisu malinko nejasne. Jde mi o to, ze veci zacinaji byt kvuli efektivite a ruznym killer-feature prilis velke a slozite a paradoxne je to pak kontraproduktivni, protoze se pak stavaji nezvladatelnymi (z hlediska vyvoje, udrzby, administrace, ...). Tenhle problem je samozrejme obecny, a lidstvo se s nim potyka dnes asi vsude. Podle me v oblasti fs stale neni dotazena dekompozice.
Priklad: kritika toho "RAIDU uvnitr fs". Pravdu maji oba tabory.
Ano RAID by nemel byt zadratovan spolu se spravou souboru a adresaru.
Na druhou stranu, toto spojeni umoznuje delat zajimave veci, ktere za to urcite stoji. Mno, podle me je spravne reseni a la sitovy stack - tzn. neco jako "vrstveny model" fs - tzn. vede to asi k vylepseni VFS. Podle me je to v tomto
konkretnim pripade jen a jen o tom, ze rozhrani mezi "vrstvami" s touto moznosti (ze "RAID neco vi o souborech/adresarich") ted momentalne nepocita.
Vtip je v tom, ze
1) lide by se v tom vyznali - co ktera "vrstva" dela a s kym si "povida"
2) bylo by mozne silne(=uzitecne) prizpusobit reseni podminkam (vynechani vrstvy, nahrazeni vhodnejsim resenim pro danou vrstvu (fuuj, konkurence. Linuxaci maj prece radi monopol :-) ),...)
Samozrejme objevuji kolo, ona ta dekompozice je v ramci os, fs, ... samozrejme
nejak udelana (jinak uz by se to davno rozpadlo), problem je ale v tom, ze ne asi dostatecne obecne a soucasne siroce (aby se tam vesly vsechny mozne implementace fs).
Coz pak vede na velka moniliticka reseni fs, ktera "umi vsechno". Ja bych radsi mnozinu komponent fs z ruznych zdroju, ktere si poskladam do znameho obecne uznavaneho fs-stacku. Samozrejme nic se nema prehanet. Je to otazka miry a ja si jen myslim, ze soucasna reseni nam
zacinaji prerustat pres hlavu.
Jo a nepiste mi, ze prizpusobit si muzu i soucasne fs (napr. si vypnout zurnalovani kdyz bych to treba nechtel (z duvodu vykonosti?)). To totiz proste
neni totez jako pouzit fs, ktery to napr. zurnalovani nema.
Mimochodem obdobna situace je podle me napr. ve svete J2EE, kde jsem tuhle cetl zabavny a neskutecne presny popis: "svet J2EE je ekosystem". Je to smesne a pritom nemilosrdne presne. Jave zdar! :-)