SITE SØK

Hva er transaksjoner? Transaksjonsbehandlingssystemer

I en verden hvor alt forandrer seg så raskt, kan man ikkeikke stopp i et minutt. Dette gjelder også for å skaffe ny informasjon. Et ukjent begrep eller den nyeste versjonen av et programvareprodukt er en unnskyldning for å fylle opp kunnskap i ett eller annet område. I dag skal vi snakke om hvilke transaksjoner som er, hvordan det fungerer.

Innføring i terminologi

En rekke automatiseringsprodukterForretningsprosesser har fast etablert seg på markedet de siste 15 årene. Dette krever evnen til å jobbe med programvare på ulike nivåer av samhandling: som operatør, programmør, revisor, etc. Derfor er det viktig å forstå noen av mekanismene i programmet. Til å begynne med vil vi håndtere en så vanlig og skremmende betegnelse som en transaksjon. Oftere enn ikke, skjult et vakkert lånt ord et mindre komplekst fenomen, som mange mennesker forestiller seg, ved å uttale et nytt begrep, prøver det ved øre. La oss se på hvilke transaksjoner som er.

hva er transaksjoner

Definisjon av konsept

Denne betegnelsen brukes i forhold tilEthvert produkt der arbeidet med databasen er realisert. Flere operasjoner som logisk kombineres til en og går i tur en for en, er en transaksjon. I hverdagen kan en transaksjonskjede betraktes som en kjede av prosedyrer som "våknet opp - vasket - kledd - hadde frokost - gikk på jobb".

La oss vurdere det angitte konseptet på et eksempel på produkter1C. Transaksjon er den samme uendelige rekkefølgen av handlinger. Et levende eksempel kan tjene som en rekord om en varegods: Åpne ønsket katalog, opprett et nytt element, fyll inn de nødvendige feltene. For at alle disse handlingene skal føre til ønsket resultat, er det nødvendig å bære dem strengt fra første til siste. Bare under denne betingelsen vil prosedyren bli vurdert som vellykket. Ellers avbrytes transaksjonen.

Prosessene som vurderes kan være entenautomatisk, som er levert i systemet, og manuelt gjennomført av utvikleren etter å ha kjøpt ferdigproduktet for å gjøre sistnevnte mer praktisk for brukere av en bestemt bedrift. I tillegg, fra den automatiske modusen, når systemets oppførsel reguleres av de innebygde mekanismene, kan transaksjoner overføres til en administrert.

kan ikke fullføre en sikker transaksjon

Transaksjoner i 1C: Finesser av det innebygde språket

Hva er en transaksjon i det generelle tilfellet, forstår vi. Men siden hvert programvarefirma gjør det på sin egen måte, er det visse forskjeller mellom transaksjoner generelt og transaksjoner i 1C spesielt. For eksempel er nestet (transaksjon i en transaksjon) i 1C ikke støttet.

Fra synspunkt, operatører av innebygdSpråk ganske enkelt. Begynnelsen av prosessen er deklarert ved hjelp av den spesielle prosedyren StartTransaction (). Ferdigstransaksjonen () -prosedyren brukes til å registrere endringer under utførelsen av handlinger. Hvis det var feil i løpet av utførelsen, er det mulig å avbryte transaksjonen () for å rulle tilbake de forpliktede endringene.

Hvorfor bruk av transaksjoner er å foretrekke? Fordi koden i disse prosedyrene er mye raskere. Det er til dette som enhver programmerer streber. Forskjellen i fart kan ikke være så merkbar hvis 1C-brukere på kontoret har 1-2 ansatte, men du kan ikke føle det når det gjelder hele avdelinger samtidig som du utfører ulike oppgaver i det angitte programmet.

fallgruver

I tillegg til det åpenbare pluss,En seriøs økning i lese- og skrivehastigheten når du arbeider med databasen, har transaksjoner sin egen minus. La oss gå tilbake til eksempelet ovenfor fra livet. Hva skjer transaksjoner som ikke er gjort av en person, men av hele familien? Alle forsøker å komme seg inn på toalettet for å vaske tidligere, alle går i kjøkkenet, fordi det er tid til frokost. Som et resultat er familiemedlemmer ulykkelige med hverandre. I beste fall er det bare en uheldig begynnelse på dagen, i verste fall - sent arbeid, reprimands fra myndighetene, revet planer.

