ProHoster > Blog > Tsamaiso > Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1
Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1
Lisabole tsa 'nete tsa database - li-globals - ke khale li tsejoa, empa ke ba fokolang ba tsebang ho li sebelisa ka katleho kapa ha ba na sebetsa sena ho hang.
Haeba u sebelisa li-globals ho rarolla mathata ao li hlileng li leng molemo ho tsona, u ka fumana liphello tse babatsehang. Ekaba ka tlhahiso kapa ho nolofatsa tharollo ea bothata (1, 2).
Globals ke mokhoa o ikhethileng oa ho boloka le ho sebetsana le data, e fapaneng ka ho felletseng le litafole ho SQL. Li ile tsa hlaha ka 1966 ka puo eo M(UMPS) (tsoelo-pele ea ho iphetola ha lintho - Cache ObjectScript, ka mor'a mona COS) sebakeng sa polokelo ea litaba tsa bongaka 'me e ntse e le teng e sebedisoang ka mafolofolo, hape e kenelletse libakeng tse ling moo ho ts'epahalang le ts'ebetso e phahameng e hlokahalang: lichelete, khoebo, joalo-joalo.
Li-Globals ho li-DBMS tsa sejoale-joale li tšehetsa litšebelisano, ho rema lifate, ho pheta-pheta, le ho arola. Tseo. li ka sebelisoa ho aha litsamaiso tsa sejoale-joale, tse tšepahalang, tse ajoang le tse potlakileng.
Li-Globals ha li u felle feela ho mohlala oa likamano. Ba u fa bolokolohi ba ho hlahisa libopeho tsa data tse lokiselitsoeng mesebetsi e itseng. Bakeng sa lits'ebetso tse ngata, tšebeliso e bohlale ea lefatše e ka ba sebetsa sa lekunutu, se fanang ka ts'ebetso eo baetsi ba likopo tsa likamano ba ka e lorang feela.
Globals e le mokhoa oa ho boloka data e ka sebelisoa ka lipuo tse ngata tsa morao-rao tsa lenaneo, tse phahameng le tse tlaase. Ka hona, sehloohong sena ke tla tsepamisa maikutlo ka ho khetheha ho li-globals, eseng ka puo eo li kileng tsa tsoa ho eona.
2. Kamoo lefatše le sebetsang kateng
Ha re qale ka ho utloisisa hore na li-globals li sebetsa joang le hore na matla a tsona ke afe. Li-globals li ka shejoa ka maikutlo a fapaneng. Karolong ena ea sehlooho re tla li sheba e le lifate. Kapa joalo ka libaka tsa polokelo tsa data tsa maemo a holimo.
Ka mantsoe a bonolo, lefats'e ke letoto le phehellang. Sehlopha se bolokoang ho diski ka boiketsetso.
Ho thata ho nahana ntho e bonolo ho boloka data. Ka khoutu (ka lipuo tsa COS/M) e fapane le sehlopha se tloaelehileng sa asociative feela ka letšoao. ^ pele ho lebitso.
Ho boloka data lefatšeng ka bophara, ha ho hlokahale hore u ithute puo ea lipotso tsa SQL; litaelo tsa ho sebetsa le tsona li bonolo haholo. Li ka ithutoa ka hora.
A re qaleng ka mohlala o bonolo ka ho fetisisa. Sefate sa boemo bo le bong se nang le makala a 2. Mehlala e ngotsoe ka COS.
Set ^a("+7926X") = "John Sidorov"
Set ^a("+7916Y") = "Sergey Smith"
Ha o kenya tlhahisoleseding lefats'eng lohle (Set command), lintho tse 3 li etsahala ka bohona:
Ho boloka data ho disk.
Indexing. Se ka har'a masakaneng ke senotlolo (lingoliloeng tsa Senyesemane - "subscript"), 'me ka ho le letona la ba lekanang ke boleng ("node value").
Ho hlopha. Lintlha li hlophisoa ka senotlolo. Nakong e tlang, ha u tšela sehlopha, ntho ea pele e tla ba "Sergey Smith", le ea bobeli "John Sidorov". Ha o fumana lenane la basebelisi ho tsoa lefats'eng lohle, database ha e senye nako ho hlophisa. Ho feta moo, o ka kopa tlhahiso ea lenane le hlophisitsoeng, ho qala ka senotlolo leha e le sefe, esita le se seng teng (sehlahisoa se tla qala ho tloha senotlolo sa pele sa sebele, se tlang ka mor'a se seng teng).
Mesebetsi ena kaofela e etsahala ka potlako e makatsang. K'homphieutheng ea ka ea lapeng ke ne ke fumana litekanyetso tse fihlang ho tse 750 / sec ka ts'ebetso e le 'ngoe. Ho li-processor tsa li-multi-core, boleng bo ka fihla mashome a limilione kenya/sec.
Ha e le hantle, lebelo la ho kenya ka boeona ha le bue haholo. Ka mohlala, u ka ngola tlhahisoleseling kapele ho lifaele tsa mongolo - joalo ka sena rumored Ts'ebetso ea li-visa e sebetsa. Empa tabeng ea li-globals, re fumana polokelo e hlophisitsoeng e hlophisitsoeng ka lebaka leo, e ka sebetsang habonolo le ka potlako nakong e tlang.
Matla a maholo ka ho fetisisa a lefats'e ke lebelo leo li-node tse ncha li ka kenngoa ka lona.
Lintlha tsa lefats'e li lula li le teng. Ho li tšela, ka bobeli boemong bo le bong le botebong ba sefate, kamehla ho potlakile.
Ha re eketse makala a mang a 'maloa a boemo ba bobeli le ba boraro lefatšeng ka bophara.
Set ^a("+7926X", "city") = "Moscow"
Set ^a("+7926X", "city", "street") = "Req Square"
Set ^a("+7926X", "age") = 25
Set ^a("+7916Y", "city") = "London"
Set ^a("+7916Y", "city", "street") = "Baker Street"
Set ^a("+7916Y", "age") = 36
Ho hlakile hore lifate tsa mekhahlelo e mengata li ka hahoa ho ipapisitsoe le lefatše. Ho feta moo, ho fihlella node leha e le efe e batla e le hang-hang ka lebaka la auto-indexing nakong ea ho kenya. 'Me boemong bofe kapa bofe ba sefate, makala ohle a hlophisoa ka senotlolo.
Joalokaha u bona, lintlha li ka bolokoa ka senotlolo le boleng. Kakaretso ea bolelele ba senotlolo (palo ea bolelele ba li-index tsohle) e ka fihla 511 li-byte, le litekanyetso 3.6 MB bakeng sa Cache. Palo ea maemo sefateng (palo ea litekanyo) ke 31.
Ntlha e 'ngoe e thahasellisang. U ka haha sefate ntle le ho hlalosa boleng ba li-node tsa maemo a holimo.
Set ^b("a", "b", "c", "d") = 1
Set ^b("a", "b", "c", "e") = 2
Set ^b("a", "b", "f", "g") = 3
Masakana a se nang letho ke li-node tse se nang boleng bo fanoeng.
E le ho utloisisa lefatše hantle, a re li bapise le lifate tse ling: lifate tsa serapa le lifate tsa mabitso a tsamaiso ea lifaele.
Ha re bapise lifate tsa lefats'e le libopeho tse tloaelehileng tsa maemo a holimo ho rona: le lifate tse tloaelehileng tse melang lirapeng le masimong, hammoho le litsamaiso tsa lifaele.
Joalokaha re bona lifateng tsa serapeng, makhasi le litholoana li fumanoa feela lipheletsong tsa makala.
Litsamaiso tsa faele - tlhahisoleseling e bolokoa feela lipheletsong tsa makala, e leng mabitso a lifaele tse tšoanelehang ka botlalo.
Mme mona ke sebopeho sa data sa lefats'e.
Liphapang:
Li-node tsa ka hare: boitsebiso lefatšeng ka bophara bo ka bolokoa sebakeng se seng le se seng, eseng feela lipheletsong tsa makala.
Li-node tsa kantle: Lefatše le tlameha ho ba le litekanyetso tse hlalositsoeng lipheletsong tsa makala, athe FS le lifate tsa jareteng ha li joalo.
Mabapi le li-node tsa ka hare, re ka re sebopeho sa lefats'e ke setsi se seholo sa sebopeho sa lifate tsa mabitso ho litsamaiso tsa lifaele le lifate tsa jareteng. Tseo. tenyetsehang ho feta.
Ka kakaretso, lefats'e ke sefate se laetsoeng se nang le bokhoni ba ho boloka data sebakeng se seng le se seng.
Ho utloisisa hamolemo mosebetsi oa lefatše lohle, a re nahaneng hore na ho ne ho tla etsahala eng haeba baetsi ba litsamaiso tsa lifaele ba ne ba sebelisa mokhoa o tšoanang le oa lefatše ho boloka tlhahisoleseling?
Ho hlakola faele e le 'ngoe bukeng ho tla hlakola bukana ka bo eona, hammoho le li-directory tsohle tse nang le bukana e le 'ngoe feela e sa tsoa hlakoloa.
Ho ne ho ke ke ha hlokahala li-directory. Ho ne ho tla ba le lifaele tse nang le li-subfiles le lifaele tse se nang li-subfiles. Haeba ho bapisoa le sefate se tloaelehileng, joale lekala ka leng le ne le tla fetoha litholoana.
Lintho tse kang README.txt lifaele li kanna tsa se hlokehe. Ntho e 'ngoe le e 'ngoe e neng e hloka ho boleloa ka litaba tsa bukana e ne e ka ngoloa faeleng ea directory ka boeona. Sebakeng sa tsela, lebitso la faele ha le khethollehe ho lebitso la directory, kahoo ho ne ho khoneha ho feta ka lifaele feela.
Lebelo la ho hlakola li-directory tse nang le li-subdirectories le lifaele li tla eketseha haholo. Ka makhetlo a mangata ho Habré ho bile le lingoliloeng tse mabapi le hore na ho nka nako e kae le ho thata ho hlakola limilione tsa lifaele tse nyane (1, 2). Leha ho le joalo, haeba u etsa pseudo-file system lefatšeng ka bophara, ho tla nka metsotsoana kapa likaroloana tsa eona. Ha ke lekoa ho hlakola li-subtrees khomphuteng ea lapeng, e ile ea tlosa li-node tse limilione tse 1-96 sefateng se nang le likarolo tse peli ho HDD (eseng SSD) ka motsotsoana oa 341. Ho feta moo, re bua ka ho hlakola karolo ea sefate, eseng feela faele eohle e nang le globals.
Ho tlosa subtrees ke ntlha e 'ngoe e matla ea lefats'e. Ha o hloke ho iphetetsa bakeng sa sena. Sena se etsahala ka potlako e makatsang.
Sefateng sa rona sena se ka etsoa ka taelo bolaea.
Kill ^a("+7926X")
Bakeng sa kutloisiso e betere ea hore na ke liketso life tse fumanehang ho rona holim'a lefats'e, ke tla fana ka tafole e khutšoanyane.
Litaelo tsa mantlha le mesebetsi ea ho sebetsa le li-globals ho COS
Ipehele
Ho beha makala ho node (haeba e e-s'o hlalosoe) le litekanyetso tsa node