Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ka nako e 'ngoe nakong e tlang e hole, ho tlosoa ha data ho sa hlokahaleng e tla ba o mong oa mesebetsi ea bohlokoa ea DBMS [1]. Khabareng, rona ka borona re hloka ho hlokomela ho hlakola kapa ho tsamaisa data e sa hlokahaleng ho sistimi ea polokelo e theko e tlase. Ha re re u nkile qeto ea ho hlakola mela e limilione tse 'maloa. Mosebetsi o bonolo, haholo-holo haeba boemo bo tsejoa mme ho na le index e loketseng. "Tlosa ho tloha tafoleng1 HOO col1 = :value" - ke eng e ka bang bonolo haholoanyane, na?

Video:

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

  • Ke bile komiting ea lenaneo la Highload ho tloha selemong sa pele, ke hore ho tloha ka 2007.

  • Ke bile le Postgres ho tloha 2005. E sebelitse mererong e mengata.

  • Sehlopha se nang le RuPostges hape ho tloha 2007.

  • Re holile ho ba barupeluoa ba 2100+ ho Meetup. Ke ea bobeli lefatšeng ka mor'a New York, e hapiloeng ke San Francisco ka nako e telele.

  • Ke lutse California lilemo tse 'maloa. Ke sebetsana haholo le lik'hamphani tsa Amerika, ho kenyelletsa le tse kholo. Ke basebelisi ba mafolofolo ba Postgres. 'Me ho na le mefuta eohle ea lintho tse thahasellisang.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

https://postgres.ai/ ke k'hamphani ea ka. Re khoebong ea ho iketsetsa mesebetsi e felisang ho fokotseha ha nts'etsopele.

Haeba u etsa ho hong, joale ka linako tse ling ho na le mofuta oa li-plug ho potoloha Postgres. Ha re re u lokela ho emela hore admin e be le sebaka sa teko bakeng sa hau, kapa u lokela ho emela hore DBA e u arabe. 'Me re fumana litšitiso tse joalo molemong oa nts'etsopele, tlhahlobo le tsamaiso mme re leka ho li felisa ka thuso ea boiketsetso le mekhoa e mecha.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

https://www.seagate.com/files/www-content/our-story/trends/files/idc-seagate-dataage-whitepaper.pdf

Haufinyane tjena ke ne ke le VLDB e Los Angeles. Ena ke kopano e kholo ka ho fetisisa ea datha. 'Me ho ne ho e-na le tlaleho ea hore nakong e tlang DBMS e ke ke ea boloka feela, empa hape e tla hlakola data ka bo eona. Ena ke sehlooho se secha.

Ho na le lintlha tse ngata lefatšeng tsa zettabyte - ke 1 petabytes. 'Me hona joale ho se ho hakanngoa hore re na le li-zettabyte tse fetang 000 tsa data tse bolokiloeng lefatšeng. 'Me ho na le ba bangata le ho feta ba bona.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

https://vldb2019.github.io/files/VLDB19-keynote-2-slides.pdf

Le ho etsa eng ka eona? Ho hlakile hore e hloka ho tlosoa. Sehokelo sa tlaleho ena e khahlisang ke ena. Empa ho fihlela joale sena ha se e-so kenngoe tšebetsong ho DBMS.

Ba khonang ho bala chelete ba batla lintho tse peli. Ba batla hore re hlakole, ka hona ka tekheniki re lokela ho e etsa.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Seo ke tla se bua ka mor'a moo ke boemo bo bong bo sa utloahaleng bo kenyelletsang bongata ba maemo a nnete, ke hore, mofuta oa pokello ea se hlileng se etsahetseng ho 'na le li-database tse potolohileng makhetlo a mangata, lilemo tse ngata. Li-rakes li hohle 'me e mong le e mong oa li hatakela ka linako tsohle.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ha re re re na le motheo kapa metheo e mengata e ntseng e hola. 'Me litlaleho tse ling ho hlakile hore ke litšila. Mohlala, mosebelisi o ile a qala ho etsa ntho e itseng moo, empa ha a ka a e qeta. 'Me ka mor'a nako e itseng rea tseba hore sena se sa phethoang se ke ke sa hlola se bolokoa. Ke hore, re ka rata ho hloekisa lintho tse ling tsa litšila e le ho boloka sebaka, ho ntlafatsa ts'ebetso, joalo-joalo.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ka kakaretso, mosebetsi ke ho iketsetsa ho hlakoloa ha lintho tse itseng, mela e itseng tafoleng e itseng.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

'Me re na le kopo e joalo, eo re tla bua ka eona kajeno, ke hore, ka ho tlosoa ha lithōle.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Re ile ra kopa moqapi ea nang le phihlelo ho e etsa. O ile a nka kopo ena, a itlhahloba - tsohle lia sebetsa. E lekoa sethaleng - tsohle li hantle. E phethiloe - tsohle lia sebetsa. Hang ka letsatsi rea e tsamaisa - tsohle li hantle.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Database ea hola le ho hola. Letsatsi le letsatsi DELETE e qala ho sebetsa butle hanyane.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Joale re utloisisa hore hona joale re na le k'hamphani ea ho rekisa 'me sephethephethe se tla ba seholo ka makhetlo a' maloa, kahoo re etsa qeto ea ho emisa ka nakoana lintho tse sa hlokahaleng. Le ho lebala ho khutla.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Likhoeli tse seng kae hamorao ba ile ba hopola. 'Me moqapi eo o ile a tlohela kapa o phathahane ka ntho e' ngoe, a laela e mong ho e khutlisa.

O ile a sheba dev, ha a le sethaleng - tsohle li lokile. Ka tlhaho, u ntse u hloka ho hloekisa se bokeletseng. O hlahlobile tsohle li sebetsa.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ho etsahala'ng ka mor'a moo? Joale ntho e 'ngoe le e' ngoe e oela ho rona. E theoha hoo ka nako e 'ngoe ntho e' ngoe le e 'ngoe e oelang fatše. E mong le e mong o maketse, ha ho motho ea utloisisang se etsahalang. Eaba hoa fumaneha hore taba ena e ne e le ka har’a HLAKOTSO ena.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ho na le phoso e etsahetseng? Mona ke lethathamo la lintho tse ka beng li fositse. Ke efe ho tsee e leng ea bohlokoa ka ho fetisisa?

  • Ka mohlala, ho ne ho se na tlhahlobo, ke hore, setsebi sa DBA ha sea ka sa e sheba. Hang-hang o ne a tla fumana bothata ka leihlo le nang le phihlelo, 'me ntle le moo, o na le mokhoa oa ho fumana li-prod, moo mela e limilione tse' maloa e bokeletseng.

  • Mohlomong ba hlahlobile ho hong ho phoso.

  • Mohlomong hardware e siiloe ke nako 'me u hloka ho ntlafatsa setsi sena.

  • Kapa ho na le ho hong ho phoso ka database ka boeona, 'me re hloka ho tloha Postgres ho ea MySQL.

  • Kapa mohlomong ho na le phoso ka opereishene.

  • Mohlomong ho na le liphoso tse ling mokhatlong oa mosebetsi 'me u hloka ho leleka motho le ho hira batho ba molemo ka ho fetisisa?

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ho ne ho se na cheke ea DBA. Haeba ho ne ho e-na le DBA, o ne a tla bona mela ena e limilione tse 'maloa esita le ntle le liteko leha e le life tse neng li tla re: "Ha ba etse joalo." Ha re re haeba khoutu ena e ne e le GitLab, GitHub 'me ho ne ho tla ba le ts'ebetso ea tlhahlobo ea khoutu' me ho ne ho se joalo ntle le tumello ea DBA ts'ebetso ena e ka etsahala ka prod, joale ho hlakile hore DBA e ne e tla re: "Sena se ke ke sa etsoa. ”

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

'Me o ne a tla re u tla ba le mathata le disk IO' me lits'ebetso tsohle li tla hlanya, ho ka 'na ha e-ba le liloko, hape u tla thibela autovacuum ka metsotso e mengata, kahoo sena ha se setle.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

http://bit.ly/nancy-hl2018-2

Phoso ea bobeli - ba ile ba hlahloba sebakeng se fosahetseng. Re bone ka mor'a taba ea hore boitsebiso bo bongata bo se nang thuso bo bokelloa ho prod, empa moqapi o ne a se na boitsebiso bo bokelletsoeng sebakeng sena sa polokelo ea litaba, 'me ha ho motho ea entseng junk ena nakong ea lipapali. Ka hona, ho ne ho e-na le mela e 1 000 e ileng ea sebetsa kapele.

Rea utloisisa hore liteko tsa rona li fokola, ke hore ts'ebetso e hahiloeng ha e tšoare mathata. Teko e lekaneng ea DB ha ea etsoa.

Teko e nepahetseng e ka etsoa ka lisebelisoa tse tšoanang. Hase kamehla ho ka khonehang ho etsa sena ka thepa e tšoanang, empa ke habohlokoa haholo hore e be kopi e feletseng ea database. Sena ke seo esale ke se bolela ka lilemo tse ngata joale. 'Me selemong se fetileng ke buile ka sena, u ka e shebella kaofela ho YouTube.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Mohlomong lisebelisoa tsa rona li mpe? Haeba u sheba, joale latency e ile ea qhoma. Re bone hore ts'ebeliso ke 100%. Ehlile, haeba tsena e ne e le li-drive tsa NVMe tsa sejoale-joale, mohlomong ho ne ho tla ba bonolo ho rona. 'Me mohlomong re ne re ke ke ra bua ka eona.

Haeba u na le maru, joale ntlafatso e etsoa habonolo moo. E hlahisitse likopi tse ncha ho Hardware e ncha. switchover. Mme tsohle di lokile. Ho bonolo haholo.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Na hoa khoneha ho ama li-disk tse nyane ka tsela e itseng? 'Me mona, ka thuso ea DBA feela, re ikakhela ka setotsoana sehloohong se itseng se bitsoang checkpoint tuning. Ho ile ha fumaneha hore ha rea ​​ka ra ba le tokiso ea li-checkpoint.

Sebaka sa ho hlahloba ke eng? E ho DBMS efe kapa efe. Ha o na le data memoring e fetohang, ha e ngoloe hang hang ho disk. Tlhahisoleseding eo data e e fetotseng e qala ho ngolloa ho log-ahead log. 'Me ka nako e' ngoe, DBMS e etsa qeto ea hore ke nako ea ho lahla maqephe a sebele ho disk, e le hore haeba re hlōleha, re ka etsa ho fokolang REDO. E tšoana le ntho ea ho bapala. Haeba re bolaoa, re tla qala papali ho tloha sebakeng sa ho qetela sa tlhahlobo. 'Me DBMS eohle e e sebelisa.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Litlhophiso tsa Postgres li salletse morao. Li etselitsoe lilemo tse 10-15 tsa data le litšebelisano. Le sebaka sa tlhahlobo ha se mokhelo.

Lintlha tse tsoang tlalehong ea rona ea tlhahlobo ea Postgres ke tsena, ke hore, tlhahlobo ea bophelo bo botle. Mme mona ho na le database ea li-terabyte tse 'maloa. 'Me ho ka bonoa hantle hore ho qobelletsoe ho hlahlojoa hoo e ka bang 90% ea linyeoe.

E bolelang? Ho na le li-setting tse peli moo. Checkpoint e ka tla ka nako ea nako, mohlala, ka metsotso e 10. Kapa e ka tla ha data e ngata e tlatsitsoe.

'Me ka ho sa feleng max_wal_saze e behiloe ho 1 gigabyte. Ha e le hantle, sena se hlile se etsahala Postgres ka mor'a 300-400 megabytes. U fetotse data e ngata haholo mme sebaka sa hau sa tlhahlobo sea etsahala.

'Me haeba ho se motho ea e hlophisitseng,' me tšebeletso e ile ea hōla, 'me k'hamphani e fumana chelete e ngata, e na le litšebelisano tse ngata, joale sebaka sa ho hlahloba se tla hang ka motsotso, ka linako tse ling metsotsoana e meng le e meng ea 30,' me ka linako tse ling e bile e kopana. Sena se mpe haholo.

'Me re lokela ho etsa bonnete ba hore e tla khafetsa. Ke hore, re ka phahamisa max_wal_size. 'Me e tla fokotseha khafetsa.

Empa re thehile mokhoa o felletseng oa ho e etsa ka nepo haholoanyane, ke hore, ho etsa qeto mabapi le ho khetha litlhophiso, ho ipapisitse le data e itseng.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ka hona, re etsa liteko tse peli tsa liteko ho database.

Letoto la pele - re fetola max_wal_size. Mme re etsa opereishene e kgolo. Taba ea pele, re e etsa ka tlhophiso ea kamehla ea 1 gigabyte. 'Me re etsa DELETE e kholo ea mela e limilione.