Programmet er det samme. Hvis alle brukere begynner å redigere data i samme dokument samtidig, hvilken versjon bør anses som den siste? Hvilke data skal lagres før? For å unngå slik forvirring er det en låsemekanisme. Dette betyr at mens en bruker jobber på dokumentet, er den andre i den virtuelle køen og venter. Etter at transaksjonen er fullført eller rullet tilbake, kan den neste brukeren jobbe på dokumentet.

1c transaksjon

Å være eller ikke å bli kontrollert av låser?

Konseptet med en transaksjon kan ikke betraktes som heltBetraktes uten problem med overflødige låser. Hva er det store onde: mangel på låser, som fører til en feilaktig prosess med lesing og skriving med ukorrekte resultater på produksjonen, eller er det for mange av dem som hindrer arbeidet i hele bedriften?

Den beste løsningen er styrt låser,som er den gyldne gjennomsnittet. En kompetent programmerer kan tilpasse den eksisterende mekanismen for organisasjonens behov slik at de virkelig viktige dokumentene behandles i køens rekkefølge. For de samme konfigurasjonselementene som ikke krever låsing, kan du aktivere gratis redigering.

Dermed rettidig analyse av transaksjoner ogDen riktige holdningen til blokkering gjør det mulig å dra full nytte av fleksibiliteten til "1C: Enterprise" -systemet og optimalisere driften av databasen, og minimere midlertidige tap.

transaksjonsbehandlingssystemer

Hvorfor føre til overdreven blokkeringer?

Spørsmålet er på ingen måte retorisk. Hvis du fjerner nødvendige låser, blir det forvirring og kaos. Feil data vil begynne å samle seg i databasen på grunn av samtidig avskrivning av saldoer eller omvendt periodisering av eiendeler. Men konsekvensene er av denne typen som ikke umiddelbart kommer til lys. Første gang arbeidet går raskt, skaper en illusjon av korrektheten ved å velge avvisning av låser. På den annen side forårsaker et uforholdsmessig stort antall låser umiddelbart feilmeldinger. "Den sikre transaksjonen kan ikke fullføres," varsler systemet oss. Hva betyr dette? To transaksjoner blokkerte hverandre på en slik måte at hverken kan fullføre den initierte eller utføre kanselleringen. En ond sirkel av "døde" transaksjoner vil henge i databasen før deteksjon, noe som reduserer systemytelsen betydelig.

Ekstra operasjoner for å angre handlinger økerantall oppføringer i loggen. I tillegg er et slikt system ikke levedyktig, fordi enda større økning av brukere vil bare begrave det under belastningen av "døde" låser. Nedetid vil alltid øke. Hvordan unngå slike situasjoner?

avbestilling av transaksjonen

Isolasjonsnivåer - en annen måte å ikke løpe på grunn av

Snakker om hvilke transaksjoner vi nevnteom fallgruvene. Fortsatt analogi, vi kan trygt si at varierende nivået av låser er et pålitelig verktøy for piloten i å reise gjennom sjøen 1C. Det finnes to isolasjonsnivåer: "read only, no record" og "neither record nor read." I automatisk modus er valget ikke tilgjengelig. Men det er nok å snu applikasjonen til en administrert modus, og du kan angi smarte grenser, velge ikke bare viktige dokumenter, men også tildele dem et passende isolasjonsnivå.

Men kompetent levert arbeid er, førtotalt, forebygging av nødssituasjoner, og ikke bare tidsriktig eliminering av feilene som allerede har skjedd. Assistent database administratorer vil fungere som transaksjonsbehandlingssystemer. Det er basert på data om hvordan noen operasjoner i systemet er fullført, enten de ble fullført eller avbrutt, det er mulig å forutsi systemets videre adferd og forhindre potensielle trusler.

konsept for transaksjon

Sammendrag av de samlede resultatene

Vi forsto definisjonen av transaksjonen, undersøkte algoritmen til prosessen fra innsiden, ble kjent med forskjellige måter å regulere operasjoner innenfor samme informasjonsbase.

transaksjonsanalyse

Som praksis har vist, er mekanismen ikke lett, menDen er tilgjengelig for forståelse og dypere studier selv for nybegynnerprogrammer og databaseadministratorer. Reguleringsmetodene kan ikke fullføres, og det er ikke mulig å unngå problemer i helautomatisk modus, men utviklerens liv blir likevel lettere med hver ny versjon av programvaren.

</ p>
  • evaluering: