ПредишенСледващото

Има различни модели на сделки, които могат да бъдат класифицирани въз основа на различни свойства, включително структурата на сделката, паралелизма в рамките на срока на сделката и Т. Г.

В момента има следните типове транзакции: плоски или традиционни сделки верига сделка и вложени транзакции.

Плосък или традиционни сделка, се характеризира с четири класически свойства: валентност, последователност, изолация, издръжливост (сила) - киселина (валентност, последователност, изолация, Дълготрайност). От време на време традиционен сделка ACID наречените сделки. Горните характеристики са както следва:

  • валентност (валентност) имот е отразено във факта, че сделката трябва да бъде изпълнена изцяло или въобще не се извършва.
  • съгласуваност собственост (Съвместимост) гарантира, че като приключите ход данни транзакция от една последователна състояние в друго - сделката не унищожава взаимното съответствие на данните.
  • изолация на имота (изолация) означава, че се конкурират за достъп до транзакцията на базата данни е физически обработват последователно, в изолация един от друг, но за потребителя всичко личи, че те се изпълняват паралелно.
  • трайност собственост (Дълготрайност) се тълкува по следния начин: ако сделката приключи успешно, след промените в данните, които са били направени, че не може да се изгуби при никакви обстоятелства (дори и в случай на последващи грешки).

Два варианта на сделката. Ако всички оператори .vypolneny успешни и по време на изпълнението на сделката не е имало хардуерни или софтуерни повреди, сделката е извършено.

Ангажиране на сделката - акт, който предвижда промени за запис на диск на бази данни, които са направени в хода на сделката.

До сделката не се ангажира, е позволено отмяната на тези промени, възстановяване на базата данни за състоянието, в което е било в началото на сделката. Ангажиране сделка означава, че всички резултати от сделката да станат постоянни. Те ще бъдат видими за други сделки само след текущата сделката е извършено. До този момент всички данни, засегнати от сделката, ще бъде "видим" за потребителя в началото на текущата транзакция.

Ако в хода на сделката, се случи нещо, което прави невъзможно за нормално неговото прекратяване, базата данни трябва да се върне в първоначалното състояние. Връщане на сделката - акт, който предвижда отмяна на всички промени на данните, които са направени SQL изявления в тялото на настоящия непълен сделката.

Всяка декларация по сделка изпълнява своята част от работата, но и за успешното приключване на работата като цяло се изисква безусловно изпълнение на всички техни оператори. Групирането на отчети в базата данни на сделката съобщава, че цялата тази група трябва да бъде оформена като неразделна част, където това изпълнение да се поддържа автоматично.

В ANSI / ISO SQL стандарта дефинира модел сделка и функция COMMIT и ROLLBACK отчети. Стандартът уточнява, че сделка, започва с първата SQL-декларация, инициирана от даден потребител или съдържащи се в програмата, за да се промени сегашното състояние на базата данни. Всички следващи SQL операторите съставляват тялото на сделката. Операцията е завършена в една от четирите възможни начини (фигура 11.1.):

  1. COMMIT изказване показва успешното приключване на сделката; ползване извършва постоянни промени в базата данни като част от текущата сделката;
  2. ROLLBACK изявление прекрати сделката, се промени при отмяната, направени на база данни в рамките на тази сделка; Нова сделка започва веднага след употреба ROLLBACK;
  3. успешното приключване на програмата, в която е започнала настоящата сделка, е успешното приключване на сделката (като че ли е бил използван комит изявление);
  4. погрешно завършване на програмата може да се прекрати сделката (като че ли е бил използван изявление ROLLBACK).

В този модел, всеки оператор, който се променя състоянието на базата данни, се разглежда като сделка, така че успешното приключване на оператора на база данни сключи нов стабилно състояние.

Първите версии на търговска база данни е приложена модел ANSI / ISO сделка. По-късно в базата данни Sybase се реализира разширен модел сделка, която включва редица допълнителни операции. Sybase Моделът използва следните четири твърдения:

  • ЗАПОЧНЕТЕ изявление СДЕЛКИ обявява началото на сделката. За разлика от модела в ANSI / ISO стандарт, където в началото на сделката е имплицитно е дефиниран в първата модификация на данни оператор в началото на сделката Sybase модел е дадено изрично от оператор започва сделка.
  • COMMIT изявление СДЕЛКИ да обявят успешното приключване на сделката. Това е равносилно да се ангажират изявление в модел на ANSI / ISO стандарт. Този оператор, COMMIT оператор записва всички промени, направени в базата данни по време на сделката.
  • изявление SAVE сделка по сделка създава спаси точка, която отговаря на междинно състояние на базата данни се съхраняват по време на изпълнението на този оператор. изявлението на сделката SAVE може да бъде на името на точката за спаси. Ето защо, по време на изпълнение на множество сделки точка на запис могат да се съхраняват, съответстваща на множество междинни състояния.
  • ROLLBACK оператор има две модификации. Ако това твърдение се използва без допълнителен параметър, то се тълкува като връщане назад оператор на цялата сделка, а именно, в този случай, това е еквивалентно на намаление на цените на намаление на цените оператор в модела на ANSI / ISO. Ако операторът има опция намаление на цените и намаление на цените записва като В, се тълкува като оператор частично намаление на цените на транзакция в точка на запис Б.

