আজকে আমাদের আলোচনার বিষয় -Diagram-সহ Transaction এর State-সমূহ যা অধ্যায়-৯ এর ডাটাবেস ম্যানেজমেন্ট সিস্টেম এ অন্তর্ভুক্ত। এটি চার বছর মেয়াদি কোর্সের আলোকে লেখা হয়েছে। ডাটাবেস ম্যানেজমেন্ট সিস্টেমের বিভিন্ন ইংরেজি বই অনুসরণ করেই রচনা করা হয়েছে। ইঞ্জিনিয়ারিং বিষয়ের যে-কোন বই সম্পূর্ণরূপে বাংলা ভাষায় রচনা করা সম্ভব নয়। এজন্যে কিছু কিছু ইংরেজি শব্দকে বাংলায় অনুবাদ করা হয়নি। ফলে ছাত্রছাত্রীদের হয়ত কিছুটা অসুবিধা হতে পারে।
Diagram-সহ Transaction এর State-সমূহ
Transaction হল Program execution এর একটি Unit যা Database এর পরিবর্তন ঘটিয়ে থাকে। আমরা জানি যে Transaction সব সময় পুরোপুরি সফল নাও হতে পারে। Transaction এর এই অবস্থাকে Aborted বলে। যদি Abone Transaction দ্বারা পরিবর্তনকৃত কোন Data কে আবার পূর্বের অবস্থায় ফিরিয়ে আনা হয় তবে তাকে Roll back বলে। আবার যা কোন Transaction সফলতার সাথে নির্বাহ হয় তবে তাকে Committed বলে। একবার যদি কোন Transaction committed হয়ে যায় তবে তার Effect কে aborting দ্বারা আর Undo করা যায় না। সেক্ষেত্রে একমাত্র একটি compensating transaction execut করে এর Effect-সমূহকে Undo করা যায়।

একটি Transaction এর বিভিন্ন State কে যদি চিত্রের মাধ্যমে উপস্থাপন করা হয় তবে তাকে Transaction এর Sus diagram বলে। নিচে Transaction এর State diagram অঙ্কন করে এর বিভিন্ন State বর্ণনা করা হলঃ
চিত্র হতে বুঝা যাচ্ছে যে একটি Transaction এর পাঁচটি State রয়েছে, যথাঃ
1. Active state
2. Partially committed state
3. Failed state
4. Aborted state
5. Committed state.

এদের বর্ণনা নিম্নে দেওয়া হলঃ
1. Active state: এটি Transaction এর প্রাথমিক State। যখন কোন Transaction নির্বাহরত অবস্থায় থাকে তখন তাবে Active বলে। চিত্র হতে বুঝা যায় যে, তা Fail অথবা Partially committed হতে পারে।
2. Partially committed state: যদি কোন Transaction এর সর্বশেষ Statement নির্বাহ শেষ হয়ে যায় তবে তা এই Stat এ অবস্থান করে। এরপর তা Committed state-এ যায়।
3. Failed state: যখন কোন Transaction কে আর স্বাভাবিকভাবে নির্বাহ করা সম্ভব না হয় তখন তা Failed state-এ চরে যায়। এর পর ঐ Transaction aborted হয়ে যায়।
4. Aborted state: Failed state এর কোন Transaction কে Rolled back করার পর এবং Datebase কে Restore করার Transaction এর Aborted state সৃষ্টি হয়। এটি হল Transaction শুরু হওয়ার পূর্বের অবস্থার সমান অবস্থা।
5. Committed state: একটি Transaction শতভাগ সফল হওয়ার পরের অবস্থাকেই Committed State বলে। কোন ransaction কেবলমাত্র যখন Committed state এ পৌছাবে শুধুমাত্র তখনই তাকে শতভাগ সফল বলা যাবে। অনুরূপভাবে কোন ransaction যদি Aborted state এ পৌছে শুধুমাত্র তখনই তাকে Aborted বলা যাবে। যখন কোন Transaction committed রথবা Aborted হয় তখন তাকে Terminated বলা হয়। যখন কোন Transaction aborted state-এ পৌছায় তখন System এর নিকট দুইটি Option থাকে, যেমন-
1. Restart option
2. Kill option.

1. Restart option: যদি Transaction এর Internal logic error এর কারণে না হয়ে Computer এর Hardware বা Software এর কারণে Transaction aborted হয় তখন System restart হয়। Restarted-এর পর Transaction নতুনভাবে শুরু হয়।
2. Kill option: Transaction এর Internal logic error এর কারণে তা Aborted হলে তখন ঐ Transaction কে System ill করে।
আরও দেখুনঃ
