Compensating transaction
एक व्यावसायिक प्रक्रिया के निष्पादन में एक या अधिक लेन-देन होते हैं। प्रत्येक लेन-देन में कई व्यक्तिगत संचालन शामिल हो सकते हैं, फिर भी समग्र रूप से, यह प्रणाली को सुसंगत अवस्थाओं के बीच ले जाता है। प्रणालियों के दो समूह हैं जहाँ क्षतिपूर्ति लेनदेन लागू किया जा सकता हैः 1. डेटाबेस के संदर्भ में यह अक्सर लेनदेन और कमिट/रोलबैक तंत्र का उपयोग करके आसानी से प्राप्त किया जाता है। क्षतिपूर्ति लेन-देन तर्क को प्रतिबद्ध/रोलबैक का समर्थन करने वाले डेटाबेस के शीर्ष पर अतिरिक्त के रूप में लागू किया जा सकता है। उस स्थिति में, हम व्यावसायिक लेन-देन की बारीकियों को कम कर सकते हैं। 2. उपलब्ध कमिट/रोलबैक तंत्र के बिना प्रणालियों के लिए, कोई भी क्षतिपूर्ति लेनदेन के साथ एक असफल लेनदेन को पूर्ववत कर सकता है, जो प्रणाली को उसकी प्रारंभिक स्थिति में वापस लाएगा। आमतौर पर, यह केवल एक वर्कअराउंड है जिसे मैन्युअल रूप से लागू किया जाना है और यह गारंटी नहीं दे सकता है कि सिस्टम हमेशा एक सुसंगत स्थिति में समाप्त होता है। सिस्टम डिजाइनर को इस बात पर विचार करने की आवश्यकता हो सकती है कि यदि क्षतिपूर्ति लेनदेन भी विफल हो जाता है तो क्या होता है। क्षतिपूर्ति लेनदेन का उपयोग उन मामलों में भी किया जाता है जहां एक लेनदेन लंबे समय तक चलता है (जिसे आमतौर पर सागा लेनदेन कहा जाता है), उदाहरण के लिए एक व्यावसायिक प्रक्रिया में जिसमें उपयोगकर्ता इनपुट की आवश्यकता होती है। ऐसे मामलों में, डेटा स्थायी भंडारण के लिए प्रतिबद्ध होगा, लेकिन बाद में इसे वापस लेने की आवश्यकता हो सकती है, शायद उपयोगकर्ता द्वारा ऑपरेशन को रद्द करने का विकल्प चुनने के कारण। पारंपरिक रोलबैक के विपरीत, विशिष्ट व्यावसायिक तर्क की आवश्यकता आम तौर पर एक लंबे समय तक चलने वाले लेनदेन को वापस लेने और प्रणाली को उसकी मूल स्थिति में बहाल करने के लिए होगी। इस प्रकार का लेन-देन वितरित लेन-देन से अलग होता है (अक्सर दो-चरण-प्रतिबद्धता प्रोटोकॉल का उपयोग करके लागू किया जाता है), क्योंकि हालांकि दोनों प्रकार के लेन-देन के परिणामस्वरूप कई डेटा स्टोरों को अद्यतन किया जा सकता है, क्षतिपूर्ति लेनदेन लंबे समय तक अद्यतन करने की अनुमति देता है। क्षतिपूर्ति लेनदेन अक्सर वेब सेवाओं में डिज़ाइन किए जाते हैं जो व्यावसायिक प्रक्रियाओं के निष्पादन में भाग लेते हैं जो एक सेवा-उन्मुख वास्तुकला समाधान का हिस्सा हैं। व्यापार प्रक्रिया निष्पादन भाषा संदर्भ डेटा तुल्यकालन लेनदेन प्रसंस्करण भी देखें।