DBVS darījumu pārvaldība: kādas ir ACID īpašības?

Satura rādītājs:

Anonim

Kas ir datu bāzes darījums?

Database Darījums ir loģiska vienība apstrādes DBVS, kas ietver vienu vai vairākus datu bāzes piekļuves darbību. Īsumā, datubāzes darījumi atspoguļo jebkura uzņēmuma reālos notikumus.

Visu veidu datu bāzes piekļuves darbības, kas tiek turētas starp sākuma un beigu darījumu paziņojumiem, DBVS tiek uzskatītas par vienu loģisku darījumu. Darījuma laikā datu bāze ir pretrunīga. Tikai pēc tam, kad datu bāze ir izveidota, stāvoklis tiek mainīts no viena konsekventa stāvokļa uz citu.

Šajā apmācībā jūs uzzināsiet:

  • Fakti par datu bāzes darījumiem
  • Kāpēc jums ir nepieciešama vienlaicība darījumos?
  • Darījumu stāvokļi
  • Kādas ir skābes īpašības?
  • Darījumu veidi
  • Kas ir grafiks?

Fakti par datu bāzes darījumiem

  • Darījums ir programmas vienība, kuras izpilde var mainīt datu bāzes saturu.
  • Darījumu koncepcija DBVS tiek izpildīta kā viena vienība.
  • Ja datu bāzes darbības neatjaunina datu bāzi, bet tikai izgūst datus, šāda veida darījumus sauc par tikai lasāmu darījumiem.
  • Veiksmīgs darījums var mainīt datu bāzi no vienas konsekventas valsts uz citu
  • DBVS darījumiem jābūt atomu, konsekventiem, izolētiem un izturīgiem
  • Ja pirms darījuma datu bāze būtu nekonsekventā stāvoklī, tā pēc darījuma paliktu nekonsekventā stāvoklī.

Kāpēc jums ir nepieciešama vienlaicība darījumos?

Datu bāze ir koplietojams resurss, kuram var piekļūt. To vienlaikus izmanto daudzi lietotāji un procesi. Piemēram, banku sistēma, dzelzceļa un gaisa rezervēšanas sistēmas, akciju tirgus uzraudzība, lielveikalu krājumi un kases utt.

Ja netiek pārvaldīta vienlaicīga piekļuve, var rasties šādas problēmas:

  • Aparatūras kļūme un sistēmas avārija
  • Vienlaicīga viena un tā paša darījuma izpilde, strupceļš vai lēna darbība

Darījumu stāvokļi

Dažādi darījumu koncepcijas stāvokļi DBVS ir uzskaitīti zemāk:

Valsts Darījumu veidi
Aktīvā valsts Darījums nonāk aktīvā stāvoklī, kad sākas izpildes process. Šajā stāvoklī var veikt lasīšanas vai rakstīšanas darbības.
Daļēji apņēmusies Pēc darījuma beigām darījums nonāk daļēji saistītā stāvoklī.
Apņēmusies valsts Kad darījums ir apņēmies paziņot, tas jau ir veiksmīgi izpildīts. Turklāt visas tās izmaiņas tiek pastāvīgi reģistrētas datu bāzē.
Neveiksmīga valsts Darījums tiek uzskatīts par neizdevušos, ja kāda no pārbaudēm neizdodas vai ja darījums tiek pārtraukts, kamēr tas ir aktīvā stāvoklī.
Likvidētā valsts Darījuma stāvoklis nonāk pārtrauktajā stāvoklī, kad dažus darījumus, kas iziet no sistēmas, nevar atsākt.
Datu bāzes darījuma stāvokļa pārejas diagramma

Izpētīsim stāvokļa pārejas diagrammu, kas izceļ darījuma virzību starp šiem dažādajiem stāvokļiem.

  1. Kad darījums norāda izpildi, tas kļūst aktīvs. Tas var izdot READ vai WRITE darbību.
  2. Kad READ un WRITE operācijas ir pabeigtas, darījumi kļūst daļēji saistīti.
  3. Pēc tam dažiem atkopšanas protokoliem ir jānodrošina, lai sistēmas kļūme neradītu nespēju pastāvīgi ierakstīt izmaiņas darījumā. Ja šī pārbaude ir veiksmīga, darījums apņemas un pāriet uz apņemšanos.
  4. Ja pārbaude neizdodas, transakcija nonāk stāvoklī Neizdevies.
  5. Ja darījums tiek pārtraukts, kamēr tas ir aktīvā stāvoklī, tas pāriet uz neizdevušos stāvokli. Darījums jāatceļ, lai atsauktu tā rakstīšanas darbību ietekmi uz datu bāzi.
  6. Pārtrauktais stāvoklis attiecas uz darījumu, kas atstāj sistēmu.

Kādas ir skābes īpašības?