Le ka bona kamoo ho leng boima kateng ho rona. Re bona hore disk IO e mpe haholo. Re sheba hore na re hlahisitse li-WAL tse kae, hobane sena se bohlokoa haholo. A re bone hore na sebaka seo sa tlhahlobo se etsahetse ka makhetlo a makae. 'Me rea bona hore ha e ntle.

E latelang re eketsa max_wal_size. Re pheta. Re eketsa, re pheta. Le ka makhetlo a mangata. Ha e le hantle, lintlha tse 10 li ntle, moo 1, 2, 4, 8 gigabytes. 'Me re sheba boitšoaro ba tsamaiso e itseng. Ho hlakile hore mona lisebelisoa li lokela ho tšoana le prod. O tlameha ho ba le li-disk tse tšoanang, memori e lekanang, le litlhophiso tse tšoanang tsa Postgres.

'Me ka tsela ena re tla fapanyetsana tsamaiso ea rona,' me rea tseba hore na DBMS e tla itšoara joang haeba ho e-na le boima bo bobe ba DELETE, hore na e tla hlahloba joang.

Sebaka sa ho hlahloba ka Serussia ke libaka tsa ho hlahloba.

Mohlala: HLAKOLA mela e limilione tse 'maloa ka index, mela e "scattered" maqepheng.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Mohlala ke ona. Ena ke motheo o itseng. 'Me ka tlhophiso ea kamehla ea 1 gigabyte bakeng sa max_wal_size, ho hlakile haholo hore li-disk tsa rona li ea shelefong bakeng sa ho rekota. Setšoantšo sena ke letšoao le tloaelehileng la mokuli ea kulang haholo, ke hore, o ne a hlile a utloa bohloko. Mme ho bile le opereishene e le nngwe, ho ne ho na le DELETE ea mela e limilione tse 'maloa.

Haeba ts'ebetso e joalo e lumelloa ka prod, joale re tla robala feela, hobane ho hlakile hore DELETE e le 'ngoe e re bolaea ka har'a sehlopha.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ho feta moo, moo 16 gigabytes, ho hlakile hore meno a se a tsamaile. Meno a se a ntse a le betere, ke hore, re ntse re kokota holim'a siling, empa ha ho joalo. Ho ne ho e-na le tokoloho e itseng moo. Ka ho le letona ke rekoto. Le palo ea ts'ebetso - kerafo ea bobeli. 'Me ho hlakile hore re se re phefumoloha hanyenyane ha 16 gigabytes.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

'Me moo 64 gigabytes e ka bonoang hore e se e le betere ka ho feletseng. Hona joale meno a se a ntse a bitsoa, ​​​​ho na le menyetla e mengata ea ho phela mesebetsing e meng le ho etsa ntho e itseng ka disk.

Hobaneng ho le joalo

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ke tla kenella lintlheng hanyane, empa sehlooho sena, mokhoa oa ho etsa tokiso ea li-checkpoint, se ka fella ka tlaleho e felletseng, ka hona, nke ke ka kenya lintho tse ngata, empa ke tla hlalosa hanyane hore na ho na le mathata afe.

Haeba tlhahlobo e etsahala hangata, 'me re ntlafatsa mela ea rona eseng ka tatellano, empa re fumana ka index, e ntle, hobane ha re hlakole tafole eohle, joale ho ka etsahala hore qalong re ama leqephe la pele, ebe la sekete, eaba o khutlela ho oa pele . 'Me haeba pakeng tsa maeto ana ho leqephe la pele, sebaka sa ho hlahloba se se se se bolokile ho disk, joale se tla se boloka hape, hobane re se silafetse lekhetlo la bobeli.

'Me re tla qobella ho hlahloba ho e boloka hangata. Ho ne ho tla ba le liopereishene tse ngata hakae bakeng sa hae.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Empa ha se phetho. Maqephe ke li-kilobyte tse 8 ho Postgres le li-kilobyte tse 4 ho Linux. Mme ho na le tlhophiso_e felletseng_e ngolang. E lumelloa ke kamehla. 'Me sena se nepahetse, hobane haeba re e tima, joale ho na le kotsi ea hore halofo ea leqephe e tla bolokeha haeba e ka senyeha.

Boitšoaro ba ho ngolla WAL ea log ea pele ke hore ha re e-na le sebaka sa ho hlahloba 'me re fetola leqephe ka lekhetlo la pele, leqephe lohle, ke hore, li-kilobyte tsohle tsa 8, li kena ka har'a log e ka pele, le hoja re fetotse feela mola, o boima ba li-byte tse 100 . Mme re tlameha ho ngola leqephe lohle.

Liphetohong tse latelang ho tla ba le tuple e itseng feela, empa ka lekhetlo la pele re ngola ntho e 'ngoe le e' ngoe.

'Me, ka hona, haeba tlhahlobo e etsahetse hape, joale re tlameha ho qala ntho e' ngoe le e 'ngoe ho tloha qalong hape ebe re sutumelletsa leqephe lohle. Ka li-checkpoints khafetsa, ha re tsamaea maqepheng a tšoanang, full_page_writes = on e tla ba ho feta kamoo e ka bang kateng, ke hore re hlahisa WAL e ngata. Tse ling li romelloa ho likopi, ho polokelo ea litaba, ho disk.

'Me, ka hona, re na le likhetho tse peli.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Haeba re eketsa max_wal_size, ho bonahala re etsa hore ho be bonolo ho li-checkpoint le wal writer. Mme hoo ho hotle.

Ha re kenye terabyte mme re phele ka eona. Ke eng e mpe ka eona? Sena se mpe, hobane haeba ho ka ba le ho hloleha, re tla hloa lihora tse ngata, hobane sebaka sa ho hlahloba se ne se le khale haholo 'me lintho tse ngata li se li fetohile. Mme re hloka ho etsa REDO ena kaofela. 'Me kahoo re etsa letoto la bobeli la liteko.

Re etsa opereishene mme re bona ha tlhahlobo e se e tla phetheloa, re bolaea -9 Postgres ka boomo.

'Me ka mor'a moo re e qala hape,' me re bone hore na e tla phahama ka nako e kae ho thepa ena, ke hore na e tla etsa REDO e kae boemong bona bo bobe.

