O le faʻatalanoaga lona lua ma Eduard Shishkin, le faʻatupuina o le faila faila Reiser4, ua faʻasalalau.
Ina ia amata, faamolemole faamanatu i le au faitau po o fea ma po o ai e te galue ai.
Ou te galue o se Faʻailoga Autu Teuina i Huawei Technologies, German Research Center. I le matagaluega virtualization ou te feagai ma vaega eseese o le teuina o faamatalaga. O a'u gaioiga e le feso'ota'i i se faiga fa'apitoa.
O e tuuto atu i le taimi nei i le paranesi autu?
E seasea lava, ma pe a manaʻomia e loʻu pule. O le taimi mulimuli e tusa ma le tolu tausaga talu ai, na ou auina atu ai patches e faʻateleina ai le gaosiga mo le teuina o fefaʻasoaaʻi i luga o talimalo e faʻaaoga ai le 9p protocol (o le isi igoa mo lenei pisinisi o VirtFS). E tasi le faʻamatalaga taua e tatau ona faia iinei: e ui lava sa ou galue ma Linux mo se taimi umi, ou te leʻi fiafia lava i ai, o lona uiga, ou te "manava tutusa," pei o isi mea uma. Aemaise lava, afai ou te matauina se faaletonu, e mafai ona ou faailoa atu i le sili atu i le tasi. Ma ina ia mafai ona e mulimuli i se tasi ma tauanau i latou - o le a le tupu lenei mea.
Ou te manatua le taimi mulimuli, i le sefulu tausaga talu ai, sa e faitio tele i le faiga o fatu fatu. Mai lau (pe atonu faʻapitoa) manatu, ua i ai se mea ua suia, ua sili atu le tali atu a le nuʻu pe leai? Afai e leai, o ai e te manatu e tuuaia?
Ou te lei vaai lava i ni suiga mo le lelei. O le faʻafitauli autu o le faʻalapotopotoga o le suia lea o le saienisi i tekinolosi faʻapolokiki, mafutaga a le tagata lava ia, manatu o le toʻatele, populism, fautuaga mai "leo i totonu," fetuutuunaiga pala, soʻo se mea e ese mai le saienisi. Saienisi faakomepiuta, po o le a lava le mea e fai mai ai se tasi, o le mea muamua ma le sili o se saienisi saʻo. Ma afai e amata e se tasi ona folafola atu lona lava taua mo le 2x2, ese mai le 4, i lalo o le "Linux way" fuʻa, poʻo lalo o se isi fuʻa, o lona uiga e le mafai ona aumaia se isi mea nai lo le afaina.
O faʻalavelave uma e mafua ona o le le agavaa ma le leai o se aʻoaʻoga a i latou e faia filifiliga. Afai e le agavaa se pule, e le mafai ona ia faia se faʻamoemoega, faʻaiuga talafeagai. Afai fo'i e le'i fa'aleaganu'u o ia, e le mafai ona ia maua se tagata tomai fa'apitoa e tu'uina atu ia te ia le fautuaga sa'o. Faatasi ai ma se avanoa maualuga, o le filifiliga o le a pa'ū i luga o se tagata taufaaleaga e fai mai "mea e foliga saʻo." O se si'osi'omaga pi'opi'o e tupu a'e i ta'ita'i nofo to'atasi e le agavaa. E le gata i lea, e le iloa e le talafaasolopito se tuusaunoaga i lenei tulaga, ma o le nuu o le faamaoniga manino lea o lenei mea.
E fa'afefea ona e su'esu'eina le alualu i luma ile atina'e Btrfs? Na aveesea e lenei FS faʻamaʻi o tamaiti? E fa'afefea ona e fa'atulagaina mo oe lava - o se FS "mo le fale" po'o le fa'aoga fa'atasi?
Ou te le'i aveesea. O mea uma na ou taʻua i le 11 tausaga talu ai o loʻo talafeagai pea i aso nei. O se tasi o faʻafitauli ma Btrfs e le talafeagai mo manaʻoga ogaoga o le faʻafitauli o avanoa avanoa. Ou te le o talanoa e uiga i le mea moni o le tagata faʻaoga e talosagaina e tamoe i le faleoloa mo se tisiki fou i tulaga e faʻaalia ai e se isi FS le tele o avanoa avanoa i luga o le vaeluaga. O le le mafai ona faʻamaeʻaina se gaioiga i luga o se voluma talafeagai ona o le leai o se avanoa avanoa e le o se mea sili ona leaga. O le mea e sili ona leaga e mafai e se tagata faʻapitoa ona faʻaogaina e toetoe lava o taimi uma, faʻafefe soʻo se quotas disk, faʻateʻa tagata uma avanoa avanoa i se taimi puupuu.
E pei o lenei (faʻataʻitaʻiina mo Linux kernel 5.12). O loʻo faʻalauiloaina se faʻamaumauga i luga o se faiga faʻapipiʻi fou, lea i totonu o se matasele e fatuina ai faila ma nisi igoa i le lisi o fale, tusi ai faʻamatalaga ia i latou i nisi faʻasalaga, ona tape ai lea o nei faila. A maeʻa le minute o le faʻaogaina o lenei tusitusiga, e leai se mea e le masani ai e tupu. A maeʻa le lima minute, o le vaega o avanoa avanoa i luga o le vaeluaga e faʻatupulaʻia teisi. A maeʻa le lua i le tolu itula e oʻo i le 50% (faʻatasi ai ma le tau muamua o le 15%). Ma a maeʻa le lima pe ono itula o galuega, o le tusitusiga e paʻu i le mea sese "e leai se avanoa avanoa i le vaeluaga." A maeʻa lenei, e le toe mafai ona e tusia se faila 4K i lau vaeluaga.
E tupu se tulaga mataʻina: na e leʻi tusia se mea i le vaeluaga, ma o avanoa avanoa uma (e tusa ma le 85%) na mou atu i se mea. O le su'esu'eina o se vaega e fa'atatau i sea osofa'iga o le a fa'aalia ai le tele o nodes o la'au o lo'o i ai na'o le tasi mea (o se mea fa'apipi'i ma se ki), e tele paita le lapo'a. O lona uiga, o mea na i ai muamua i le 15% o le disk space na foliga mai e tutusa lelei le "faʻafefeteina" i luga o le vaeluaga atoa ina ia leai se mea e tusi ai se faila fou, aua o lona ki e sili atu nai lo mea uma o loʻo i ai, ma le saoloto. ua uma poloka i le vaeluaga.
E le gata i lea, o nei mea uma e tupu i luga ole laiga Btrfs (e aunoa ma ni ata, subvolumes, ma isi), ma e le afaina pe faʻafefea ona e filifili e teu faila faila i lena FS (e pei o "vaega" i totonu o se laau, poʻo le lautele. o poloka e le'i fa'atulagaina) - o le i'uga o le a tutusa.
O le a le mafai ona e tuʻuina atu isi faila faila i luga o sea osofaʻiga (tusa lava pe o le a le mea latou te taʻu atu ia te oe). Na ou faʻamatalaina le mafuaʻaga o le faʻafitauli i se taimi ua leva: o se faʻalavelave atoatoa lea o le B-tree concept i Btrfs, lea e mafai ai ona faʻafuaseʻi pe faʻaleagaina. Aemaise lava, i lalo o nisi avega, o lau faila faila o le a faʻaauau pea ona "paʻu" i le taimi o le faʻagaioiga na o ia, e aunoa ma se fesoasoani mai fafo. E manino lava o ituaiga uma o "oomiina" faʻasologa o talaʻaga o le a faʻasaoina le aso i luga o komepiuta taʻitasi.
I mea fa'atasi 'au'aunaga E mafai lava e se tagata osofaŹ»i ona "muamua" iÄ i latou. E le mafai foŹ»i e se pule o le polokalama ona iloa poŹ»o ai tonu o loŹ»o faŹ»asauÄ iÄ i latou. O le auala sili ona vave e foŹ»ia ai lenei faŹ»afitauli i le Btrfs o le toe faŹ»afoŹ»isia lea o le fausaga o se B-tree masani, o lona uiga, toe fuafuaina le faatulagaga o le tisiketi ma toe tusi se vaega tele o le code Btrfs. O le a alu ai le 8-10 tausaga, e aofia ai ma le faŹ»aleleia o mea sese, pe a faŹ»apea na mulimulitaŹ»i ma le faŹ»amaoni le au atiaŹ»e i pepa muamua i luga o algorithms talafeagai ma fausaga o faŹ»amatalaga, ma e leŹ»i taŹ»alo "telefoni," e pei ona masani ai (ma faŹ»amalosiauina) i le "auala Linux."
O iinei tatou te manaʻomia ai foʻi le faʻaopoopoina o le taimi e manaʻomia mo tagata atiaʻe e malamalama ai i nei mea uma. O le mea lea e atili ai ona faigata. Po o le a lava le tulaga, e le lava le 10 tausaga mo i latou e malamalama ai. Ia, seia oʻo i lena taimi e le mafai ona e faʻamoemoe mo se vavega. O le a le tupu i le tulaga o le faʻapipiʻiina o le filifiliga "e te leʻi iloa e oe ma aʻu," poʻo le tulaga o se patch e "naʻo se mataupu pisinisi" e saunia. Mo ia "fa'atonu" fa'anatinati uma, o le a ou tu'uina atu se fa'aaliga fou o le fa'aleagaina. B-laau o se tasi lea o autu e sili ona ou fiafia i ai, ma e tatau ona ou fai atu o nei fausaga e le mafai ona faʻatagaina saʻolotoga ia i latou lava!
E fa'afefea ona ou fa'atulagaina Btrfs mo a'u? I le avea ai o se mea e matua le mafai ona taʻua o se faila faila, seʻi vagana ai le faʻaaogaina. Talu ai, i le faʻamatalaga, o le FS o se OS subsystem e nafa ma le faʻatonutonuina lelei o le "disk space" punaoa, lea tatou te le o vaʻaia i le tulaga o Btrfs. Ia, mafaufau na e sau i le faleoloa e faʻatau se uati ina ia le tuai i le galuega, ae nai lo se uati na latou faʻatau atu ia te oe se mea eletise eletise ma se taimi mo le maualuga o le 30 minute. O lea la, o le tulaga i Btrfs e sili atu ona leaga.
A'o va'ava'ai i lisi o meli, e masani ona ou sau i le fa'amatalaga e fa'apea, o le fa'atonutonu lelei o le va'aiga o le disk e le toe talafeagai ona o le taugofie o ta'avale. E matua leai se aoga. A aunoa ma se pule avanoa tisiki mataalia, o le a avea le OS ma faʻafitauli ma le faʻaaogaina. E tusa lava po o le a le malosi o tisiki i lau masini.
Ou te fia fesili mo se faʻamatalaga i le faʻamutaina o le lagolago a Btrfs i le RHEL.
E leai se mea fa'apitoa e fa'amatala ai iinei, e matua manino lava mea uma. Na latou maua foi o se "faʻaaliga tekonolosi". O lea la, ou te leʻi alu i lenei "faʻaaliga" tele. Aua le fa'ataga lenei fa'ailoga e tautau e fa'avavau! Ae e le mafai ona latou fa'alauiloa se mea fa'aletonu e ala i le mamanu ma le lagolago atoatoa. O le RHEL o se atinaʻe, o lona uiga, faʻatonuina o oloa ma tupe. Red Hat e le mafai ona faʻafefe tagata faʻaoga e pei ona latou faia i luga ole lisi o meli Btrfs. Vaai faalemafaufau i le tulaga: o se tagata o tausia na totogiina lana tupe maua malosi mo le tisiki ma oe foi mo le lagolago, e manaʻo e malamalama i le mea na alu i ai lana disk space ina ua uma na te leʻi tusia se mea i lalo. O le a sau tali ia te ia i lenei mea?
E le gata i lea. O tagata fa'atau a Red Hat e aofia ai faletupe tetele ta'uta'ua ma fefa'ataua'iga. Va'ai faalemafaufau po'o le a le mea e tupu pe a fai latou te fa'ao'o i osofa'iga a le DoS e fa'atatau i le fa'aletonu o lo'o ta'ua i Btrfs. O ai e te manatu e nafa ma lenei mea? Ia i latou o le a tusi o latou tamatamailima i le laina o le laisene GPL, lea o loʻo tusia ai e le nafa le tusitala mo se mea, o le a vave ona ou fai atu: "natia!" Red Hat o le a tali, ma i se auala e foliga mai e le lava! Ae ou te iloa e le o feagai le Red Hat i lenei ituaiga o faʻafitauli, ona o la latou 'au faʻapitoa malosi o inisinia QA na ou maua le avanoa e galulue vavalalata ai i loʻu taimi.
Aisea e fa'aauau ai pea ona lagolagoina e nisi kamupani Btrfs ia latou oloa tau atina'e?
Faamolemole ia matau o le prefix "pisinisi" i le igoa o oloa e le tele sona uiga. O pisinisi ose fuafaatatau o tiute tauave ua fa'amauina i le va fa'akonekarate ma le kalani. Ou te iloa naʻo le tasi le atinaʻe e faʻavae ile GNU/Linux - RHEL. O isi mea uma, mai loʻu manatu, ua na o se atinaʻe, ae le o se tasi. Ma le mea mulimuli, afai ei ai se manaʻoga mo se mea, ona i ai lea o se sapalai i taimi uma (i la matou tulaga, o le "lagolago" lea ua taʻua). O loʻo i ai le manaʻoga mo mea uma lava, e aofia ai. ma polokalama e le mafai ona fa'aaogaina. O le auala e fa'atupu ai lea mana'oga ma po'o ai fo'i na te fa'aosoina o le isi lea mataupu.
O lea la, ou te lÄ oso vave i ni faaiŹ»uga pe a uma ona lipotia mai ua faŹ»apipiŹ»i e Facebook le Btrfs i ana 'auŹ»aunaga. E le gata i lea, o tuatusi o na 'auŹ»aunaga 'auŹ»auna Ou te fautuaina e teu fa'aeteete i se mea lilo ona o mafua'aga ua ta'ua i luga.
Aisea ua matua'i faia ai ni taumafaiga i le fa'amamÄina o le XFS code talu ai nei? A uma mea uma, o le taimi muamua o le faila faila lona tolu, ma o le ext4 sa mautu mo se taimi umi ma o loŹ»o i ai le faŹ»aauau mai faŹ»asologa tutusa muamua. O le a le fiafia o le Red Hat i le XFS? E talafeagai le atinaŹ»eina o faila faila e lua e tutusa i le faŹ»amoemoe - ext4 ma XFS?
Ou te le manatua le mea na faaosofia ai lenei mea. E foliga mai o le fuafuaga na sau mai Red Hat tagata faʻatau. Ou te manatua na faia suʻesuʻega o lenei ituaiga: i luga o nisi faila faila mai luga, o se numera tele o mea na faia i luga o taʻavale maualuga o le augatupulaga fou. E tusa ai ma iʻuga, XFS amio sili atu nai lo ext4. O lea na amata ai ona latou faʻalauiloaina o se mea e sili ona lelei. Po'o le a lava le tulaga, ou te le su'eina se mea mata'ina iinei.
Mo aʻu, e pei ua latou suia se faʻamalo i le fasimoli. E leai se aoga i le atinaʻeina o ext4 ma XFS. E tutusa uma ma soo se mea e filifili mai ai. E leai se mea lelei e maua mai i lenei mea. E ui lava, i le natura e masani ona i ai tulaga pe a tele le gafatia mo le tuputupu ae, ae leai se avanoa e tupu ai. I lenei tulaga, o loʻo tulaʻi mai le tele o faʻalavelave fou fou, lea e tusi i ai e tagata uma le tamatamailima ("Oi, vaʻai, o le a le mea e te le vaʻaia i lenei olaga!").
E te manatu o le mataupu o le solia o le laulau ua faʻamautuina (i se uiga le lelei) ma le oʻo mai o galuega faʻailoga i ext4, F2FS (e le o taʻua RAID i Btrfs)?
I se tulaga lautele, o le faʻaofiina o soʻo se laʻasaga ma le faia o se faʻaiuga e uiga i le latou le solia e masani lava o se mataupu o faiga faʻavae, ma ou te le faia se faʻamatalaga i se mea iinei. O vaega faʻamoemoe o le soliga o le layer e itiiti se fiafia i soʻo se tasi, ae e mafai ona tatou mafaufau i nisi oi latou e faʻaaoga ai le faʻataʻitaʻiga o le soliga "mai luga," o lona uiga, o le faʻatinoga i le FS o galuega faatino ua uma ona i ai i luga o le poloka poloka. O sea "solia" e tauamiotonuina i na o ni tuusaunoaga e seasea maua. Mo ia tulaga taʻitasi, e tatau ona e faʻamaonia muamua mea e lua: e manaʻomia moni lava, ma o le mamanu o le faiga o le a le afaina i le faia.
Mo se faʻataʻitaʻiga, faʻataʻitaʻi, lea sa masani ona avea o se gaioiga mo le poloka poloka, e talafeagai le faʻatinoina i le tulaga faila faila. Mo mafuaaga eseese. Mo se faʻataʻitaʻiga, o faʻamatalaga "filemu" faʻaleagaina (bit rot) e tupu i luga o taʻavale tisiki. O le taimi lea o loʻo galue lelei ai le masini, ae o faʻamaumauga poloka e faʻafuaseʻi ona faʻaleagaina i lalo o le faatosinaga a se gamma quantum malosi e faʻauluina e se quasar mamao, ma isi. O le mea e sili ona leaga pe a fai o lenei poloka e avea ma poloka poloka FS (superblock, bitmap block, node laau teu, ma isi), aua o lenei mea e mautinoa lava e mafua ai le popole o le fatu.
Faamolemole ia matau o faʻata o loʻo ofoina mai e le poloka poloka (lea e taʻua o le RAID 1) o le a le laveaʻiina oe mai lenei faʻafitauli. Ia, moni lava: e tatau i se tasi ona siaki siaki tupe ma faitau le kopi pe a le manuia? E le gata i lea, e talafeagai le faʻata e le gata o mea uma, ae naʻo metadata. O nisi fa'amatalaga taua (mo se fa'ata'ita'iga, faila fa'atino o talosaga taua) e mafai ona teuina e fai ma metadata. I lenei tulaga, latou te mauaina tutusa faʻamaoniga o le saogalemu. E talafeagai le tuʻuina atu o le puipuiga o faʻamatalaga o loʻo totoe i isi subsystems (atonu e oʻo lava i faʻaoga faʻaoga) - ua matou saunia uma tulaga talafeagai mo lenei mea.
O ia faʻata "tamaoaiga" e iai le aia tatau e ola ai, ma e mafai ona faʻatulagaina lelei i le tulaga faila faila. A leai, o le solia o le layering o loʻo faʻapipiʻiina se subsystem ma faʻailoga faʻalua mo le lelei o nisi faʻamanuiaga microscopic. O se faʻataʻitaʻiga mataʻina o lenei mea o le faʻatinoina o le RAID-5 faʻaaoga FS. O ia fofo (lava RAID / LVM i totonu o le faila faila) faʻaumatia le mea mulimuli i le fausaga fausaga. E tatau foi ona maitauina iinei o le solia o le layering o loʻo "tuu i luga o le vaitafe" e ituaiga eseese o maketi taufaʻatau. I le leai o ni manatu, o galuega ua leva ona faʻatinoina i tulaga tuaoi e faʻaopoopoina i subsystems, o loʻo faʻaalia o se mea fou e sili ona aoga ma faʻamalosia malosi.
Reiser4 na molia i le solia o tulaga "mai lalo". Faʻavae i luga o le mea moni o le faila faila e le o monolithic, pei o isi uma, ae faʻapitoa, na faia ai se manatu e le faʻamaonia e faia le mea e tatau ona faia e le maualuga i luga (VFS).
E mafai ona talanoa e uiga i le maliu o ReiserFS v3.6 ma, mo se faʻataʻitaʻiga, JFS? Talu ai nei e toetoe lava a leai se gauai atu i le totonugalemu. Pe ua le toe aoga?
O iinei tatou te manaʻomia ai le faʻamalamalamaina o le uiga o le oti o se oloa faʻapipiʻi. I le tasi itu, o loʻo faʻaaogaina lelei (o le mea lena na faia ai, pe a uma), o lona uiga latou te ola. I le isi itu, e le mafai ona ou tautala mo le JFS (Ou te le iloa tele), ae o ReiserFS (v3) e faigata tele ona faʻafetaui i faiga fou (faʻataʻitaʻiina i le faʻataʻitaʻiga). O lona uiga i le lumanaʻi o le a le gauai atu i ai le au atinaʻe, ae ia i latou e faigofie ona fetuunai. Mai lea itu e aliali mai, talofa, ua mate i le fausaga o fausaga. O le a ou le faaseseina le manatu o le "amio le aoga" i soo se mea. E faʻaoga lelei, mo se faʻataʻitaʻiga, i se laʻei, ae le o mea tau komepiuta. E i ai se manatu o le maualalo ma le maualuga i se mea. E mafai lava ona ou fai atu o ReserFS v3 ua maualalo nei i le Reiser4 i mea uma, ae i nisi o ituaiga o galuega e sili atu nai lo isi FS uma i luga.
E te iloa e uiga i le atinaʻeina o FS Tux3 ma HAMMER/HAMMER2 (FS mo DragonFly BSD)?
Ioe, matou te iloa. I Tux3 sa ou fiafia muamua i tekinolosi o latou ata (le mea e taʻua o "version pointers"), ae i Reiser4 atonu o le a tatou alu i se isi auala. Sa ou mafaufau e uiga i le lagolagoina o ata mo se taimi umi ma ou te leʻi filifili pe faʻapefea ona faʻatinoina mo volumes Reiser4 faigofie. O le mea moni o le fou fangled "paie" reference counter technique na faatuina mai e Ohad Rodeh e na o B-laau e aoga. E le o ia i tatou. Mo na faʻamaumauga o loʻo faʻaaogaina i le Reiesr4, e leʻo faʻamatalaina le "paie" - e faʻafeiloaʻi i latou, e tatau ona foia nisi faʻafitauli algorithmic, e leʻi faia e se tasi.
E tusa ai ma le HAMMER: Na ou faitau i se tusiga mai le na faia. Le fiafia. Toe foi, B-laau. O lenei fausaga faʻamaumauga e leai se faʻamoemoe ua tuai. Na matou lafoai i le seneturi talu ai.
E fa'afefea ona e su'esu'eina le fa'atupula'ia o mana'oga mo feso'ota'iga fuifui FSs pei o CephFS/GlusterFS/etc? O le uiga o lenei mana'oga o se suiga i mea e ave i ai le faamuamua a le au atia'e agai i le FS network ma le le lava o le gauai atu i le FS i le lotoifale?
Ioe, o se suiga faapena i mea e faamuamua ua tupu. O le atinaʻeina o faila faila i le lotoifale ua faʻaletonu. Talofa, o le faia o se mea taua mo voluma i le lotoifale ua fai si faigata ma e le mafai e tagata uma ona faia. E leai se tasi e manaʻo e teu faʻafaigaluega i latou atinaʻe. E tutusa lea ma le talosagaina o se fa'alapotopotoga fa'apisinisi e fa'asoa tupe mo su'esu'ega fa'a-matematika - e aunoa ma se naunautaiga latou te fesili atu ia te oe pe fa'afefea ona e maua se tupe i se a'oa'oga fou. O le taimi nei o se FS i le lotoifale o se mea e foliga faʻapitoa "mai le pusa" ma "e tatau ona galue i taimi uma," ma afai e le aoga, e mafua ai le muimui e leʻi taliina e pei o: "Ioe, o le a le latou mafaufau!"
O le mea lea o le leai o se gauai atu i le FS i le lotoifale, e ui o loʻo tele pea galuega i lea vaega. Ma ioe, ua liliu tagata uma i le tufatufaina atu o le teuina, lea e fausia i luga o le faavae o faila faila i le lotoifale. Ua matua'i tautai nei. O le fuaitau "Big Data" e mafua ai le faanatinati o le adrenaline mo le toʻatele, faʻafesoʻotaʻi ma konafesi, mafutaga faaleaoaoga, totogi tetele, ma isi.
O le a le talafeagai i le mataupu faavae le faʻatinoina o le faila faila i le kernel space nai lo le faʻaoga avanoa?
O se auala talafeagai e leʻi faʻatinoina i soʻo se mea. I se tulaga lautele, o le fesili pe o le a le avanoa e tatau ona faʻatinoina ai se faila faila o se "pelu mata lua." Ia, se'i o tatou vaavaai i se faataitaiga. Na fa'amauina e le kalani fa'amaumauga i se masini mamao. Na latou pa'u i totonu o lana itulau fa'apipi'i i foliga o itulau palapala. O le galuega lea mo se "faitotoa manifinifi" faiga faila fesoʻotaʻiga i le kernel space. Ona fai atu lea o le faiga fa'agaoioi ia oe e tusi na itulau i le disk e fa'asa'oloto ai. Ona sau ai lea o le IO-forwarding (auina atu) network FS module i le taʻaloga. E fuafua po'o fea masini 'au'aunaga (server node) o le a alu i ai nei itulau.
Ona ave lea o le upega o fesoʻotaʻiga (ma, e pei ona tatou iloa, o loʻo faʻatinoina i le kernel space). O le isi, e maua e le node server lena pusa ma faʻamaumauga poʻo metadata ma faʻatonu le vaega e teu ai i tua (e pei o le FS i le lotoifale o loʻo galue i le kernel space) e faʻamaumau uma nei mea. O lea la, ua matou faʻaititia le fesili i le mea e tatau ona galue ai le "auina atu" ma le "taliaina". Afai ei ai se tasi o na modules e tamoʻe i avanoa faʻaoga, o le a mautinoa lava e taʻitaʻia ai le suiga o faʻamatalaga (ona o le manaʻoga e faʻaaoga auaunaga kernel). Ole numera o ia suiga e fa'alagolago ile fa'atinoga o fa'amatalaga.
Afai e tele na suiga, o le a faʻaitiitia le gaosiga o le teuina (I/O performance). Afai o lau mea e teu i tua o loʻo faia i tisiki lemu, ona e le matauina lea o se pa'ū tele. Ae afai e iai sau tisiketi vave (SSD, NVRAM, ma isi), ona avea lea o le suiga o faʻamatalaga ua avea ma "bottleneck" ma, e ala i le faʻasaoina o le fesuiaiga o faʻamatalaga, e mafai ona faʻateleina le faʻatinoga. O le auala masani e teu ai tupe o le faʻanofoina lea o modules i le kernel space. Mo se faʻataʻitaʻiga, na matou iloa o le faʻanofoina o le 9p server mai QEMU i le fatu i luga o le masini talimalo e taʻitaʻia ai le faʻatoluina o le faʻatinoga o le VirtFS.
O lenei, ioe, e le o se fesoʻotaʻiga FS, ae o loʻo faʻaalia atoatoa ai le ute o mea. O le fa'aletonu o lenei fa'ata'ita'iga o fa'afitauli feavea'i. Mo nisi, o le mea mulimuli atonu e faitio. Mo se faʻataʻitaʻiga, GlusterFS e leai ni faʻaoga i totonu o le fatu. Faʻafetai i lenei mea, o loʻo galue nei i luga o le tele o faʻavae, e aofia ai NetBSD.
O a manatu e mafai e FS fa'apitonu'u ona nono mai feso'ota'iga ma le isi itu?
I aso nei, fesoʻotaʻiga FSs, e pei o se tulafono, e iai faʻaopoopoga i luga o FS i le lotoifale, o lea ou te le malamalama lelei pe faʻapefea ona e nono mai se mea mai le mea mulimuli. Ia, ioe, seʻi o tatou mafaufau i se kamupani e 4 tagata faigaluega, lea e faia ai e tagata uma a latou lava mea: tufatufaina atu, auina atu e le isi, maua le tolu, faleoloa lona fa. Ma o le fesili, o le a le mea e mafai e le kamupani nono mai lana tagata faigaluega o loʻo teuina, e foliga mai e le saʻo (ua uma ona maua le mea na mafai ona nono mai ia te ia mo se taimi umi).
Ae o FS i le lotoifale e tele mea e aŹ»oaŹ»oina mai fesoŹ»otaŹ»iga. Muamua, e tatau ona e aŹ»oaŹ»o mai ia i latou pe faŹ»apefea ona faŹ»apipiŹ»i voluma talafeagai i se tulaga maualuga. O lea ua ta'ua O faiga faila fa'apitonu'u e tu'ufa'atasia ai voluma fa'atatau e fa'aaogÄ fa'atasi ai ma le fa'aogaina o tekonolosi fa'atekonolosi mai le LVM (o le soliga fa'ama'i pipisi lea na fa'atino muamua i le ZFS). I se isi faaupuga, o le faaliliuga o tuatusi faakomepiuta (numera poloka) i mea moni ma tua e tupu i se tulaga maualalo (ie, pe a uma ona tuŹ»uina atu e le faila faila se talosaga I / O).
Faamolemole ia matau o le faaopoopoina ma le aveesea o masini i voluma talafeagai (e le o ni faata) faatulagaina i luga o le poloka poloka e oo atu ai i faafitauli e le leoa ai le aufaipisinisi o ia "foliga". O loʻo ou talanoa e uiga i le vaevaega i luga o masini moni, lea e mafai ona oʻo atu i tulaga taua, ae i luga o se masini komepiuta e lelei mea uma. Ae ui i lea, e toaitiiti tagata e fiafia i masini komepiuta: e fiafia tagata uma i mea o loʻo tupu i au masini moni. Ae o le ZFS-pei o le FS (faʻapea foʻi ma soʻo se FS faʻatasi ma le LVM) e galue naʻo masini faʻapipiʻi masini (tuʻu ese tuatusi tisiketi mai totonu o mea e leai se totogi, faʻaleagaina nei masini komepiuta, ma isi). Ma latou te le iloa le mea o loʻo tupu i luga o masini moni!
Va'ai la e leai sau fragmentation i luga o le masini komepiuta (o lona uiga, e na'o le tasi le tele o lou nofo ai iina), e te fa'aopoopoina se tisiki i lau voluma talafeagai, ona aveese lea o se isi tisiki fa'afuase'i mai lau voluma talafeagai ma toe paleni. Ma le tele o taimi. E le faigata ona mafaufauina i luga o le masini komepiuta o le ae maua pea le tulaga tutusa e ola ai, ae i luga o masini moni e te le iloa se mea lelei.
O le mea e sili ona leaga e le mafai ona e faʻasaʻo lenei tulaga! Pau lava le mea e mafai ona e faia iinei o le fesili i le faila faila e faʻamalo le masini komepiuta. Ae o le a ia taʻu atu ia te oe e lelei mea uma iina - e naʻo le tasi le lautele, o le vaevaega e leai se mea, ma e le mafai ona sili atu! O lea la, o voluma talafeagai e faʻatulagaina i le poloka poloka e le faʻamoemoeina mo le faʻaopoopoina / aveeseina o masini. I se auala lelei, e naʻo lou manaʻomia e faʻapipiʻi se voluma talafeagai i le poloka poloka tasi, tuʻuina atu i le faila faila, ona fai lea o se isi mea.
E le gata i lea, o le tuʻufaʻatasia o FS + LVM subsystems tutoʻatasi e le faʻatagaina le amanaia o le natura eseese o taʻavale e faʻapipiʻiina ai voluma talafeagai. Ioe, fa'apea ua e fa'apotopotoina se voluma talafeagai mai le HDD ma masini malo. Ae o le mea muamua o le a manaʻomia le defragmentation, ae o le mea mulimuli e le. Mo le mea mulimuli, e tatau ona e tuʻuina atu talosaga lafoai, ae mo le muamua, leai, ma isi. Ae ui i lea, i lenei tuufaatasiga e faigata tele ona faʻaalia sea filifiliga.
Manatua a maeʻa ona fatuina lau lava LVM i luga o le faila faila, e le sili atu le lelei o le tulaga. E le gata i lea, o le faia o lenei mea e te faʻaumatia ai le faʻamoemoe o le faʻaleleia atili i le lumanaʻi. E leaga tele lenei mea. O ituaiga ta'avale eseese e mafai ona ola i le masini lava e tasi. Ma afai e le iloa e le faila faila i le va oi latou, o ai la?
O le isi fa'afitauli o lo'o taoto i le fa'atali mo le mea e ta'ua. "Tusi-Soo se mea" faiga faila (e aofia ai foi Reiser4, pe afai e te faʻamaonia le faʻataʻitaʻiga talafeagai o fefaʻatauaiga i le taimi o le mauga). O ia faiga faila e tatau ona tuʻuina atu meafaigaluega faʻaleagaina e leʻi tupu muamua i lo latou malosi. Ma e le fesoasoani le pule o le voluma maualalo i'inei, ae na o le faʻalavelave. O le mea moni, faʻatasi ai ma sea pule, o lau FS o le a teuina se faʻafanua o poloka saoloto o naʻo le tasi le masini - o se masini. E tusa ai, e mafai ona e defragment na o se masini komepiuta. O lona uiga o lau defragmenter o le a galue mo se taimi umi, umi i luga o se avanoa tele e tasi o tuatusi faakomepiuta.
Ma afai e tele au faʻaoga o loʻo faia faʻasologa faʻafuaseʻi, ona faʻaitiitia lea o le aoga aoga o sea defragmenter i le zero. O lau faiga o le a le maalofia le amata faʻagesegese, ma o le a na o le piilima o ou lima i luma o le faʻamaʻi le fiafia "faʻailoga gau". O le tele o defragmenters o lo'o ta'avale i luga o le avanoa e tasi o le tuatusi o le a na'o le fa'alavelave le tasi i le isi. Ose mataupu e matua ese lava pe afai e te tausia lau lava faafanua o poloka saoloto mo masini moni taitasi. O lenei mea o le a fetaui lelei ma le faʻagasologa o le defragmentation.
Ae e mafai ona faia lenei mea pe afai e iai sau pule maualuga maualuga. Faiga faila faʻapitonuʻu ma ia pule e leʻi i ai muamua (a itiiti ifo, ou te le iloa e uiga ia i latou). Na'o faiga faila feso'ota'iga (mo se fa'ata'ita'iga GlusterFS) na iai fa'atonuga fa'apea. O le isi fa'ata'ita'iga sili ona taua o le fa'aogaina o le siaki fa'amaoni (fsck). Afai e te teuina lau lava faafanua tutoatasi o poloka saoloto mo subvolume taitasi, o le taualumaga mo le siakiina o se voluma talafeagai e mafai ona fetaui lelei. I se isi faaupuga, e sili atu le fuaina o voluma talafeagai ma pule maualuga.
E le gata i lea, faʻatasi ai ma pule o le leo maualalo o le a le mafai ona e faʻatulagaina ata faʻapipiʻi atoatoa. Faatasi ai ma le LVM ma le ZFS-pei o faila faila, e mafai ona e ave naʻo ata faʻapitonuʻu, ae le o ata o le lalolagi. O ata fa'apitonu'u e fa'atagaina oe e vave fa'afo'i na'o fa'agaioiga faila masani. Ma e leai se tasi o iina na te toe faʻafoʻi galuega ma voluma talafeagai (faʻaopoopo / aveese masini). Sei o tatou vaavaai i lenei mea ma se faataitaiga. I se taimi i le taimi, pe a iai sau voluma talafeagai o masini e lua A ma B o loʻo i ai faila 100, e te puʻeina se ata o le S system ona e fatuina lea o le isi selau faila.
A mae'a lena, e te fa'aopoopoina le masini C i lau leo, ma mulimuli ane toe fa'afo'i lau faiga i le ata S. Fesili: E fia faila ma masini o lo'o i ai i lau voluma talafeagai pe a uma ona toe fo'i i le S? O le ai ai 100 faila, e pei ona e mateina, ae o le ai ai 3 masini - o masini lava ia A, B ma C, e ui lava i le taimi na faia ai le ata e na o le lua masini i totonu o le polokalama (A ma le B). ). O le faʻaogaina o le masini C e leʻi toe taʻavale, ma afai e te aveesea nei le masini C mai le komepiuta, o le a faʻaleagaina au faʻamatalaga, o lea aʻo leʻi tapeina e tatau ona e faia muamua se gaioiga taugata e aveese ai le masini mai le rebalance logical volume, lea. o le a faʻasalalau faʻamatalaga uma mai le masini C i masini A ma le B. Ae afai e lagolagoina e lau FS snapshots o le lalolagi, o le a le manaʻomia le toe faʻaleleia, ma a maeʻa le toe foʻi vave i le S, e mafai ona e aveese saogalemu le masini C mai le komepiuta.
O lea la, o ata o le lalolagi e lelei aua latou te faʻatagaina oe e aloese mai le aveesea o le taugata (faʻaopoopoina) o se masini mai se voluma talafeagai (i se voluma talafeagai) ma le tele o faʻamaumauga (ioe, pe afai e te manatua e "snapshot" lau polokalama. i le taimi tatau). Sei ou faamanatu atu ia te oe o le fatuina o ata ma le toe faafoi atu o le faila faila ia i latou o ni gaioiga vave. E ono tulaʻi mai le fesili: faʻafefea ona mafai ona toe faʻafoʻi vave se taotoga i luga o se voluma talafeagai na e tolu aso? Ae e mafai! Fa'apea o lau faiga faila e sa'o le fa'atulagaina. Na ou sau ma le manatu o ia "3D snapshots" i le tolu tausaga talu ai, ma i le tausaga talu ai na ou pateni ai lenei metotia.
O le isi mea e tatau ona aʻoaʻoina e FSs i le lotoifale mai fesoʻotaʻiga o le teuina o metadata i masini eseese i le auala lava e tasi e teuina ai e FS network i masini eseese (o mea e taʻua o metadata servers). O loʻo i ai tusi talosaga e faʻatatau i metadata, ma o nei talosaga e mafai ona faʻavavevaveina e ala i le tuʻuina o metadata i luga o masini teu oloa taugata. Faatasi ai ma le FS + LVM tuʻufaʻatasiga, o le a le mafai ona e faʻaalia sea filifiliga: LVM e le iloa le mea o loʻo i luga o le poloka na e pasi atu i ai (faʻamatalaga iina poʻo metadata).
E te le maua tele le manuia mai le faʻatinoina o lau lava LVM maualalo i le FS faʻatusatusa i le FS + LVM tuʻufaʻatasia, ae o le mea e mafai ona e faia lelei o le faʻafefeina o le FS ina ia mulimuli ane e le mafai ona galue ma lona code. ZFS ma Btrfs, o loʻo faʻavavevave i masini komepiuta, o ni faʻataʻitaʻiga manino uma o le faʻaleagaina o le faʻaogaina o le faʻaogaina o le faʻaogaina o le fausaga, aisea la ua ou faia ai nei mea uma? E le gata i lea, e leai se manaʻoga e fausia lau lava LVM maualalo i le faila faila. Nai lo lena, e tatau ona e faʻapipiʻi masini i voluma talafeagai i se tulaga maualuga, e pei ona faia e nisi o faila faila i masini eseese (nodes teu). E moni, latou te faia lenei mea ma le inosia ona o le faʻaogaina o algorithms leaga.
O faʻataʻitaʻiga o algorithms mataʻutia o le DHT faaliliu i le GlusterFS faila faila ma le mea e taʻua o le CRUSH map i le Ceph file system. E leai se tasi o algorithms na ou vaʻaia na faʻamalieina aʻu i tulaga o le faigofie ma le faʻaleleia lelei. O lea sa tatau ai ona ou manatua le algebra ma fai mea uma lava e a'u. I le 2015, aʻo faʻataʻitaʻiina faʻatasi ma fusi i luga o galuega faʻaoga, na ou sau ma pateni se mea e fetaui ma aʻu. O lea la e mafai ona ou faapea atu na manuia le taumafaiga e faatino uma nei mea. Ou te le o vaʻaia ni faʻafitauli i le faʻalauteleina i le auala fou.
Ioe, e mana'omia e subvolume ta'itasi se fausaga e ese mai e pei o se superblock i le manatua. E mata'utia tele lenei mea? I se tulaga lautele, ou te le iloa poʻo ai o le a "faʻavevela le vasa" ma fatuina voluma talafeagai o le selau afe pe sili atu masini i luga o se masini faʻapitonuʻu. Afai e mafai e se tasi ona faamatala mai ia te au lenei mea, ou te matua faafetai lava. I le taimi nei, ia te aʻu o le maketiina lea o le taufaaleaga.
Na fa'afefea ona a'afia mana'oga mo le fa'atinoina o le FS suiga i suiga ole masini poloka poloka (mo se fa'ata'ita'iga, foliga ole blk-mq)?
Sa leai so latou aafiaga. Ou te le iloa le mea o le a tupu i luga o le poloka poloka e ono manaʻomia ai le mamanuina o se FS fou. Ole feso'ota'iga feso'ota'iga o nei subsystems e matua leaga lava. Mai le itu avetaavale, o le FS e tatau ona naʻo le faʻaalia o ituaiga fou o taʻavale, lea o le a faʻapipiʻi muamua ai le poloka poloka, ona sosoo ai lea ma le FS (mo reiser4 o lona uiga o le faʻaalia o plugins fou).
O le tula'i mai o ituaiga fou o fa'asalalauga (mo se fa'ata'ita'iga, SMR, po'o le ubiquity o SSDs) o lona uiga o ni lu'itau fou mo le fa'atulagaina o faila?
Ioe. Ma o faʻamalosi masani ia mo le atinaʻeina o le FS. O luitau e mafai ona eseese ma matua le faamoemoeina. Mo se faʻataʻitaʻiga, ua ou faʻalogo i taʻavale e faʻalagolago tele ai le saoasaoa o le I/O i le tele o se fasi faʻamaumauga ma lona faʻaogaina. I Linux, o le tele o le poloka FS e le mafai ona sili atu i le tele o itulau, o sea taʻavale o le a le faʻaalia lona malosi atoatoa e ala i le le mafai. Ae peitaʻi, afai e saʻo le faʻatulagaina o lau faila faila, ona i ai lea o le avanoa e maua ai le tele o mea mai ai.
E toafia tagata o loʻo galulue nei ma le Reiser4 code e ese mai ia oe?
E itiiti ifo nai lo le mea ou te manaʻo i ai, ae ou te leʻi oʻo i se faʻaletonu tele o punaoa. Ua sili atu loʻu faamalieina i le saoasaoa o le atinaʻeina o Reiser4. O le a ou le "tosina solofanua" - e le o le vaega saʻo lea. O iinei, "afai e sili atu le filemu o lau taʻavale, e te alu pea!" O se faiga faila fa'aonaponei o le kernel subsystem sili ona lavelave, o filifiliga sese o le mamanu e mafai ona fa'aleaogaina ai tausaga mulimuli ane o galuega a le tagata.
E ala i le ofoina atu o volenitia e faŹ»atino se mea, ou te faŹ»amautinoa i taimi uma o taumafaiga e mautinoa lava e taŹ»itaŹ»ia ai iŹ»uga saŹ»o, lea e mafai ona manaŹ»omia mo manaŹ»oga ogaoga. E pei ona e malamalama, e le mafai ona tele ni fa'amaoniga i le taimi e tasi. I le taimi lava e tasi, e le mafai ona ou tu i "tagata" o loŹ»o faŹ»alauiloaina ma le le maasiasi "foliga" o polokalama faŹ»apitoa e le mafai ona faŹ»aaogaina, faŹ»asesÄ le faitau selau o tagata faŹ»aoga ma atinaŹ»e, ma i le taimi lava e tasi e nofo ma ataata i luga o le kernel summits.
Na i ai se kamupani na faʻaalia le naunau e lagolago le atinaʻeina o Reiser4?
Ioe, sa i ai ia talosaga, e aofia ai. ma mai se fa'atau tele. Ae mo lenei mea sa tatau ona ou siitia atu i se isi atunuu. Ae paga lea, ua le toe 30 ou tausaga, e le mafai ona ou vavae ese ma alu ese faapena i le faaili muamua.
O a vaega o lo'o misi nei mai le Reiser4?
E leai se "toe faʻatulagaina" galuega mo voluma faigofie, tutusa ma le mea o loʻo maua i ReiserFS(v3). E le gata i lea, e le afaina ai le fa'agaioia o faila i le fu'a DIRECT_IO. O le isi, ou te manaʻo e mafai ona faʻavasegaina se voluma i "semantic subvolumes", e leai se lapoʻa faʻamautu, ma e mafai ona faʻapipiʻiina o ni voluma tutoʻatasi. O nei faʻafitauli e lelei mo tagata amata e fia faʻataʻitaʻi o latou lima i le "mea moni."
Ma le mea mulimuli, ou te manaʻo e maua ni voluma talafeagai o fesoʻotaʻiga ma le faʻatinoina faigofie ma le pulega (o algorithms faʻaonaponei ua faʻatagaina lenei mea). Ae o le mea e mautinoa lava e le maua e Reiser4 o le RAID-Z, scrubs, avanoa avanoa avanoa, 128-bit fesuiaiga ma isi faʻatauvaʻa faʻatauvaʻa na tulaʻi mai i tua o le le lava o manatu i le au atiaʻe o nisi faila faila.
E mafai ona faʻatinoina mea uma e manaʻomia e plugins?
Afai tatou te talanoa naʻo tulaga o fesoʻotaʻiga ma plugins (modules) e faʻaaogaina, ona le o mea uma. Ae afai e te faʻaalia foi sootaga i luga o nei fesoʻotaʻiga, ona, faatasi ai ma isi mea, o le ae maua manatu o polymorphisms maualuga, lea e mafai ona e mauaina. Va'ai faalemafaufau e te fa'ailo fa'atotonugalemu se faiga fa'atino fa'ata'ita'iga, suia le tau o le fa'atonuga fa'atonu e fa'asino i se isi fa'apipi'i e fa'aogaina le fa'aoga X tutusa, ona fa'amalo lea o le faiga ina ia fa'aauau pea ona fa'atino.
Afai e le matauina e le tagata faʻaaogaina sea "suiga," ona matou fai atu lea o le faiga e leai se faʻatonuga polymorphism i le X interface (poʻo le faiga e heterogeneous i le X interface, o le mea lava lea e tasi). Afai o le taimi nei e le gata o loʻo i ai sau seti o fesoʻotaʻiga, ae o loʻo i ai foʻi ni mafutaga i luga o latou (kalafi faʻaoga), ona mafai lea ona e faʻalauiloaina polymorphisms o faʻatonuga maualuga, lea o le a faʻaalia ai le heterogeneity o le faiga ua i ai i le "tuaoi" o soʻo se atinaʻe. Na ou faʻalauiloaina se faʻavasegaga i se taimi ua leva, ae, o le mea e leaga ai, e leʻi tupu lava.
O lea la, faatasi ai ma le fesoasoani a plugins ma polymorphisms maualuga, e mafai ona e faʻamatalaina soʻo se mea e iloa, faʻapea foʻi ma le "valoʻaina" i latou e leʻi taʻua lava. Ou te leʻi mafai ona faʻamaonia atoatoa lenei mea, ae ou te leʻi iloa foi se faʻataʻitaʻiga. I se tulaga lautele, o lenei fesili na faamanatu mai ai ia te au le "Polokalame Erlangen" a Felix Klein. I se tasi taimi sa ia taumafai e fai ma sui o geometry uma o se lala o le algebra (fa'apitoa, a'oa'oga vaega).
Le taimi nei i le fesili autu - faʻafefea mea e alu i le faʻalauiloaina o Reiser4 i le autu autu? Na i ai ni fa'asalalauga i le fausaga o lenei faiga faila na e talanoa ai i le fa'atalanoaga talu ai? O le a le talafeagai o lenei fesili mai lou manatu?
I se tulaga lautele, ua matou talosaga mo le faʻaofiina i le lala autu mo le tolu tausaga. O le faʻamatalaga mulimuli a Reiser i le filo lautele lea na faia ai le talosaga toso e leʻi taliina. O isi fesili uma la e le mo i tatou. Ou te le malamalama patino pe aisea tatou te manaʻomia ai le "faʻatasi" i totonu o se faiga faʻapitoa. I luga o Linux, e leʻi faʻapipiʻi le moli e pei o se tina. O lea la, o loʻo i ai se fale teu oloa o le ai ai le tele o paranesi-taulaga mo OS eseese. Po'o ai lava e mana'omia e mafai ona fa'apipi'i le uafu talafeagai ma fai so'o se mea e te mana'o ai (i totonu o le laisene, ioe). Ia, afai e le manaʻomia e se tasi, e le o loʻu faafitauli. I le taimi nei, ou te fautua atu e mafaufau i le fesili o le "siitia i totonu o le fatu Linux autu" e pei ona faʻamalieina.
O faʻasalalauga i luga o le fausaga o le FS e talafeagai, ae o le taimi nei naʻo le taimi na ou maua ai aʻu faʻaiuga fou, lea ou te manatu o se faʻamuamua maualuga. O le isi mea o aʻu o se mathematician, ma i le matematika soʻo se faʻasalalauga o se aotelega o faʻamatalaga ma o latou faʻamaoniga. O le lolomiina o soo se mea iina e aunoa ma se faamaoniga o se faailoga o le leaga o le tofo. Afai ou te faʻamaonia lelei pe faʻamaonia soʻo se faʻamatalaga e uiga i le fausaga o le FS, o le taunuuga o le a avea ma faaputuga e faigata tele ona uia. O ai e mana'omia? Masalo o le mea lea e faʻaauau ai pea mea uma i lona tulaga tuai - o le source code ma faʻamatalaga i ai.
O le a le mea fou i Reiser4 i nai tausaga talu ai?
O le mautu ua leva ona faatalitali i ai ua iu lava ina taunuu. O se tasi o mea mulimuli na aliali mai o se pusa na taʻitaʻia ai "le mafai ona faʻaaogaina" faʻamaumauga. O le faigata o le na o le faʻaalia i tua o igoa faʻalavelave faʻafefe ma faʻatasi ai ma se nofoaga patino o faʻamaumauga faʻamaumauga i totonu o se node laau. Ae ui i lea, e le mafai lava ona ou fautuaina Reiser4 mo le gaosiga: mo lenei mea e te manaʻomia le faia o se galuega faʻatasi ai ma fegalegaleaiga faʻatasi ma le faʻatonuina o le gaosiga.
Na iu lava ina mafai ona matou faʻatinoina le matou manatu ua leva - eseese faʻataʻitaʻiga fefaʻatauaiga. I le taimi muamua, Reiser4 na o le tasi le faʻataʻitaʻiga Macdonald-Reiser hardcoded. O le mea lea na tupu ai faʻafitauli o le mamanu. Aemaise lava, e le mafai ona maua ata i se faʻataʻitaʻiga fefaʻatauaʻiga - o le a faʻaleagaina e se vaega atomika e taʻua o le "OVERWRITE SET". Reiser4 o loʻo lagolagoina nei faʻataʻitaʻiga faʻatauga e tolu. I totonu o se tasi oi latou (Tusi-Soʻo se mea), o le vaega atomic OVERWRITE SET e aofia ai naʻo itulau faʻaoga (ata o bitmaps tisiki, ma isi), e le mafai ona "puʻeina" (le faʻafitauli moa ma fuamoa).
O lea ua mafai nei ona iloa ata i se auala sili ona lelei. I se isi fa'ata'ita'iga tau fefa'ataua'iga, e na'o le OVERWRITE SET e alu uma itulau fa'aleleia (o lona uiga, e matua'i mama talatala). O lenei faʻataʻitaʻiga e mo i latou na faitio e uiga i le vave vaevaega o vaega Reiser4. I le taimi nei i lenei faʻataʻitaʻiga o lau vaeluaga o le a le vave ona vaeluaina nai lo le ReiserFS (v3). O faʻataʻitaʻiga uma e tolu o loʻo iai, faʻatasi ai ma nisi faʻasao, faʻamaonia le atomicity o gaioiga, ae o faʻataʻitaʻiga ma le leiloa o le atomicity ma faʻasaoina naʻo le faʻamaoni o le vaega e mafai foi ona aoga. O ia faʻataʻitaʻiga e mafai ona aoga mo ituaiga uma o talosaga (faʻamaumauga, ma isi), lea ua uma ona faʻaaogaina nisi o nei galuega. E faigofie tele le faʻaopoopoina o nei faʻataʻitaʻiga i Reiser4, ae ou te leʻi faia, aua e leai se tasi na fesili mai ia te aʻu, ma ou te le manaʻomia.
Na fa'aalia mai su'ega metadata ma sa ou fa'aopoopoina talu ai nei i fa'ata "tamaoaiga" (meafaitino le mautu). Afai e le manuia le siakiina o soŹ»o se poloka, e faitau vave e Reiser4 le poloka tutusa mai le masini kopi. Manatua e le mafai e ZFS ma Btrfs ona faia lenei mea: e le faŹ»atagaina e le mamanu. O iina e tatau ona e faŹ»atautaia se faŹ»ataŹ»itaŹ»iga faŹ»apitoa faŹ»ataŹ»itaŹ»iga e taŹ»ua o le "scrub" ma faŹ»atali seŹ»i oŹ»o i le poloka faŹ»afitauli. E taŹ»ua faafaatusa e le au fai polokalame ia mea o le ātootoo.ā
Ma le mea mulimuli, ua aliali mai le tele o voluma talafeagai, e ofoina atu mea uma e ZFS, Btrfs, poloka poloka, faʻapea foʻi ma le FS + LVM tuʻufaʻatasiga i le mataupu faavae e le mafai ona tuʻuina atu - faʻatusatusaga tutusa, O (1) faʻasalalauga tuʻufaʻatasia, femalagaiga faʻamatalaga manino i le va o subvolumes. O lo'o iai fo'i le fa'aoga fa'aoga a le vaega mulimuli. Ole taimi nei e faigofie ona e fa'anofoina fa'amatalaga pito sili ona manaia ile ta'avale sili ona maualuga i lau leo.
E le gata i lea, e mafai ona faʻavaveina soʻo se itulau palapala i se taʻavale, ma faʻapea ona faʻavavevaveina talosaga e masani ona taʻua fsync(2). Ou te maitauina o le faʻaogaina o le poloka poloka, e taʻua o le bcache, e le maua ai sea saolotoga o gaioiga. O voluma talafeagai fou e faʻavae i luga o aʻu algorithms (o loʻo i ai pateni tutusa). O le polokalama ua leva ona mautu, e mafai lava ona faʻataʻitaʻi, fua le faʻatinoga, ma isi. Pau lava le faʻalavelave o le taimi nei e te manaʻomia le faʻafouina ma le lima o le faʻatulagaina o le voluma ma teu i se mea.
I le taimi nei ua mafai ona ou faʻatinoina oʻu manatu i le 10 pasene Ae ui i lea, ua ou manuia i le mea na ou manatu o le mea sili ona faigata - faʻafesoʻotaʻi voluma talafeagai ma se faʻataʻitaʻiga faʻataʻitaʻiga e faʻatino uma gaioiga tuai i le reiser4. O nei mea uma o loʻo iai pea i le faʻataʻitaʻiga "format41" lala.
E pasi le Reiser4 xfstests?
O le mea sili na faia mo aʻu a o ou saunia le faʻasalalauga mulimuli.
E mafai i le mataupu faavae ona faia Reiser4 se fesoʻotaʻiga (cluster) FS faʻaaogaina plugins?
E mafai, ma e tatau foi! Afai e te fatuina se faila fesoʻotaʻiga e faʻavae i luga o se faiga faila faila i le lotoifale, o le taunuuga o le a matua manaia! I fesoʻotaʻiga faʻaonaponei FSs, ou te leʻi faamalieina i le i ai o se backend storage level, lea e faʻaaogaina e faʻaaoga ai soʻo se FS i le lotoifale. O le i ai o lenei tulaga e matua le fa'amaonia. Ole feso'ota'iga FS e tatau ona fegalegaleai sa'o ma le poloka poloka, ae le o le fesili ile FS ile lotoifale e fai so'o se isi faila tautua!
I se tulaga lautele, o le vaevaeina o faila faila i le lotoifale ma fesoʻotaʻiga e mai le leaga. Na aliaʻe mai le le atoatoa o algorithms na faʻaaogaina i le tolusefulu tausaga talu ai, ma i le mea e leai se mea na faʻatulagaina. O le mafuaʻaga foi lea o le faʻaalia o le tele o mea e le manaʻomia polokalama (auaunaga eseese, ma isi). I se auala lelei, e tatau ona na o le tasi le FS i le tulaga o se kernel module ma se seti o mea faʻaoga faʻaoga faʻapipiʻi i masini taʻitasi - o se node fuifui. O lenei FS e fa'apitonu'u ma feso'ota'iga. Ma e leai se isi mea!
Afai e leai se mea e aoga ma Reiser4 i luga o Linux, ou te fia ofoina atu se FS mo FreeBSD (upusii mai se faatalanoaga talu ai: "... FreeBSD ... e iai aʻa faʻaleaʻoaʻoga ... Ma o lona uiga e iai se maualuga maualuga o le avanoa tatou te o le a maua se gagana masani ma le au atiaʻe") ?
O lea la, e pei ona faatoa matou iloa, o mea uma ua maeʻa lelei ma Linux: o loʻo i ai se vaʻaiga eseʻese Reiser4 uafu mo ia i le tulaga o se lala matua o la matou fale teu oloa. E le'i galo ia te a'u le FreeBSD! Ofo! Ua ou sauni e galulue vavalalata ma i latou e iloa lelei totonu ole FreeBSD. I le ala: o le mea ou te fiafia tele i ai i lo latou nuu, o faaiuga iina e faia e se aufono fou a tagata tomai faapitoa tutoatasi, e leai se mea e fai i le taufaasese a le malo o se tagata tumau.
E fa'afefea ona e fa'atauaina le fa'aoga Linux i aso nei? Ua sili atu ona "pop"?
E tusa ai ma le natura o laʻu galuega, e fai si faigata ia te aʻu ona iloilo lenei mea. O le tele o tagata e o mai ia te aʻu ma lipoti o pusa ma talosaga e faʻaleleia le vaega. Tagata fa'aoga o tagata fa'aoga. O nisi e sili atu le atamai, o nisi e itiiti. E tutusa tagata uma. Ia, afai e le amanaʻia e le tagata faʻaoga aʻu faʻatonuga, faʻamolemole faʻamaonia aʻu: o le le amanaʻia le faʻatonuga o le a tuʻuina atu foi i laʻu vaega.
E mafai ona valoia le atinaʻeina o faila faila mo le isi lima i le sefulu tausaga? O le a sou manatu o a lu'itau autu e ono feagai ma le au atina'e FS?
Ioe, e lÄ faigatÄ ona faia se valoaga faapena. E leai se atinaŹ»e o faila faila i luga o le vaitafe mo se taimi umi. E na o foliga o ia mea e faia. O le au atiaŹ»e o faila faila i le lotoifale na feagai ma faŹ»afitauli e fesoŹ»otaŹ»i ma le le lelei o le mamanu. E tatau ona fai se fa'atagaga iinei. Ou te le manatu i le mea ua taŹ»ua o le "teu", "licking" ma le porting of code e avea ma atinaŹ»e ma atinaŹ»e. Ma ou te le faŹ»avasegaina le le malamalama ua taŹ»ua o "Btrfs" o se atinaŹ»e mo mafuaŹ»aga ua uma ona ou faŹ»amatalaina.
O patch ta'itasi na'o le fa'ateteleina o ona fa'afitauli. Ia. ma e iai pea ituaiga eseese o āfaievageliaā e āgalue ai mea uma.ā Ole mea masani, o tamaiti aŹ»oga ma tamaiti aŹ»oga e misia lauga. Vaai faalemafaufau: e aoga mo ia, ae e le faia e le polofesa. E maeu le faanatinati o le adrenaline! Mai loŹ»u manatu, o le mea sili ona leaga e mafua mai i "tagata tufuga" o loŹ»o faanatinati atu ma le naunautai "faŹ»ailoga" foliga matagofie o Btrfs i luga o ituaiga uma e pei o systemd, docker, etc. - lea ua leva ona foliga metastases.
Sei o tatou taumafai nei e fai se tala mo le lima i le sefulu tausaga. Ua uma ona ou lisiina puupuu mea o le a tatou faia i Reiser4. O le lu'itau autu mo le au atina'e FS mai luga o le a (ioe, ua uma ona avea) o le le mafai ona faia se galuega lelei mo se totogi. A aunoa ma ni manatu i le fanua o le teuina o faʻamaumauga, o le a latou faʻaauau pea ona taumafai e faʻapipiʻi nei VFS le manuia, XFS ma ext4. O le tulaga i le VFS e foliga mai e malie tele i lenei talaaga, e faʻamanatu ai le faʻafouina faʻaonaponei o se faleaiga e leai ni kuka, ma e leai ni kuka e faʻamoemoeina.
O le taimi nei o le VFS code, e aunoa ma ni tuutuuga, lokaina le tele o itulau manatua i le taimi e tasi ma valaʻauina le FS faʻavae e faʻaogaina i latou. O lenei mea na faʻalauiloaina e faʻaleleia ai le faʻatinoga o le Ext4 i le tapeina o gaioiga, ae pei ona faigofie ona malamalama, o le loka faʻatasi e matua le fetaui ma faʻataʻitaʻiga faʻatauga. O lona uiga, e le mafai ona e faʻaopoopoina le lagolago mo nisi faila faila atamai i le fatu. Ou te le iloa pe o le a le tulaga o loʻo i ai i isi vaega o Linux, ae e tusa ai ma faila faila, o soʻo se atinaʻe iinei e foliga mai e le fetaui ma faiga faʻavae o loʻo tuliloaina e Torvalds i le faʻatinoga (poloketi aʻoga ua kiki i fafo, ma tagata taufaaleaga oe. leai se iloa po'o le a le B-laau, fa'atagaga e le gata e tu'uina atu). O le mea lea, na fa'atulaga ai se ala mo le fa'agesegese o le pala. O le mea moni, o le a latou taumafai ma lo latou malosi atoa e pasi atu o se "atinaʻe."
E le gata i lea, o le "tausia" o faila faila, ma le iloa o le a le tele se mea e te maua mai le "teu" na o oe, o le a taumafai o latou lima i se pisinisi e sili atu ona aoga. O nei mea, o se tulafono, tufatufaina faila faila ma virtualization. Masalo latou te faŹ»afeiloaŹ»i le ZFS faŹ»alelei i se isi mea e leŹ»i iai. Ae, pei o FS uma mai le pito i luga, e pei o le Tausaga Fou: afai e mafai ona e tautau nisi mea laiti i luga, ona e le mafai lea ona loloto. Ou te taŹ»utino atu e mafai ona fausia se faiga faŹ»apitoa tau atinaŹ»e e faŹ»avae i luga o le ZFS, ae talu ai o loŹ»o tatou talanoaina nei le lumanaŹ»i, e mafai ona ou taŹ»u atu ma le faŹ»anoanoa o le ZFS e leai se faŹ»amoemoe i lenei tulaga: faŹ»atasi ai ma a latou masini komepiuta, ua tipi ese e tama le okesene. mo i latou lava ma tupulaga o lumanaāi mo le atinaāe atili. O le ZFS o se mea o le taimi ua tuanaŹ»i. Ma ext4 ma XFS e leŹ»o le aso na muamua atu ananafi.
E taua le taʻua faʻapitoa e uiga i le manatu mataʻutia o le "Linux file system of next generation". O se poloketi faʻapolokiki ma maketi faʻapitoa na faia mo le avanoa, e tautala ai, e "faʻapipiʻi le lumanaʻi o faila faila" i Linux i tua o faʻamatalaga patino. O le mea moni o Linux sa masani ona "naʻo le malie". Ae o le taimi nei o le mea autu o se masini suʻe tupe. E faia i mea uma e mafai. Mo se faʻataʻitaʻiga, e matua faigata lava ona fatuina se mea lelei polokalama, ae ua leva ona iloa e "tagata atiae" popoto e leai se mea e manaʻomia e faʻalavelave ai: e mafai ona e faʻatau atu ma le manuia le leai o se polokalama na faʻasalalau ma faʻalauiloaina i ituaiga uma o tagata lautele. mea tutupu - o le mea autu o le faʻataʻitaʻiga faʻataʻitaʻiga e tatau ona aofia ai le tele o "faiga".
O faiga faila e lelei mo lenei mea, aua e mafai ona e faʻatau ma le saogalemu mo le sefulu tausaga i luga o le iʻuga. Ia, afai e faitio se tasi i se taimi mulimuli ane e uiga i le leai o se taunuuga, o lona uiga na te le malamalama i se mea e uiga i faila faila! E faamanatu mai ai se pyramid tau tupe: i le pito i luga o loʻo i ai le au faʻatauvaʻa na amataina lenei faʻalavelave, ma nai tagata na "laki": latou "aveesea tufatufaga," i.e. maua tupe mo atinaʻe, maua se galuega totogi lelei o ni pule, "faʻaalia" i konafesi, ma isi.
E soso'o mai ia i latou e "le manuia": latou te faitauina tupe gau, feagai ma taunuuga o le faʻaaogaina o se mea e le mafai ona faʻaaogaina polokalama i le gaosiga, "etc. E tele isi mea. Ia, i le pito i lalo o le pyramid o loʻo i ai se vaega tele o tagata atinaʻe "saʻili" tulafono le aoga. O i latou e sili ona faia'ina, aua o le taimi maumau e le mafai ona toe fa'afo'i. O ia pyramid e matua aoga tele ia Torvalds ma ana paaga. Ma o le tele o nei pyramid, o le sili atu lea mo i latou. Ina ia fafagaina ia pyramid, soo se mea e mafai ona ave i totonu. Ioe, i luma o tagata lautele latou te fai mai le faafeagai. Ae ou te le faamasino atu i upu a o faatinoga.
O lea la, "o le lumanaʻi o faila faila i Linux" o se isi faʻalauiloa maualuga, ae le mafai ona faʻaaogaina polokalama. A maeʻa Btrfs, faʻatasi ai ma se avanoa maualuga, o le nofoaga o sea "lumaluma" o le a ave e Bcachefs, o se isi taumafaiga e sopoia le poloka poloka Linux ma se faila faila (o se faʻataʻitaʻiga leaga e pipisi). Ma o le a le mea masani: e iai faʻafitauli tutusa e pei o Btrfs. Sa ou masalomia lenei mea mo se taimi umi, ona le mafai ai lea ona ou tetee ma tilotilo i totonu o le tulafono - e moni!
O tusitala o Bcachefs ma Btrfs, pe a fatuina a latou FS, na faʻaaogaina ma le malosi punaoa a isi tagata, e itiiti se malamalama e uiga ia i latou. O le tulaga e matua faamanatu mai ai le taaloga a tamaiti "telefoni gau." Ma e mafai ona ou mafaufauina pe faʻafefea ona aofia ai lenei code i totonu o le fatu. O le mea moni, e leai se tasi o le a vaʻaia le "rake" (o le a laa e tagata uma mulimuli ane). A maeʻa le tele o faitioga e uiga i le faiga o le tulafono, tuuaiga o soliga e le o iai, ma isi mea, o le a faia se faaiuga e uiga i le "faamaoni" o le tusitala, o le a le lelei o ia "fegalegaleai" ma isi tagata atiae, ma le manuia o nei mea uma. ona faatau atu lea i faalapotopotoga.
O le iuga o le a le fiafia i ai se tasi. I le luasefulu tausaga talu ai, masalo, ou te fiafia i ai, ae o lea ua ese fesili: pe mafai ona faʻalauiloa lenei mea ina ia faʻafaigaluegaina nisi tagata i totonu o le isi sefulu tausaga. Ma, talofa, e le o se aganuu le mafaufau e uiga i le iuga.
I se tulaga lautele, ou te matua fautuaina e aua le amata toe faʻafouina lau faila faila mai le sasa. Aua e oo lava i tupe teufaafaigaluega taua o le a le lava e maua ai se mea faatauva i le sefulu tausaga. Ioe, o loʻo ou talanoa e uiga i galuega mamafa, ae le o mea e faʻamoemoe e "tuleia" i totonu o le fatu. O lea la, o se auala e sili atu ona aoga e faʻaalia ai oe lava o le auai i atinaʻe moni, pei o matou. O le mea moni, e le faigofie ona fai - ae o le tulaga lea i soʻo se galuega maualuga.
Muamua, e tatau ona e faʻatoʻilaloina le faʻafitauli o le a ou ofoina atu. A maeʻa lena, talitonu i le ogaoga o ou faʻamoemoega, o le a amata ona ou fesoasoani. I le masani ai, tatou te faʻaaogaina naʻo tatou lava atinaʻe. O tuusaunoaga o algorithms compression ma nisi galuega hash. Matou te le auina atu ni tagata atinaʻe e malaga i konafesi, ona matou le nonofo lea ma tuʻufaʻatasia manatu o isi tagata ("atonu o le a le mea e tupu"), e pei ona masani ai i le tele o amataga.
Matou te atiina ae uma algorithms i matou lava. O lo'o ou fiafia nei i le algebraic ma le tu'ufa'atasiga o fa'amaumauga fa'asaienisi. Aemaise lava, fanua faʻatapulaʻa, asymptotics, faʻamaoniga o le le tutusa. E i ai foi galuega mo tagata fai polokalame masani, ae e tatau ona ou lapataia oe i le taimi lava lena: o fautuaga uma e "vaai i se isi FS ma fai tutusa" e le amanaiaina. Patches e faʻatatau i le vavalalata vavalalata ma Linux e ala i le VFS o le a alu foi iina.
O lea la, e leai se matou salu, ae matou te malamalama i le mea e tatau ona matou agai i ai, ma matou te talitonu o lenei itu e saʻo. O lenei malamalama e lei oo mai i se manai mai le lagi. Sei ou faamanatu atu ia te oe o loo i ai le 29 tausaga o le atinaʻe i tua atu o matou, lua faila faila na tusia mai le amataga. Ma le numera tutusa o faʻamatalaga toe faʻaleleia aoga. Ma e tele naua!
puna: opennet.ru
