Skip to content

Commit

Permalink
CAP Theorem content added
Browse files Browse the repository at this point in the history
  • Loading branch information
lahin31 committed Nov 9, 2023
1 parent de3499f commit d4b699e
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 5 deletions.
26 changes: 21 additions & 5 deletions sections/cap-theorem/README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,27 @@
## Consistency
## Consistency, Availability & Partition Tolerance in Distributed System

ডেটাবেসে যখন কোনো ট্রান্সেকশন হবে মানে কোনো প্রকারের আপডেট অপারেশন ঘটলে, সব নোডে/সার্ভার এ একই বা constant ভ্যালু থাকবে।
কোনো Distributed System এ Consistency, Availability এবং Partition Tolerance সব একসাথে মিলে কাজ করতে পারবে না, হয় আপনাকে Consistency কিংবা Availability কিংবা Partition Tolerance secrifice করতে হবে। তারমানে যা দাড়ালো, সিস্টেমে

* Consistency আর Availability থাকবে।
* Consistency আর Partition Tolerance থাকবে।
* Availability আর Partition Tolerance থাকবে।

এই তিনটি থেকে যেকোনো একটি মেনে চলবে।

### যদি সিস্টেমে Consistency আর Availability মেনে চলে

Distributed System এ Consistency আর Availability মেনে চলি তারমানে সিস্টেমের সব নোডে সবসময় Consistent Value থাকবে এবং প্রতিটি নোড সবসময় Available থাকবে।

<p align="center">
<img src="./images/cap-1.png" alt="cap theorem">
</p>

এখন যদি দুটি নোডের মধ্যে Partition Tolerance হয়,

<p align="center">
<img src="./images/consistency.png" alt="consistency">
<img src="./images/cap-2.png" alt="cap theorem">
</p>

(CAP Theorem এবং ACID এর C(consistency) কিন্তু এক না। CAP Theorem এর consistency মানে হল Distributed System এর সব নোডে একই সময় একই(consistent) ভ্যালু থাকবে। ACID এর consistency মানে হল প্রতিটি Transection একটি Database state কে, একটি constant state থেকে আরেকটি constant state এ রূপান্তর করবে।)
Node 1 এ কোনো ভ্যালু আপডেট হলে সেটি আর Node 2 এর সাথে sync হতে পারবে না। তাহলে consistency আর থাকবে না। এখন সিস্টেমের consistency আর availability একসাথে Maintain রাখতে হলে তখন আমাদের সিস্টেম বন্ধ রাখতে হবে।

(চলমান)
তারমানে consistency আর availability এর জন্য Partition Tolerance বাদ দিতে হবে।
Binary file added sections/cap-theorem/images/cap-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added sections/cap-theorem/images/cap-2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed sections/cap-theorem/images/consistency.png
Binary file not shown.

0 comments on commit d4b699e

Please sign in to comment.