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.

Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1

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:

  1. Ho boloka data ho disk.
  2. Indexing. Se ka har'a masakaneng ke senotlolo (lingoliloeng tsa Senyesemane - "subscript"), 'me ka ho le letona la ba lekanang ke boleng ("node value").
  3. 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.

Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1

  • 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

Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1

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.

Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1

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.

Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1

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.

Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1Liphapang:

  1. Li-node tsa ka hare: boitsebiso lefatšeng ka bophara bo ka bolokoa sebakeng se seng le se seng, eseng feela lipheletsong tsa makala.
  2. 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?

  1. 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.
  2. 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.

    Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1

  3. 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.
  4. 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.

Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1
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")

Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 1

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

Kopanya
Ho kopitsa subtree

bolaea
Ho tlosa subtree

ZKill
Ho hlakola boleng ba node e itseng. Sefate se senyenyane se hlahang node ha se amehe

$Potso
Phallo e felletseng ea sefate, e kenang botebong ba sefate

$Odara
Makala a pharalletseng a node e itseng

Lintlha tsa $
Ho hlahloba hore na node e hlalositsoe

$Keketseho
Atomic incrementing value node. Ho qoba ho bala le ho ngola, bakeng sa ACID. Haufinyane tjena ho khothalelitsoe ho fetohela ho $Tatelano

Re leboha tlhokomelo ea hau, re ikemiselitse ho araba lipotso tsa hau.

ikgololo: Sengoliloeng sena le litlhaloso tsa ka ho sona ke maikutlo a ka mme ha li amane le boemo ba semmuso ba InterSystems Corporation.

Tsoelo-pele Globals ke lisabole tsa matlotlo bakeng sa ho boloka data. Lifate. Karolo ea 2. U tla ithuta hore na ke mefuta efe ea data e ka hlahisoang ho li-globals le hore na ke mesebetsi efe e fanang ka molemo o moholo.

Source: www.habr.com

Eketsa ka tlhaloso