ACID rekvizītus izmanto datu bāzes integritātes uzturēšanai darījumu apstrādes laikā. ACID in DBVS apzīmē A tomicity, C onsistency, I solation, un D urability.

  • Atomitāte: darījums ir viena darbības vienība. Vai nu jūs to pilnībā izpildāt, vai arī neizpildāt vispār. Daļēja izpilde nevar būt.
  • Konsekvence: Kad darījums ir izpildīts, tam vajadzētu pāriet no viena konsekventa stāvokļa uz citu.
  • Izolēšana: darījums jāveic atsevišķi no citiem darījumiem (bez bloķēšanas). Vienlaicīgas darījuma izpildes laikā starpposma darījuma rezultātus, kas iegūti no vienlaikus izpildītiem darījumiem, nevajadzētu darīt pieejamus viens otram. (0,1,2,3 līmenis)
  • Izturība: · Pēc veiksmīgas darījuma pabeigšanas izmaiņām datubāzē vajadzētu saglabāties. Pat sistēmas kļūmju gadījumā.

ACID rekvizīts DBVS ar piemēru:

Zemāk ir ACID rekvizīta piemērs DBVS:

Transaction 1: Begin X=X+50, Y = Y-50 ENDTransaction 2: Begin X=1.1*X, Y=1.1*Y END

1. darījums pārskaita 50 USD no konta X uz kontu Y.

2. darījums katram kontam tiek ieskaitīts ar 10% procentu maksājumu.

Ja abi darījumi tiek iesniegti kopā, nav garantijas, ka 1. darījums tiks izpildīts pirms 2. darījuma vai otrādi. Neatkarīgi no pasūtījuma rezultātam jābūt tā, it kā darījumi notiktu pēc kārtas sērijveidā.

Darījumu veidi

Pamatojoties uz lietojuma jomām

  • Neizplatīts pret izplatīto
  • Kompensācijas darījumi
  • Darījumu laiks
  • Tiešsaistē vai partijā

Pamatojoties uz darbībām

  • Divpakāpju
  • Ierobežots
  • Darbības modelis

Pamatojoties uz struktūru

  • Vienkārši vai vienkārši darījumi: Tas sastāv no primitīvu darbību secības, kas izpildītas starp sākuma un beigu operācijām.
  • Ligzdoti darījumi: darījums, kas satur citus darījumus.
  • Darbplūsma

Kas ir grafiks?

Grafiks ir process, ar kuru izveido vienu grupu no vairākiem paralēliem darījumiem un izpilda tos pa vienam. Tam jāsaglabā secība, kādā instrukcijas parādās katrā darījumā. Ja vienlaikus tiek veikti divi darījumi, viena darījuma rezultāts var ietekmēt citu darījumu iznākumu.

Piemērs

Initial Product Quantity is 10Transaction 1: Update Product Quantity to 50Transaction 2: Read Product Quantity

Ja 2. darījums tiek veikts pirms 1. darījuma, tiks nolasīta novecojusi informācija par produkta daudzumu. Tādējādi ir nepieciešami grafiki.

Paralēla izpilde datu bāzē ir neizbēgama. Bet paralēla izpilde ir atļauta, ja starp vienlaicīgi izpildītajiem darījumiem pastāv ekvivalences attiecība. Šī līdzvērtība ir 3 veidu.

REZULTĀTA LĪDZSVARĪBA:

Ja pēc izpildes divos grafikos tiek parādīts viens un tas pats rezultāts, to sauc par rezultātu ekvivalentu grafiku. Viņi var piedāvāt to pašu rezultātu kādai vērtībai un atšķirīgus rezultātus citai vērtību kopai. Piemēram, vienā darījumā tiek atjaunināts produkta daudzums, bet citā tiek atjaunināta klienta informācija.

Skatīt līdzvērtību

Skata ekvivalence notiek, kad darījums abos grafikos veic līdzīgu darbību. Piemēram, vienā darījumā produktu tabulā tiek ievietota detalizēta informācija par produktu, savukārt arhīva tabulā - cita darījuma informācija. Darījums ir vienāds, bet tabulas ir atšķirīgas.

KONFLIKTU līdzvērtība

Šajā gadījumā divi darījumi atjaunina / skata to pašu datu kopu. Starp darījumiem pastāv konflikts, jo izpildes kārtība ietekmēs produkciju.

Kas ir serializējamība?

Serializējamība ir vienlaicīga grafika meklēšanas process, kura izvade ir vienāda ar sērijveida grafiku, kurā transakcija tiek izpildīta viena pēc otras. Atkarībā no grafiku veida ir divi serializācijas veidi:

  • Konflikts
  • Skats

Kopsavilkums:

  • Darījumu pārvaldība ir loģiska DBVS apstrādes vienība, kas ietver vienu vai vairākas piekļuves datu bāzei darbības
  • Tas ir darījums ir programmas vienība, kuras izpilde var mainīt datubāzes saturu, var arī neizmainīt to.
  • Vienlaicīgas piekļuves nepārvaldīšana var radīt tādas problēmas kā aparatūras kļūme un sistēmas avārijas.
  • Aktīvs, daļēji apņēmies, apņēmies, neizdevās un izbeigt ir svarīgi darījumu stāvokļi.
  • Pilna ACMS īpašību forma DBVS ir atomitāte, konsekvence, izolācija un izturība
  • Trīs DBVS darījumu veidi ir balstīti uz lietojuma apgabaliem, darbību un struktūru.
  • Grafiks ir process, ar kuru izveido vienu grupu no vairākiem paralēliem darījumiem un izpilda tos pa vienam.
  • Serializējamība ir vienlaicīga grafika meklēšana, kura izvade ir vienāda ar sērijveida grafiku, kur darījumi tiek veikti viens pēc otra.