Ka makhetlo a mabeli ke tla hlokomela hore boemo bo bobe. Taba ea pele, re ile ra soahlamana pele sebaka sa tlhahlobo se fela, kahoo ho na le lintho tse ngata tseo re lokelang ho li lahleheloa. Mme sa bobedi, re ile ra ba le opereishene e kgolo. 'Me haeba li-checkpoints li ne li le ka nako, joale, mohlomong, WAL e nyenyane e ne e tla hlahisoa ho tloha ha ho hlahlojoa ho qetela. Ke hore, ke molahlehi habeli.

Re lekanya boemo bo joalo bakeng sa boholo bo fapaneng ba max_wal_size mme re utloisisa hore haeba max_wal_size ke li-gigabytes tse 64, joale maemong a mabeli a mabe ka ho fetisisa re tla hloa metsotso e 10. Mme re nahana hore na e a re tshwanela kapa tjhe. Ena ke potso ea khoebo. Re hloka ho bonts'a setšoantšo sena ho ba ikarabellang bakeng sa liqeto tsa khoebo le ho botsa, "Re ka robala nako e kae ha ho hlaha bothata? Na re ka robala boemong bo bobe ka ho fetisisa metsotso e 3-5? 'Me u etsa qeto.

'Me ntlha e thahasellisang ke ena. Re na le litlaleho tse 'maloa mabapi le Patroni kopanong. 'Me mohlomong u e sebelisa. Ena ke autofailover bakeng sa Postgres. GitLab le Data Egret li buile ka sena.

'Me haeba u na le autofailover e tlang ka metsotsoana e 30, mohlomong re ka robala metsotso e 10? Hobane re tla fetohela ho replica ntlheng ena, 'me tsohle li tla loka. Ena ke ntlha e makatsang. Ha ke tsebe karabo e hlakileng. Ke nahana hore taba ena ha e amane feela le ho hlaphoheloa ha kotsi.

Haeba re e-na le nako e telele ea ho hlaphoheloa ka mor'a ho hlōleha, joale re tla be re sa phutholoha maemong a mang a mangata. Ka mohlala, litekong tse tšoanang, ha re etsa ntho e itseng 'me ka linako tse ling re tlameha ho ema metsotso e 10.

Ke ntse nke ke ka ea hole haholo, leha re ka ba le autofailover. E le molao, litekanyetso tse kang 64, 100 gigabytes ke boleng bo botle. Ka linako tse ling ho bohlokoa le ho khetha tse nyane. Ka kakaretso, ena ke saense e poteletseng.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ho etsa li-iterations, mohlala, max_wal_size =1, 8, o hloka ho pheta ts'ebetso ea boima ka makhetlo a mangata. U e entse. 'Me motheong o tšoanang u batla ho e etsa hape, empa u se u hlakotse tsohle. Se o lokelang ho se etsa?

Ke tla bua hamorao ka tharollo ea rona, seo re se etsang ho pheta-pheta maemong a joalo. 'Me ona ke mokhoa o nepahetseng ka ho fetisisa.

Empa tabeng ena, re bile lehlohonolo. Haeba, joalo ka ha e bolela mona, "QALA, HLAkola, ROLLBACK", joale re ka pheta HLAKOA. E leng hore ha re e hlakotse ka borona, joale re ka e pheta. 'Me 'meleng ho uena data e tla robala sebakeng se le seng. Ha u na le bloat leha e le efe. U ka pheta-pheta DELETE tse joalo.

DELETE ena e nang le ROLLBACK e nepahetse bakeng sa tokiso ea sebaka sa tlhahlobo, leha o sena li-laboratory tsa database tse behiloeng hantle.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Re entse poleiti ka kholomo e le 'ngoe "i". Postgres e na le litšiea tsa lisebelisoa. Ha li bonahale ntle le haeba li botsoa ka ho toba. Tsena ke: ctid, xmid, xmax.

Ctid ke aterese ea sebaka. Leqephe la Zero, tuple ea pele leqepheng.

Ho ka bonoa hore ka mor'a ROOLBACK tuple e ile ea lula sebakeng se le seng. Ke hore re ka leka hape, e tla itšoara ka tsela e tšoanang. Ena ke eona ntho e ka sehloohong.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Xmax ke nako ea lefu la tuple. E ile ea hatisoa, empa Postgres oa tseba hore thekiso e khutliselitsoe morao, kahoo ha ho na taba hore na ke 0 kapa ke transaction e khutliselitsoeng morao. Sena se fana ka maikutlo a hore hoa khoneha ho pheta-pheta DELETE le ho hlahloba ts'ebetso e ngata ea boits'oaro ba sistimi. U ka etsa li-laboratory tsa database bakeng sa mafutsana.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Sena se mabapi le baetsi ba mananeo. Mabapi le DBA, le bona, ba lula ba khalemela baetsi ba mananeo bakeng sa sena: "Ke hobane'ng ha u etsa mesebetsi e telele le e thata hakaale?". Ena ke sehlooho se fapaneng ka ho felletseng sa perpendicular. Ho ne ho na le tsamaiso, joale ho tla ba le ntlafatso.

Ho hlakile hore ha rea ​​robeha likotoana. E hlakile. Ho ke ke ha khoneha hore u se ke ua senya DELETE e joalo bakeng sa qubu ea limilione tsa mela hore e be likarolo. E tla etsoa metsotso e 20, 'me tsohle li tla robala. Empa, ka bomalimabe, esita le bahlahisi ba nang le phihlelo ba etsa liphoso, esita le lik'hamphani tse kholo haholo.

Ke hobane'ng ha ho le bohlokoa ho senya?

  • Haeba re bona hore disk e thata, joale a re e fokotseng. 'Me haeba re robehile, joale re ka eketsa likhefu, re ka fokotsa ho thothomela.

  • 'Me re ke ke ra thibela ba bang nako e telele. Maemong a mang ha ho na taba, haeba u hlakola litšila tsa 'nete tseo ho seng motho ea sebetsang ho tsona, ho ka etsahala hore u se ke ua thibela mang kapa mang ntle le mosebetsi oa autovacuum, hobane o tla emela hore transaction e phethe. Empa haeba u tlosa ntho eo motho e mong a ka e kopang, joale ba tla thibeloa, ho tla ba le mofuta o itseng oa ketane. Litšebelisano tse telele li lokela ho qojoa liwebsaeteng le lits'ebetsong tsa mehala.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

https://postgres.ai/products/joe/

Sena sea thahasellisa. Hangata ke bona hore bahlahisi ba botsa: "Ke lokela ho khetha boholo bofe ba pakete?".

