Bitimni qayta ishlash - Transaction processing

Bitimni qayta ishlash ma'lumotni qayta ishlashdir Kompyuter fanlari deb nomlangan individual, bo'linmaydigan operatsiyalarga bo'linadi bitimlar. Har bir bitim muvaffaqiyatli bo'lishi kerak yoki muvaffaqiyatsiz to'liq birlik sifatida; u hech qachon qisman to'liq bo'la olmaydi.

Masalan, siz onlayn kitob do'konidan kitob sotib olsangiz, pulni (kredit shaklida) kitobga almashtirasiz. Agar sizning kreditingiz yaxshi bo'lsa, bir qator tegishli operatsiyalar sizning kitobni olishingizni va kitob do'koni sizning pulingizni olishni ta'minlaydi. Ammo, agar almashish paytida ketma-ket bitta operatsiya bajarilmasa, butun almashinuv muvaffaqiyatsiz bo'ladi. Siz kitobni olmaysiz va kitob do'koni sizning pulingizni olmayapti. Ayirboshlashni muvozanatli va bashoratli qilish uchun mas'ul bo'lgan texnologiya tranzaktsiyalarni qayta ishlash deb ataladi. Tranzaksiyalar tranzaksiya bo'linmasidagi barcha operatsiyalar muvaffaqiyatli yakunlanmasa, ma'lumotlar yo'naltirilgan resurslar doimiy ravishda yangilanib turmasligini ta'minlaydi. Tegishli operatsiyalar to'plamini to'liq muvaffaqiyatli yoki to'liq bajarilmaydigan qismga birlashtirib, xatolarni tiklashni soddalashtirish va o'z dasturini yanada ishonchli qilish mumkin.

Tranzaktsiyalarni qayta ishlash tizimlari biznesni yuritish uchun zarur bo'lgan muntazam operatsiyalarni amalga oshiradigan tranzaktsiyaga yo'naltirilgan dasturni joylashtiradigan kompyuter texnikasi va dasturiy ta'minotidan iborat. Bunga savdo buyurtmalarini kiritish, aviakompaniyalarni bron qilish, ish haqi, xodimlarning yozuvlari, ishlab chiqarish va etkazib berishni boshqaradigan tizimlar kiradi.

Bugungi kunda tranzaktsiyalarni qayta ishlash ko'pi bilan hammasi emas, balki interaktiv bo'lganligi sababli, bu atama ko'pincha sinonim sifatida qaraladi onlayn tranzaktsiyalarni qayta ishlash.

Tavsif

Tranzaktsiyalarni qayta ishlash tizimning yaxlitligini ta'minlash uchun mo'ljallangan (odatda a ma'lumotlar bazasi yoki zamonaviy fayl tizimlari ) ma'lum, izchil holatda, tizimdagi o'zaro bog'liq operatsiyalarning barchasi muvaffaqiyatli bajarilishini yoki barchasi muvaffaqiyatli bekor qilinishini ta'minlash orqali.

Masalan, mijozning omonat hisobvarag'idan mijozning hisobvarag'iga 700 dollarni o'tkazishni o'z ichiga olgan odatdagi bank operatsiyasini ko'rib chiqing. Ushbu tranzaksiya kamida ikkita alohida operatsiyalarni o'z ichiga oladi: kompyuter hisobvarag'idan 700 dollar, hisob-kitob hisobvarag'idan 700 dollar. Agar operatsiyalardan biri muvaffaqiyatli bo'lsa, ikkinchisi muvaffaqiyatsiz bo'lsa, kun oxirida bank daftarlari muvozanatlashmaydi. Shuning uchun har ikkala operatsiyani ham muvaffaqiyatli bajarilishini yoki ikkalasini ham muvaffaqiyatsiz bo'lishini ta'minlashning bir usuli bo'lishi kerak, shunda umuman bank ma'lumotlar bazasida hech qachon nomuvofiqlik bo'lmaydi.

Bitimni qayta ishlash bittadan bo'linmas bitimdagi bir nechta individual operatsiyalarni bog'laydi va bitimdagi barcha operatsiyalar xatosiz bajarilishini yoki ularning hech biri bajarilmasligini ta'minlaydi. Agar ba'zi operatsiyalar bajarilgan bo'lsa, ammo boshqalari urinishda xatolar yuzaga kelsa, tranzaktsiyalarni qayta ishlash tizimi "orqaga qaytadi" barchasi bitim operatsiyalari (shu jumladan muvaffaqiyatli bo'lganlar), shu bilan tranzaktsiyaning barcha izlarini o'chirib tashlaydi va tizimni operatsiyani qayta ishlash boshlanishidan oldin bo'lgan holatini izchil, ma'lum holatiga keltiradi. Agar bitimning barcha operatsiyalari muvaffaqiyatli yakunlangan bo'lsa, bitim amalga oshiriladi sodir etilgan tizim tomonidan va ma'lumotlar bazasidagi barcha o'zgarishlar doimiy ravishda amalga oshiriladi; bitim amalga oshirilgandan so'ng uni qaytarib bo'lmaydi.

