InterBase

Interbase er et relasjonsdatabasestyringssystem (RDBMS) utviklet og markedsført av Borland Software Corporation og for tiden av Embarcadero Technologies .

Interbase skiller seg ut fra andre DBMS-er på grunn av lavt ressursforbruk, nesten null behov for administrasjon og flergenerasjonsarkitektur. InterBase kjører på Linux , Microsoft Windows og Solaris - plattformer .

Liten størrelse

En full installasjon av InterBase Server 2009 krever ca. 40 MB på disk. Dette er betydelig mindre enn klientinstallasjonen av mange konkurrerende databaseservere. Serveren bruker svært lite minne når den er inaktiv. Minimumsinstallasjonen av InterBase-klienten krever ca. 400 KB diskplass.

Innebygd eller server

InterBase tilbyr muligheten til å kjøre som en vanlig eller innebygd databaseserver.

En minimal administrasjon

InterBase-servere krever normalt ikke heltidsansatte databaseadministratorer.

samtidighetskontroll

Tenk på en enkel bankapplikasjon der to brukere har tilgang til midler på en bestemt konto. Bob leser kontoen og finner ut at det er $1000 på den, så han tar ut $500. Jane bruker den samme kontoen, men før Bob har tatt i bruk endringene, ser hun at det er $1000 og tar ut $800. Kontoen skal ha $300 på kontoen. , men (forutsatt at du ikke kan ha overtrekk) avhengig av hvilken transaksjon som behandles først, har du enten $500 eller $200. Dette utgjør et alvorlig problem som ethvert databasesystem med flerbrukertilgang må svare på ved å tilby et system for å håndtere disse situasjonene.

Teknikkene som brukes for å løse dette og relaterte problemer er kjent som samtidighetskontroll.

Tradisjonelle produkter bruker låser når en bestemt transaksjon skal endre en post. Når låsen er satt på, kan ingen andre lese eller endre dataene før låsen er løftet. Låsen kan brukes på en enkelt post, en side (en gruppe poster lagret sammen på disk) med poster, eller alle poster som undersøkes av en bestemt transaksjon, avhengig av låseoppløsningen. Løsningslåsing er en avveining mellom ytelse og nøyaktighet ved å bruke oppdateringslåsing på sidenivå. Noen poster vil bli låst til tross for at de ikke er i konflikt med de som skal oppdateres av transaksjoner, men ytelsen er høyere sammenlignet med rekordnivålåsen.

Blokkering blir et enda større problem når det kombineres med en annen funksjon som er felles for alle disse systemene, isolasjon. Dette er fordi de vanligvis er relatert til lese- og skriveoperasjoner. I dette eksemplet, for å lese kvoteverdien og deretter endre den. For å vise en isolert visning av hele transaksjonens data, inkludert poster som skal leses, men ikke skrives, må den blokkeres på mange databaseservere.

I InterBase ser ikke leserne forfatterens. For eksempel, når Bob og Jane leser dataene, vil de begge bli vist "versjon 1", og lese $1000. Når Bob gjør endringer på kontoen når han gjør uttak, blir ikke dataene overskrevet, men en ny "versjon 2", denne gangen med $500, vil vises. Janes forsøk på å ta ut $800 vil mislykkes når man finner ut at det er en ny versjon.

Denne tilnærmingen til samtidighetskontroll kalles multiversjon samtidighetskontroll. InterBase multiversjon samtidighetskontrollapplikasjonen kaller ofte sin multigenerasjonsarkitektur. InterBase var den andre kommersielle databasen som brukte denne teknikken, den første var desembers Rdb/ELN.

Multiversjon samtidighetskontroll gjør også umiddelbar transaksjonsisolering relativt enkel å implementere. En øyeblikkelig isolert transaksjon i InterBase viser statusen til databasen nøyaktig i det øyeblikket operasjonen startet. Dette er veldig nyttig for sikkerhetskopiering av en live database, langvarige batch-prosesser, etc.

Historikk

Multiversjon samtidighetskontroll før InterBase

Se også

støtter PL/SQL

Referanser

Eksterne lenker