Ho hlakile hore boholo ba bongata bo boholo, bo nyane ba transaction e ka holimo, ke hore, ho feta holimo ho tsoa ho litšebelisano. Empa ka nako e ts'oanang, nako e eketseha bakeng sa ts'ebetso ena.

Ke na le molao o bonolo haholo: nka ka hohle kamoo u ka khonang, empa u se ke ua feta li-executable ka motsotsoana.

Hobaneng ka motsotsoana? Tlhaloso e bonolo haholo ebile e utloisisoa ho bohle, esita le batho bao e seng litsebi tsa theknoloji. Re bona karabelo. Ha re nke 50 milliseconds. Haeba ho na le ntho e fetohileng, joale mahlo a rona a tla itšoara. Haeba e nyane, joale ho thata le ho feta. Haeba ho hong ho arabela ka mor'a 100 milliseconds, ho etsa mohlala, u tobetse mouse, 'me ea u araba ka mor'a 100 milliseconds, u se u ntse u utloa ho lieha hona ho fokolang. Motsotsoana o se o nkoa e le mariki.

Ka lebaka leo, haeba re senya ts'ebetso ea rona ea bongata ka ho phatloha ha metsotsoana e 10, joale re na le kotsi ea hore re tla thibela motho e mong. 'Me e tla sebetsa metsotsoana e seng mekae,' me batho ba se ba ntse ba e hlokomela. Ka hona, ke khetha ho se etse ho feta motsotsoana. Empa ka nako e ts'oanang, u se ke ua e senya hantle, hobane transaction e ka holimo e tla bonahala. Motheo o tla ba thata le ho feta, 'me mathata a mang a fapaneng a ka hlaha.

Re khetha boholo ba pakete. Boemong bo bong le bo bong, re ka e etsa ka tsela e fapaneng. E ka iketsetsa. 'Me re kholisehile ka katleho ea ts'ebetso ea pakete e le' ngoe. Ke hore, re etsa DELETE ea pakete e le 'ngoe kapa UPDATE.

Ka tsela, tsohle tseo ke buang ka tsona ha se feela ka DELETE. Joalo ka ha u nahanne, tsena ke ts'ebetso efe kapa efe e ngata ho data.

'Me rea bona hore moralo o motle haholo. U ka bona index ea index, index ea index feela e betere le ho feta. 'Me re na le palo e nyane ea data e amehang. 'Me ka tlase ho motsotsoana oa phethahala. Super.

'Me re ntse re lokela ho etsa bonnete ba hore ha ho na ho nyenyefatsa. Hoa etsahala hore lipakete tsa pele li sebetse ka potlako, ebe li mpefala, li mpe le ho feta. Ts'ebetso e joalo hoo o hlokang ho leka haholo. Sena ke sona seo li-database labs li leng sona.

'Me re ntse re tlameha ho lokisa ntho e le hore e tle e re lumelle ho latela sena ka nepo tlhahisong. Ka mohlala, re ka ngola nako ka har'a log, re ka ngola hore na re hokae hona joale le bao re seng re ba hlakotse. ’Me sena se tla re nolofalletsa ho utloisisa se etsahalang hamorao. 'Me haeba ho na le ntho e sa tsamaeeng hantle, fumana bothata kapele.

Haeba re hloka ho hlahloba katleho ea likopo mme re hloka ho pheta-pheta makhetlo a mangata, joale ho na le ntho e kang bot-'moho. O se a lokile. E sebelisoa ke bahlahisi ba bangata letsatsi le letsatsi. 'Me o tseba ho fana ka database e kholo ea terabyte ka kopo ka metsotsoana e 30, kopi ea hau. Mme o ka hlakola ntho e nngwe moo mme o re RESET, mme o e hlakole hape. U ka etsa liteko ka eona ka tsela ena. Ke bona bokamoso ba ntho ena. Mme re se re ntse re e etsa.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

https://docs.gitlab.com/ee/development/background_migrations.html

Mekhoa ea ho arola ke efe? Ke bona maano a 3 a fapaneng a karohano ao baetsi ba pakete ba a sebelisang.

Ea pele e bonolo haholo. Re na le ID ea linomoro. 'Me a re e arole ka linako tse fapaneng' me re sebetse le eona. Bothata bo hlakile. Karolong ea pele, re ka ba le mela e 100 ea lithōle tsa 'nete, meleng ea bobeli e 5 kapa che ho hang, kapa mela eohle ea 1 e tla fetoha lithōle. Mosebetsi o sa lekaneng haholo, empa ho bonolo ho o senya. Ba ile ba nka ID e phahameng 'me ba e pshatla. Ena ke mokhoa o hlokang kelello.

Leano la bobeli ke mokhoa o leka-lekaneng. E sebelisoa ho Gitlab. Ba ile ba nka le ho skena tafole. Re fumane meeli ea lipakete tsa ID e le hore pakete ka 'ngoe e na le lirekoto tse 10 hantle. 'Me u li behe moleng. 'Me joale re sebetsa. U ka etsa sena ka likhoele tse ngata.

Leanong la pele, hape, ka tsela, o ka etsa sena ka likhoele tse 'maloa. Ha ho thata.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

https://medium.com/@samokhvalov/how-partial-indexes-affect-update-performance-in-postgres-d05e0052abc

Empa ho na le mokhoa o pholileng le o betere. Lena ke leano la boraro. 'Me ha ho khoneha, ho molemo ho e khetha. Re etsa sena motheong oa index e khethehileng. Tabeng ena, mohlomong e tla ba index ho latela boemo ba rona ba litšila le ID. Re tla kenyelletsa ID hore e tle e be index feela hore re se ke ra ea qubung.

Ka kakaretso, index ea index e potlakile ho feta index ea index.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

'Me re fumana kapele li-ID tsa rona tseo re batlang ho li tlosa. BATCH_SIZE re khetha esale pele. 'Me ha re li fumane feela, re li fumana ka tsela e khethehileng' me hang-hang re li senya. Empa re a notlela hore haeba li se li notletsoe, re se ke ra li notlela, empa re fetele pele re nke tse latelang. Sena ke sa ho tlola lintlafatso ho notletsoe. Karolo ena e ntlehali ea Postgres e re lumella ho sebetsa ka likhoele tse 'maloa haeba re batla. Hoa khoneha ka molapo o le mong. Mme mona ho na le CTE - ena ke kopo e le 'ngoe. Mme re na le ts'ebetso ea 'nete e ntseng e tsoela pele mokatong oa bobeli oa CTE ena - returning *. U ka khutlisa id, empa ho molemo *haeba u sena data e ngata moleng o mong le o mong.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ke hobane'ng ha re e hloka? Sena ke seo re lokelang ho se tlaleha. Hona joale re hlakotse mela e mengata haholo ka 'nete. Mme re na le meedi ka ID kapa ka bopa_ka tjena. U ka etsa min, max. Ho na le ntho e 'ngoe e ka etsoang. O ka kenya lintho tse ngata mona. 'Me ho bonolo haholo bakeng sa ho shebella.