Tranzaktsiyalarni qayta ishlash operatsiyani qisman tugatishi mumkin bo'lgan apparat va dasturiy ta'minot xatolaridan himoya qiladi. Agar bitim o'rtasida kompyuter tizimi ishdan chiqsa, tranzaktsiyalarni qayta ishlash tizimi har qanday kelishilmagan operatsiyalardagi barcha operatsiyalar bekor qilinishini kafolatlaydi.

Odatda, bitimlar bir vaqtning o'zida beriladi. Agar ular bir-biriga to'g'ri keladigan bo'lsa (ya'ni ma'lumotlar bazasining bir xil qismiga tegizish kerak bo'lsa), bu nizolarni keltirib chiqarishi mumkin. Masalan, agar yuqoridagi misolda keltirilgan mijozning omonat hisobvarag'ida 150 AQSh dollari bo'lsa va 100 dollarni boshqa shaxsga o'tkazishga harakat qilsa, shu bilan 100 dollarni tekshirish hisob raqamiga o'tkazsa, ulardan faqat bittasi muvaffaqiyatga erishishi mumkin. Biroq, operatsiyalarni ketma-ket qayta ishlashga majburlash samarasiz. Shuning uchun tranzaktsiyalarni qayta ishlashni bir vaqtda amalga oshirish yakuniy natija mojarolarsiz natijani aks ettirishini kafolatlash uchun dasturlashtirilgan bo'lib, operatsiyalarni har qanday tartibda ketma-ket amalga oshirishda erishilishi mumkin bo'lgan (mulk deb nomlangan xususiyat) ketma-ketlik ). Bizning misolimizda, shuni anglatadiki, qaysi bitim birinchi bo'lib amalga oshirilishidan qat'i nazar, boshqa shaxsga o'tkazilishi yoki tekshiruv hisobvarag'iga o'tishi muvaffaqiyatli bo'ladi, ikkinchisi esa muvaffaqiyatsiz bo'ladi.

Metodika

Barcha tranzaktsiyalarni qayta ishlash tizimlarining asosiy printsiplari bir xil. Shu bilan birga, atamalar bitimni qayta ishlash tizimidan boshqasiga farq qilishi mumkin va quyida keltirilgan atamalar shart emas.

Orqaga qaytarish

Tranzaktsiyalarni qayta ishlash tizimlari ma'lumotlar bazasining o'zgartirilishini uning oraliq holatlarini qayd etish orqali ma'lumotlar bazasining yaxlitligini ta'minlaydi, so'ngra ushbu yozuvlardan foydalanib ma'lumotlar bazasini operatsiyani amalga oshirish mumkin bo'lmagan holatga keltiradi. Masalan, ma'lumotlar bazasidagi ma'lumotlarning nusxalari oldin tranzaksiya tomonidan uning modifikatsiyasiga tranzaksiya har qanday modifikatsiyani amalga oshirishdan oldin tizim tomonidan ajratiladi (bu ba'zan a deb nomlanadi tasvirdan oldin). Agar bitimning biron bir qismi bajarilishidan oldin bajarilmasa, ushbu nusxalar ma'lumotlar bazasini tranzaktsiya boshlanishidan oldingi holatini tiklash uchun ishlatiladi.

Rollforward

