Hjem Personlig finansiering Basics af Database Buffer Cache i Oracle 12c - dummies

Basics af Database Buffer Cache i Oracle 12c - dummies

Indholdsfortegnelse:

Video: Database Buffer Cache | Oracle DBA Tutorials for the Beginners | RR TECHNOSOFT 2024

Video: Database Buffer Cache | Oracle DBA Tutorials for the Beginners | RR TECHNOSOFT 2024
Anonim

Oracle 12c's database buffer cache er typisk den største del af SGA. Den har data, der kommer fra filerne på disken. Fordi adgang til data fra disken er langsommere end fra hukommelsen, er databasepuffervisens eneste formål at cache dataene i hukommelsen for hurtigere adgang.

Databasen buffer buffer cache kan indeholde data fra alle typer objekter:

  • Tabeller

  • Indekser

  • Materialiserede visninger

  • Systemdata

I sætningen databasebuffer cache refererer udtrykket buffer til databaser. En database blok er den mindste mængde lagring, som Oracle læser eller skriver. Alle lagringssegmenter, der indeholder data, består af blokke. Når du beder om data fra en disk, læser Oracle mindst en blok.

Selvom du kun anmoder om en række, vil mange rækker i samme tabel sandsynligvis blive hentet. Det samme gælder, hvis du anmoder om en kolonne i en række. Oracle læser hele blokken, som sandsynligvis har mange rækker, og alle kolonner for den pågældende række.

Det er muligt at tænke, at hvis din afdelingsbord kun har ti rækker, kan hele sagen læses i hukommelsen, selvom du kun anmoder om en afdeling.

Buffertcache-tilstand i Oracle 12c

Bufferen cache styrer, hvilke blokke der skal opholde sig, afhængigt af ledig plads og blokstatus (ligesom den fælles pulje bestemmer, hvad SQL skal blive). Bufferbufferen bruger sin egen version af LRU-algoritmen.

En blok i bufferbufferen kan være i en af ​​tre tilstande:

Gratis:

  • Bruges i øjeblikket ikke til noget Pinned:

  • Aktuelt tilgængelig > Dirty: Blokken er blevet ændret, men endnu ikke skrevet til disk

  • Gratis blokke Ideelt set er der gratis blokke til rådighed, når du har brug for dem. Det er dog ikke tilfældet, medmindre din database er så lille, at det hele kan passe i hukommelsen.

LRU-algoritmen virker lidt anderledes i bufferbufferen end den gør i den fælles pool. Det scorer hver blok og så gange hvor længe det har været siden det blev åbnet. For eksempel får en blok et punkt hver gang det berøres.

Jo højere pointene er, desto mindre sandsynligt blokeres blokken fra hukommelsen. Det skal dog ofte nås, eller scoren falder. En blok skal arbejde hårdt for at være i hukommelse, hvis konkurrencen om hukommelsesressourcer er høj.

At give hver blok en score og tid forhindrer en sådan situation: En blok fås stærkt i slutningen af ​​måneden til rapporter.Dens score er højere end nogen anden blok i systemet. Denne blok fås aldrig igen.

Det sidder der spildende hukommelse, indtil databasen genstartes, eller en anden blok endelig scorer nok point til at slå det ud. Tidskomponenten aldrer det meget hurtigt, når du ikke længere har adgang til det.

Pinned blocks

En blok, der i øjeblikket er tilgængelig, er en

spærret blok.

Blokken er låst (eller fastgjort) i bufferbufferen, så den kan ikke alder ud af bufferbufferen, mens Oracle-processen (ofte repræsenterer en bruger) får adgang til den. Beskidte blokke En ændret blok er en

beskidt blok.

For at sikre, at dine ændringer holdes på tværs af databasestop, skal disse beskidte blokke skrives fra bufferbufferen til disken. Databasen navngiver beskidte blokke i en beskidt liste eller skrivekø. Du tror måske, at hver gang en blok ændres, skal den skrives til disk for at minimere tabte data. Dette er ikke tilfældet - ikke engang når der er en commit

(når du gemmer dine ændringer permanent)! Flere strukturer hjælper med at forhindre tabte data. Desuden har Oracle et spilproblem. Systemets ydeevne ville kravle, hvis du skrev blokke til disk for hver ændring. For at bekæmpe dette spiller Oracle oddsene, at databasen ikke sandsynligvis vil mislykkes og skriver blokke til disk kun i større grupper. Bare rolig; det er ikke engang en risiko mod tabte data. Oracle får ydeevne ud af databasen

lige nu