Ho na le ntlha e 'ngoe hape mabapi le index. Haeba re etsa qeto ea hore re hloka index e khethehileng bakeng sa mosebetsi ona, joale re lokela ho etsa bonnete ba hore ha e senye qubu feela liapdeite tsa tuples. Ke hore, Postgres e na le lipalo-palo tse joalo. Sena se ka bonoa ho pg_stat_user_tables bakeng sa tafole ea hau. U ka bona hore na ho sebelisoa lintlafatso tse chesang kapa che.

Ho na le maemo ao index ea hau e ncha e ka a khaolang feela. 'Me u na le lintlafatso tse ling tse seng li ntse li sebetsa, fokotsa lebelo. Eseng feela hobane index e hlahile (index ka 'ngoe e liehisa liapdeite hanyane, empa hanyane), empa mona e ntse e e senya. 'Me ho ke ke ha khoneha ho etsa optimization e khethehileng bakeng sa tafole ena. Sena se etsahala ka linako tse ling. Ena ke ntho e poteletseng hoo batho ba fokolang ba e hopolang. 'Me sesebelisoa sena se bonolo ho se etsa. Ka linako tse ling hoa etsahala hore u fumane mokhoa o tsoang ka lehlakoreng le leng 'me u ntse u etsa ntle le index ena e ncha, kapa u etse index e' ngoe, kapa ka tsela e 'ngoe, mohlala, u ka sebelisa mokhoa oa bobeli.

Empa lena ke leano le nepahetseng ka ho fetesisa, mokhoa oa ho arola ka lihlopha le ho thunya lihlopha ka kopo e le 'ngoe, ho hlakola hanyane, joalo-joalo.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Litšebelisano tse telele https://gitlab.com/snippets/1890447

Autovacuum e koetsoeng - https://gitlab.com/snippets/1889668

thibela bothata - https://gitlab.com/snippets/1890428

Phoso #5 ke e kholo. Nikolai oa Okmeter o buile ka tlhahlobo ea Postgres. Tlhokomelo e nepahetseng ea Postgres, ka bomalimabe, ha e eo. Ba bang ba haufi, ba bang ba hole. Okmeter e haufi ka ho lekana hore e be e phethahetseng, empa ho na le lintho tse ngata tse sieo 'me li hloka ho eketsoa. U lokela ho itokisetsa sena.

Ka mohlala, li-tuples tse shoeleng li behoa leihlo hamolemo. Haeba u na le lintho tse ngata tse shoeleng tafoleng, joale ho na le ho hong ho phoso. Ho molemo ho itšoara hona joale, ho seng joalo ho ka 'na ha e-ba le nyenyefatso,' me re ka robala. Hoa etsahala.

Haeba ho na le IO e kholo, joale ho hlakile hore sena ha se ntle.

Litšebelisano tse telele le tsona. Lichelete tse telele ha lia lokela ho lumelloa ho OLTP. Mona ke sehokelo sa snippet se u lumellang hore u nke snippet ena 'me u se u ntse u etsa latello ea litšebelisano tse telele.

Ke hobane'ng ha litšebelisano tse telele li le mpe? Hobane liloko tsohle li tla lokolloa feela qetellong. 'Me re senya bohle. Hape, re thibela autovacuum bakeng sa litafole tsohle. Ha e ntle ho hang. Leha o na le standby e chesang e lumelletsoeng ho replica, e ntse e le mpe. Ka kakaretso, ha ho kae kapa kae moo ho leng molemo ho qoba litšebelisano tse telele.

Haeba re na le litafole tse ngata tse sa hloekisoang, joale re hloka ho ba hlokolosi. Mona boemo bo joalo bo ka khoneha. Re ka ama ts'ebetso ea autovacuum ka tsela e sa tobang. Ena ke snippet e tsoang ho Avito, eo ke e ntlafalitseng hanyenyane. Mme e bile sesebelisoa se khahlisang ho bona seo re nang le sona ka autovacuum. Ka mohlala, litafole tse ling li emetse moo 'me li ke ke tsa emela nako ea tsona. U boetse u hloka ho e beha tlhokomelong le ho ba le tlhokomeliso.

'Me litaba li thibela. Meru ea lifate tsa bolokoe. Ke rata ho nka ntho e itseng ho motho le ho e ntlafatsa. Mona ke ile ka nka CTE e pholileng e pholileng ho tloha Data Egret e bontšang moru oa lifate tsa senotlolo. Ena ke sesebelisoa se setle sa ho hlahloba. 'Me motheong oa eona, u ka boela ua haha ​​tlhokomelo. Empa sena se tlameha ho etsoa ka hloko. U hloka ho iketsetsa statement_timeout bakeng sa hau. Mme lock_timeout ea rateha.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ka linako tse ling liphoso tsena kaofela li etsahala ka kakaretso.

Ka maikutlo a ka, phoso e kholo mona ke ea mokhatlo. Ke ea mokhatlo, hobane thekeniki ha e hule. Ena ke nomoro ea 2 - ba ile ba hlahloba sebakeng se fosahetseng.

Re ile ra hlahloba sebakeng se fosahetseng, hobane re ne re se na clone ea tlhahiso, eo ho leng bonolo ho e hlahloba. Mohlahisi a kanna a se be le phihlello ea tlhahiso ho hang.

'Me ha rea ​​ka ra hlahloba moo. Hoja re ile ra hlahloba moo, re ka be re iponetse eona. Moqapi o ile a e bona kaofela leha a se na DBA haeba a e hlahlobile sebakeng se setle, moo ho nang le palo e lekanang ea data le sebaka se ts'oanang. A ka be a bone ho theoloa hona hohle ’me o ne a tla hlajoa ke lihlong.

Tse ling ka autovacuum. Kamora hore re fiele mela e limilione tse 'maloa, re ntse re hloka ho etsa REPACK. Sena se bohlokoa haholo bakeng sa li-index. Ba tla utloa bohloko ka mor'a hore re hloekise ntho e 'ngoe le e' ngoe moo.