свойства на сделки

Фиг. 11.1.Model сделки ANSI / ISO

Принципи за извършване на сделки по модели разширени транзакциите са показани на фиг. 11.2. Фигурата маркирани числата на операторите да ни е по-лесно да се следват хода на операцията към всички допустими случаи.

свойства на сделки

Фиг. 11.2.Primery извършване на сделки в разширен модел

A транзакция започва изрично сделка започна от оператора, който е в нашата схема номер 1. След това е операторът 2, която е оператор на търсене и не променя текущото състояние на базата данни, и то след операторите 3 и 4 конвертиране на базата данни е вече в новата държава. Операторът 5 магазина тази нова междинно състояние на базата данни и да го маркира като междинно състояние в точка А. Това е последвано от операторите 6 и 7, които прехвърлят данни към ново състояние. 8 А, операторът поддържа това състояние като междинно състояние при точка Б. вход оператор 9 осъществява на нови данни, и оператора 10 извършва някои състояние проверка 1; ако условието 1 е изпълнено, тогава операторът е удовлетворен 11, който провежда общо намаление на цените на междинно състояние Б. Това означава, че последиците от действията на оператора, като 9 заличава и се връща на база данни на междинното състояние, но след като операторът 9, тя вече е в ново състояние. И след връщане назад сделка вместо оператора 9, което се проведе по-рано, защото на статута в оператора на база данни 13 въведете нови данни, а след това контрол се предава на оператора 14. Операторът 14 отново проверява състоянието, но условие povoe 2; ако условието е изпълнено, тогава контролът се предава на оператора 15, който хвърля обратно на сделката в междинно състояние А, това е, всички изявления, които променят базата данни, като се започне с 6 и завършва с 13, се провали, т.е. резултатите от тяхното изпълнение са си отишли ​​и ние отново сме в състояние да И, след изпълнението на изявление 4. на следващо място, контрол се предава на оператора 17, който обновява съдържанието на базата данни, след което управлението се предава на оператора 18, което е свързано с проверка на условията или 3. тест завършва управлението на преноса оп Rathore 20, с който се задължават сделката, както и базата данни отива в нова стабилна държава, и да го промените като част от текущата сделката не е възможно. Или, ако контрол предава на оператора 19, сделката се навива обратно в началото на базата данни и се връща в първоначалното си състояние, както и всички междинни състояния, които вече се проверяват и да извършвате операция намаление на цените в междинното състояние, след като операторът 19 е невъзможно.

Разбира се, моделът на удължен сделка, предложен от Sybase, поддържа много по-гъвкав механизъм за сключване на сделки. точки на запис позволяват да зададете маркери в рамките на една сделка, така че да е възможно да се отмени само част от работата, извършена в сделката. Препоръчително е да се използва точка на запис в дълги и сложни операции, за да се даде възможност да отмени промените в някои оператори. Все пак, това води до допълнителни разходи за системни ресурси - операторът върши работата, а след промените, са отменени; обикновено подобрения в обработката на логика могат да бъдат по-оптимални.

Новини
Knights етер теория

Това Корнилов написа на страницата си в социалната мрежа.

Според Корнилов, тогава посланието му беше посрещната с недоверие.

Сега Владимир Корнилов реши да се върне към този въпрос, във връзка с които публикува в Моята страница във Фейсбук снимки мистериозни израелци, които взеха участие в клането в Одеса.

Сред многото въпроси, които Корнилов, каза той, биха искали да получите отговор, например, са както следва:

"Защо са случайно отиде в Одеса с медицинско оборудване, гумени ръкавици, ако са знаели предварително, че ще бъде ранен и убит? Или защо този боец ​​изведнъж забравили английски, когато разбра, че досието му? ".

Езера, морета и океани от северните --------- lushariya върти обратно на часовниковата стрелка Lc m - р-в-к-и, и водата в южната polushariya - RA - проводим разтваря -sya- зало- ч ас стрелка - Obra-zuya- -Oral-мравка-ски-е-ово-вода компания.

Основната причина за водовъртежите на въртене са местен вятър.
Колкото по-висока скорост на вятъра по-висока скорост на въртене на водовъртежи и като следствие, по-високи водовъртежи центробежната сила, като по този начин увеличаване на нивото на водата на морета и океани.
И толкова по-ниска центробежната сила от водовъртежи, толкова по-ниско нивото на водата в моретата и океаните.

скорост на потока по периметъра на моретата и океаните не е същото навсякъде и зависи от дълбочината на брега. В плитка част на скоростта на морските течения се увеличава, а в дълбоката част на морето се намалява.
Сезонни колебания в нивото на водата часовник-tsya не около бреговете на моретата и океаните-те, но само в тези брегове, където -висока ъгловата скорост на потоците и следователно висока центробежната сила на водата. (Центробежната сила F В = V / R).
През прави брегове, където течения нямат никаква ъглова скорост ниво на водата не се покачва.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!