på den mulige bekostning af et opsving, der tager længere tid senere. Fordi fejl på ordentligt styrede systemer sjældent forekommer, er det en billig måde at opnå en vis ydeevne på. Det er imidlertid ikke som om Oracle efterlader snavse blokke hele tiden uden at rydde op efter sig selv. Bloker skrive udløsere i Oracle 12c Hvad udløser en blokskrivning og derfor en beskidt blok?

Databasen udstedes en shutdown-kommando.

Der opstår et fuldt eller delvis kontrolpunkt - det vil sige når systemet periodisk dumper alle de beskidte buffere til disken.

  • En gendannelsestidstærskel, der er fastsat af dig, er opfyldt; Det samlede antal snavsede blokke forårsager en uacceptabel opsvingstid.

  • Der kræves en gratis blok, og ingen findes efter en given mængde søgning.

  • Visse data definition sprog (DDL) kommandoer. (DDL-kommandoer er SQL-sætninger, der definerer objekter i en database.)

  • Hvert tredje sekund.

  • Andre grunde. Algoritmen er kompleks, og du kan ikke være sikker på alle de ændringer, der opstår med hver softwareudgivelse.

  • Faktum er, at databasen forbliver ret travlt med at skrive blokke i et miljø, hvor der er mange ændringer.

Basics af Database Buffer Cache i Oracle 12c - dummies

Valg af editor

Metoder til sikring af overførsler - dummier

Metoder til sikring af overførsler - dummier

Til compTIA A + certificeringsprøverne, du skal forstå de tilgængelige metoder til sikring af transmissioner. Når du har godkendt brugere og autoriseret dem til at få adgang til bestemte dele af netværket, skal du overveje metoder til sikring af oplysninger, mens de bevæger sig langs netværkskablet. De fleste netværkskommunikationer sendes ud via netværkstråden i ...

Ondsindet software (malware) angreb - dummies

Ondsindet software (malware) angreb - dummies

Ondsindet software, også kendt som malware til systemet, såsom en virus eller spyware. Du bør være bekendt med ondsindet software til A + eksamenerne, når du søger din CompTIA A + -certificering. Virus En virus er et program, der forårsager skade på dit system. Typisk er vira spredt igennem ...

Netværkskabel til CCENT-certificeringseksamen - dummies

Netværkskabel til CCENT-certificeringseksamen - dummies

CCENT-certificeringen afprøver dig på de forskellige typer kabler, der bruges i forskellige scenarier. Nedenfor er nogle vigtige punkter at huske om netværkskabler. Rollover-kabel: Et rollover-kabel er også kendt som et konsolkabel og får navnet rollover fordi rækkefølgen af ​​ledningerne fra den ene ende af ...

Valg af editor

Hvordan man tilføjer fotos med din Nikon D5600 - dummies

Hvordan man tilføjer fotos med din Nikon D5600 - dummies

Ud over dens billedkorrigeringsværktøjer tilbyder Retouch-menuen på Nikon D5600-kameraet også følgende special effects-værktøjer, som gør det muligt at justere dine eksisterende digitale billeder: Fisheye: Anvend dette værktøj til at forvrænge billedet, så det ser ud til at være taget med en fisheye linse. Udseendet ligner ...

Justering af flashoutput med en Nikon D3100 eller D5100 - dummies

Justering af flashoutput med en Nikon D3100 eller D5100 - dummies

, Når du optager billeder med din Nikon D3100 eller D5100 og dens indbyggede flash, forsøger kameraet at justere flashudgangen efter behov for at opnå en god eksponering. Men hvis du skyder i eksponeringsindstillingerne P, S, A eller M, og du vil have lidt mere eller mindre blitz, end kameraet ...

Valg af editor

Webklipning i Internet Explorer - dummies

Webklipning i Internet Explorer - dummies

Internet Explorer er den ulige browser, når det kommer til webklipning i Evernote. Du skal bare følge nogle lidt ændrede instruktioner. Hvis du vil bruge Web Clipper i Internet Explorer, skal du følge disse trin: Fremhæv den tekst, du vil klippe, eller (hvis du klipper en hel artikel eller skærm), spring til trin 2. Hvis ...

For seniorer: Sådan animerer objekter på et PowerPoint Slide-dummies

For seniorer: Sådan animerer objekter på et PowerPoint Slide-dummies

Som standard alle objekter på et Microsoft PowerPoint-dias vises på én gang. For at tilføje mere visuel interesse for præsentationen eller for at afsløre bit af information ad gangen, kan du bruge animation i PowerPoint. For eksempel kan du stille et spørgsmål i titlen på diaset og derefter give svaret i ...