'Me haeba u batla ho khutlisetsa mosebetsi oa ho hloekisa letsatsi le leng le le leng, joale ke tla fana ka tlhahiso ea ho e etsa hangata, empa e nyenyane. E ka ba hang ka motsotso kapa hangata ho feta hanyane. 'Me u lokela ho hlokomela lintho tse peli: hore ntho ena ha e na liphoso le hore ha e saletse morao. Leqheka leo ke le bontšitseng le tla rarolla sena.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Seo re se etsang ke mohloli o bulehileng. E ngotsoe ho GitLab. 'Me re e etsa e le hore batho ba ka hlahloba le ntle le DBA. Re etsa database lab, ke hore, re bitsa base component eo Joe a sebetsang ho eona hajoale. 'Me u ka nka kopi ea tlhahiso. Hona joale ho na le ts'ebetsong ea Joe bakeng sa slack, u ka re moo: "hlalosa joalo le kopo e joalo" 'me hang-hang u fumane sephetho sa kopi ea hau ea database. U ka ba ua DELETE moo, 'me ha ho motho ea tla e hlokomela.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Ha re re u na le 10 terabytes, re etsa database lab le 10 terabytes. 'Me ka li-database tse 10 tsa terabyte ka nako e le' ngoe, bahlahisi ba 10 ba ka sebetsa ka nako e le 'ngoe. E mong le e mong a ka etsa seo a se batlang. E ka hlakola, ea theoha, joalo-joalo. Ke toro e joalo. Taba ena re tla e bua hosane.

Moratuoa HLAKOLA. Nikolay Samokhvalov (Postgres.ai)

Sena se bitsoa ho fana ka tšesaane. Ena ke tlhahiso e makatsang. Ena ke mofuta o mong oa litoro o tlosang haholo ho lieha ho nts'etsopele, tekong le ho etsa hore lefatše e be sebaka se betere tabeng ena. Ke hore, e u lumella feela ho qoba mathata ka ts'ebetso e ngata.

Mohlala: 5 terabyte database, ho fumana kopi ka nako e ka tlase ho metsotsoana e 30. Ebile ha e itšetlehe ka boholo, ke hore, ha ho na taba hore na ke li-terabyte tse kae.

Kajeno u ka ea ho postgres.ai le ho cheka lisebelisoa tsa rona. U ka ingolisa ho bona hore na ho na le eng. U ka kenya bot ena. Ke mahala. Ngola.

Lipotso

Hangata, maemong a nnete, ho hlaha hore data e lokelang ho sala tafoleng e tlase haholo ho feta e lokelang ho hlakoloa. Ke hore, boemong bo joalo, hangata ho bonolo ho kenya ts'ebetsong mokhoa o joalo, ha ho le bonolo ho theha ntho e ncha, kopitsa feela lintlha tse hlokahalang moo, 'me u theole tafole ea khale. Ho hlakile hore mokhoa oa lenaneo oa hlokahala bakeng sa motsotso ona, ha u ntse u tla fetola. Mokhoa ona o joang?

Ena ke mokhoa o motle haholo le mosebetsi o motle haholo. E ts'oana haholo le seo pg_repack e se etsang, e ts'oana haholo le seo o tlamehang ho se etsa ha o etsa li-ID ka li-byte tse 4. Merero e mengata e entse sena lilemong tse 'maloa tse fetileng,' me lipoleiti feela li se li holile, 'me li hloka ho fetoloa ho li-byte tse 8.

Mosebetsi ona o boima haholo. Re e entse. 'Me u lokela ho ba hlokolosi haholo. Ho na le liloko, joalo-joalo Empa ho ntse ho etsoa. Ke hore, mokhoa o tloaelehileng ke ho tsamaea le pg_repack. U phatlalatsa lengolo le joalo. Mme pele o qala ho kenya snapshot data ho eona, o boetse o phatlalatsa poleiti e le 'ngoe e latelang liphetoho tsohle. Ho na le leqheka la hore o kanna oa se ke oa latela liphetoho tse ling. Ho na le lintho tse poteletseng. Ebe u fetola ka ho fetola liphetoho. Ho tla ba le khefu e khutšoanyane ha re koala bohle, empa ka kakaretso sena se ntse se etsoa.

Haeba u sheba pg_repack ho GitHub, joale moo, ha ho ne ho e-na le mosebetsi oa ho fetola ID ho tloha ho int 4 ho ea ho int 8, joale ho ne ho e-na le khopolo ea ho sebelisa pg_repack ka boeona. Sena se ka etsahala hape, empa ke ts'ebetso e nyane, empa e tla sebetsa le bakeng sa sena. U ka kenella ho trigger eo pg_repack e e sebelisang 'me u re moo: "Ha re hloke data ena", ke hore, re fetisetsa feela seo re se hlokang. Mme ebe o fetoha feela mme ke phetho.

Ka mokhoa ona, re ntse re fumana kopi ea bobeli ea tafole, eo data e seng e ntse e thathamisitsoe 'me e kentsoe ka mokhoa o ts'oanang ka li-index tse ntle.

Bloat ha e eo, ke mokhoa o motle. Empa kea tseba hore ho na le liteko tsa ho hlahisa automation bakeng sa sena, ke hore, ho etsa tharollo ea bokahohle. Ke khona ho u kopanya le automation ena. E ngotsoe ka Python, e leng ntho e ntle.

Ke batla ke tsoa lefats'eng la MySQL, kahoo ke tlile ho tla mamela. 'Me re sebelisa mokhoa ona.

Empa ke ha feela re na le 90%. Haeba re na le 5%, joale ha ho molemo haholo ho e sebelisa.

Re leboha tlaleho! Haeba ho se na lisebelisoa tsa ho etsa kopi e felletseng ea prod, na ho na le algorithm kapa foromo ea ho bala mojaro kapa boholo?

Potso e ntle. Ho fihlela joale, re khona ho fumana li-database tsa multi-terabyte. Esita le haeba hardware ea teng e sa tšoane, ka mohlala, mohopolo o fokolang, processor e fokolang le li-disks ha li tšoane hantle, empa re ntse re e etsa. Haeba ho hang ha ho na moo, u lokela ho nahana. Ere ke nahane ho fihlela hosane, u tlile, re tla bua, potso ena e ntle.