Bundan tashqari, alohida saqlash mumkin jurnal ma'lumotlar bazasini boshqarish tizimidagi barcha o'zgartirishlar. (ba'zan chaqiriladi tasvirlardan keyin). Bu muvaffaqiyatsiz tranzaktsiyalarni qaytarib olish uchun talab qilinmaydi, ammo ma'lumotlar bazasi ishlamay qolganda ma'lumotlar bazasini boshqarish tizimini yangilash uchun foydalidir, shuning uchun ba'zi bir operatsiyalarni qayta ishlash tizimlari uni ta'minlaydi. Agar ma'lumotlar bazasini boshqarish tizimi to'liq ishlamay qolsa, uni eng so'nggi zaxira nusxasidan tiklash kerak. Zaxira nusxasi zaxira qilinganidan beri qilingan operatsiyalarni aks ettirmaydi. Biroq, ma'lumotlar bazasini boshqarish tizimi tiklangandan so'ng, keyin tasvirlar jurnali ma'lumotlar bazasiga qo'llanilishi mumkin (oldinga) ma'lumotlar bazasini boshqarish tizimini zamonaviy holatga keltirish. Nosozlik paytida amalga oshirilayotgan har qanday bitimlar orqaga qaytarilishi mumkin. Natijada, muvaffaqiyatsizlikka qadar amalga oshirilgan barcha operatsiyalar natijalarini o'z ichiga olgan izchil, ma'lum holatdagi ma'lumotlar bazasi.

O'chirish

Ba'zi hollarda, ikkita bitim, ularni qayta ishlash jarayonida, ma'lumotlar bazasining bir xil qismiga bir vaqtning o'zida kirishga urinishlari mumkin, bu esa ularni davom ettirishga to'sqinlik qiladi. Masalan, A tranzaksiya ma'lumotlar bazasining X qismiga, B tranzaksiya esa ma'lumotlar bazaning Y qismga kirishi mumkin. Agar o'sha paytda A tranzaksiya ma'lumotlar bazasining Y qismiga kirishga harakat qilsa, B tranzaksiya X, a qismlarga kirishga harakat qiladi boshi berk sodir bo'ladi va ikkala operatsiya ham oldinga siljiy olmaydi. Tranzaktsiyalarni qayta ishlash tizimlari ushbu to'siqlarni yuzaga kelganda aniqlashga mo'ljallangan. Odatda ikkala tranzaksiya bekor qilinadi va qaytarib olinadi, so'ngra ular boshqa tartibda, avtomatik ravishda qaytadan boshlanib ketishi uchun boshlanadi. Yoki ba'zida blokirovka qilingan bitimlardan faqat bittasi bekor qilinadi, qaytarib olinadi va qisqa kechikishdan keyin avtomatik ravishda qayta boshlanadi.

Uchinchi yoki undan ortiq bitimlar orasida blokirovka ham bo'lishi mumkin. Tranzaktsiyalarni jalb qilish qanchalik qiyin bo'lsa, tranzaktsiyalarni qayta ishlash tizimlari ular aniqlay olishlari mumkin bo'lgan to'siqlarning amaliy chegarasi borligini aniqlaydilar.

Kompensatsiya operatsiyasi

Amalga oshirish va orqaga qaytarish mexanizmlari mavjud bo'lmagan yoki kerak bo'lmagan tizimlarda, a kompensatsiya operatsiyasi ko'pincha muvaffaqiyatsiz operatsiyalarni bekor qilish va tizimni avvalgi holatiga qaytarish uchun ishlatiladi.

Kislota mezonlari

Jim Grey qisqartirish ostida 1970 yillarning oxirlarida ishonchli tranzaksiya tizimining xususiyatlarini aniqladi Kislota - atomiklik, izchillik, izolyatsiya va chidamlilik.[1]

Atomiklik

Bitimning holatga o'zgarishi atomik: yoki barchasi sodir bo'ladi yoki yo'q. Ushbu o'zgarishlarga ma'lumotlar bazasining o'zgarishi, xabarlar va transduserlar bo'yicha harakatlar kiradi.

Muvofiqlik

Muvofiqlik: Bitim - bu davlatning to'g'ri o'zgarishi. Guruh sifatida amalga oshirilgan harakatlar davlat bilan bog'liq bo'lgan yaxlitlik cheklovlarini buzmaydi.

Izolyatsiya

Bitimlar bir vaqtning o'zida amalga oshirilganiga qaramay, har bir T tranzaktsiyada boshqalar T yoki Tdan oldin bajarilgan ko'rinadi, lekin ikkalasi ham emas.

Chidamlilik

Bitim muvaffaqiyatli bajarilgandan so'ng (bajariladi), ma'lumotlar bazasidagi o'zgarishlar muvaffaqiyatsizlikka uchraydi va o'zgarishlarni saqlab qoladi.

Foyda

Bitimni qayta ishlash quyidagi afzalliklarga ega:

  • Bu ko'plab foydalanuvchilar o'rtasida kompyuter resurslarini baham ko'rishga imkon beradi
  • Bu ishni qayta ishlash vaqtini hisoblash resurslari kamroq bo'lgan vaqtga o'tkazadi
  • Bu odamlarning o'zaro ta'sirisiz va nazoratsiz hisob-kitob resurslarini bekor qilishdan saqlaydi
  • U qimmatbaho kompyuterlar sinflarida ushbu qimmat manbalardan foydalanishning yuqori sur'atlarini saqlab, xarajatlarni amortizatsiya qilishga yordam beradi

Kamchiliklari

  • Ularning o'rnatish xarajatlari nisbatan qimmat
  • Standart formatlarning etishmasligi mavjud
  • Uskuna va dasturlarning mos kelmasligi

Amaliyotlar

Standart operatsiyani qayta ishlash dasturiy ta'minot, kabi IBM "s Axborotni boshqarish tizimi, birinchi bo'lib 1960-yillarda ishlab chiqilgan va ko'pincha ma'lum narsalar bilan chambarchas bog'langan ma'lumotlar bazasini boshqarish tizimlari. Mijoz-serverni hisoblash o'xshash printsiplarni 1980 yillarda aralash muvaffaqiyat bilan amalga oshirdi. Biroq so'nggi yillarda tarqatilgan mijoz-server modelini saqlab qolish ancha qiyinlashdi. Har xil onlayn xizmatlarga javoban bitimlar soni ko'payganligi sababli (ayniqsa Internet ), yagona tarqatilgan ma'lumotlar bazasi amaliy echim emas edi. Bundan tashqari, aksariyat onlayn tizimlar bitta server tranzaktsiyalarni qayta ishlashga qodir bo'lgan qat'iy mijoz-server modelidan farqli o'laroq, birgalikda ishlaydigan bir qator dasturlardan iborat. Bugungi kunda dasturlararo ishlaydigan bir qator tranzaktsiyalarni qayta ishlash tizimlari mavjud bo'lib, ular yirik tizimlarga, shu jumladan meynframlar.

Bitta harakat - bu X / Ochiq tarqatilgan tranzaktsiyalarni qayta ishlash (DTP) (shuningdek qarang Java Transaction API (JTA). Biroq, IBM kabi mulkiy tranzaktsiyalarni qayta ishlash muhiti CICS hali ham juda mashhur,[iqtibos kerak ] garchi CICS rivojlanib, ochiq sanoat standartlarini ham o'z ichiga olgan bo'lsa.

Ekstremal tranzaktsiyalarni qayta ishlash (XTP) atamasi tranzaktsiyalarni qayta ishlash tizimlarini odatiy ravishda qiyin bo'lgan talablar, xususan ishlab chiqarish samaradorligi talablari (soniyadagi operatsiyalar) bilan tavsiflash uchun ishlatilgan. Bunday tizimlar tarqatilgan yoki klaster uslubidagi arxitektura orqali amalga oshirilishi mumkin. U kamida 2011 yilgacha ishlatilgan.[2][3]

Adabiyotlar

  1. ^ Kulrang, Jim; Reuter, Andreas. "Tranzaktsiyalarni qayta ishlash - tushuncha va usullar (Powerpoint)". Olingan 12-noyabr, 2012.
  2. ^ Koen Vanderkimpen va Dirk Deridder. "Sog'liqni saqlash uchun eXtreme-ga o'tish". Devoxx 2011 taqdimoti. Olingan 18 mart, 2017.
  3. ^ Kevin Roebuck (2011). Haddan tashqari tranzaktsiyalarni qayta ishlash. Chaqmoq manbai. ISBN  978-1-74304-266-3.

Qo'shimcha o'qish

  • Gerxard Vaykum, Gotfrid Vossen, Tranzaktsion axborot tizimlari: nazariya, algoritmlar va paralellikni boshqarish va tiklash amaliyoti, Morgan Kaufmann, 2002 yil, ISBN  1-55860-508-8
  • Jim Grey, Andreas Reuter, tranzaktsiyalarni qayta ishlash - tushuncha va usullar, 1993, Morgan Kaufmann, ISBN  1-55860-190-2
  • Filipp A. Bernshteyn, Erik Nyukomer, Transaktsiyalarni qayta ishlash tamoyillari, 1997, Morgan Kaufmann, ISBN  1-55860-415-4
  • Ahmed K. Elmagarmid (muharrir), ma'lumotlar bazasining kengaytirilgan dasturlari uchun tranzaksiya modellari, Morgan-Kaufmann, 1992, ISBN  1-55860-214-3

Tashqi havolalar