Re leboha tlaleho! U qalile ka taba ea hore ho na le Postgres e pholileng, e nang le mefokolo e joalo le e joalo, empa e ntse e tsoela pele. 'Me sena sohle ke crutch ka kakaretso. Na sena sohle ha se khahlanong le nts'etsopele ea Postgres ka boeona, moo ho tla hlaha deferent e 'ngoe ea DELETE kapa ntho e' ngoe e lokelang ho boloka boemo bo tlase boo re lekang ho bo tlotsa ka mekhoa e meng ea rona e makatsang mona?

Haeba re itse ho SQL ho hlakola kapa ho ntlafatsa lirekoto tse ngata ts'ebetsong e le 'ngoe, joale Postgres e ka e aba moo? Ha re sebetse hantle 'meleng. Re ntse re tla e etsa ka nako e telele. Mme re tla notlela ka nako ena, jj.

Ke qetile ka li-index.

Nka nahana hore tokiso e ts'oanang ea ho hlahloba e ka ba ea othomathike. Ka tsatsi le leng ho ka ba jwalo. Empa joale ha ke utloisise potso eo hantle.

Potso ke hore na ho na le vector e joalo ea ntshetsopele e eang mona le mane, le mona ea hau e tsamaea ka tsela e tšoanang? Tseo. Na ha ba e-so nahane ka eona?

Ke buile ka melao-motheo e ka sebelisoang hona joale. Ho na le bot e 'ngoe Nancy, ka sena u ka etsa tokiso ea sebaka sa ho hlahloba ka boiketsetso. Na ka letsatsi le leng e tla ba Postgres? Ha ke tsebe, ha e so ka e buisanoa. Re ntse re le hole le seo. Empa ho na le bo-rasaense ba etsang litsamaiso tse ncha. 'Me ba re sutumelletsa ho li-index tsa othomathike. Ho na le lintlafatso. Ka mohlala, u ka sheba auto tuning. E khetha liparamente ka bo eona. Empa a ke ke a u etsetsa tokiso ea sebaka sa ho hlahloba. Ke hore, e tla nka bakeng sa ts'ebetso, shell buffer, joalo-joalo.

'Me bakeng sa tokiso ea li-checkpoint, u ka etsa sena: haeba u na le lihlopha tse sekete le lisebelisoa tse fapaneng, mechini e fapaneng e fumanehang marung, u ka sebelisa bot ea rona. Nancy etsa automation. 'Me max_wal_size e tla khethoa ka bo eona ho latela litlhophiso tsa hau. Empa ho fihlela joale sena ha se e-so be haufi le mantlha, ka bomalimabe.

Lumelang U buile ka likotsi tsa litšebelisano tse telele. U boletse hore autovacuum e koetsoe haeba ho ka hlakoloa. E re ntša kotsi joang hape? Hobane re bua haholo ka ho lokolla sebaka le ho khona ho se sebelisa. Re haelloa ke eng hape?

Autovacuum mohlomong ha se bothata bo boholo mona. 'Me taba ea hore khoebo e telele e ka koala litšebelisano tse ling, monyetla ona o kotsi le ho feta. A ka kopana kapa a se ke a kopana. Haeba a kopana, joale e ka ba mpe haholo. 'Me ka autovacuum - sena le sona ke bothata. Ho na le mathata a mabeli ka litšebelisano tse telele ho OLTP: linotlolo le autovacuum. 'Me haeba u na le maikutlo a chesang a standby a lumelletsoeng ho replica, joale u ntse u tla fumana senotlolo sa autovacuum ho mong'a sona, se tla fihla ho tsoa ho replica. Empa bonyane ho ke ke ha e-ba le linotlolo. 'Me ho tla ba teng. Re bua ka liphetoho tsa data, kahoo linotlolo ke ntlha ea bohlokoa mona. 'Me haeba sena sohle se nka nako e telele, e telele, joale litšebelisano tse ngata li notletsoe. Ba ka utsoa ba bang. Mme lok lifate lia hlaha. Ke fane ka sehokelo sa snippet. 'Me bothata bona bo bonahala ka potlako ho feta bothata ba autovacuum, e ka bokellang feela.

Re leboha tlaleho! U qalile tlaleho ea hau ka ho bolela hore u entse tlhahlobo e fosahetseng. Re ile ra tsoela pele ka maikutlo a rona a hore re lokela ho nka thepa e tšoanang, le setsi ka tsela e tšoanang. Ha re re re file moqapi motheo. Mme o ne a diragatsa kopo eo. Mme o bonahala a phetse hantle. Empa ha a hlahlobe ho phela, empa bakeng sa ho phela, mohlala, re na le mojaro oa 60-70%. Mme leha re sebelisa tokiso ena, ha e sebetse hantle haholo.

Ho ba le setsebi sehlopheng le ho sebelisa litsebi tsa DBA tse ka bolelang esale pele se tla etsahala ka moroalo oa sebele oa morao ke oa bohlokoa. Ha re qeta ho tsamaisa liphetoho tsa rona tse hloekileng, re bona setšoantšo. Empa mokhoa o tsoetseng pele haholo, ha re etsa ntho e ts'oanang hape, empa ka mojaro o ts'oanang le tlhahiso. Ho monate haholo. Ho fihlela ka nako eo, o tlameha ho hola. Ho tšoana le motho e moholo. Re ile ra sheba feela hore na re na le eng ra sheba hape hore na re na le lisebelisoa tse lekaneng. Ke potso e ntle eo.

Ha re se re ntse re etsa khetho ea litšila 'me re na le, mohlala, folakha e tlositsoeng

Sena ke seo autovacuum e se etsang ka bo eona ho Postgres.

Oh, na o etsa jwalo?

Autovacuum ke 'mokelli oa lithōle.

Спасибо!

Re leboha tlaleho! Na ho na le khetho ea ho theha database hang-hang ka ho arola ka tsela eo lithōle tsohle li silafalang ho tloha tafoleng e kholo kae-kae ho ea ka thōko?

Ehlile u entse joalo.

Na joale hoa khoneha ho itšireletsa haeba re notletse tafole e sa lokelang ho sebelisoa?

Ehlile u entse joalo. Empa ho tshwana le potso ya kgoho le lehe. Haeba bohle re tseba se tla etsahala nakong e tlang, joale, ehlile, re tla etsa ntho e 'ngoe le e' ngoe e pholile. Empa khoebo ea fetoha, ho na le likholomo tse ncha, likopo tse ncha. 'Me joale - oops, re batla ho e tlosa. Empa boemo bona bo loketseng, bophelong bo etsahala, empa eseng kamehla. Empa ka kakaretso ke mohopolo o motle. Fokotsa feela 'me ke phetho.

Source: www.habr.com

Eketsa ka tlhaloso