Middle+
Mi a CAP-tétel értelme?
sobes.tech MI
Válasz az MI-től
A CAP-tétel (Konzisztencia, Elérhetőség, Partíciótűrés) kimondja, hogy egy elosztott rendszerben csak két a három tulajdonság közül garantálható egyszerre:
- Konzisztencia (Consistency): Minden csomópont ugyanazokat az adatokat látja ugyanabban az időben. Ha az adatok egy csomóponton módosulnak, ez a módosítás azonnal megjelenik minden másiknál.
- Elérhetőség (Availability): A rendszer garantálja, hogy minden kérés választ kap (hiba nélkül). Bármely működő csomópont képes kérdéseket feldolgozni.
- Partíciótűrés (Partition Tolerance): A rendszer tovább működik, még akkor is, ha hálózati problémák miatt több izolált klaszterre oszlik, és a csomópontok nem tudnak kommunikálni egymással.
Hálózati szétválás (Partition Tolerance) esetén a rendszernek választania kell a konzisztencia és az elérhetőség között:
- CP rendszer: A konzisztenciát (Consistency) az elérhetőség (Availability) elé helyezi. Szétválás idején a rendszer elérhetetlenné válhat, hogy garantálja, hogy az elérhető csomópontok egységes adatokat látnak. Írási kéréseket elutasíthat.
- AP rendszer: Az elérhetőséget (Availability) a konzisztencia (Consistency) elé helyezi. Szétválás idején a rendszer elérhető marad, de az adatok lehetnek inkonzisztensek a partíciók között. A szétválás feloldása után az adatokat szinkronizálni kell.
- CA rendszer: Elméletileg létezik, de nem létezhet valós hálózati körülmények között, ahol a szétválások elkerülhetetlenek. Egy elosztott rendszerben mindig figyelembe kell venni a Partíciótűrést.
A CAP-tétel nem állítja, hogy egy rendszer ne lehetne egyszerre konzisztens és elérhető normál körülmények között, szétválások nélkül. Ez kifejezetten hálózati szétválás idején érvényes.
A konzisztencia és az elérhetőség közötti választás a Partíciótűrési feltételek mellett a rendszer követelményeitől függ:
- Banki rendszerek, ahol az adatok pontossága kritikus, gyakran a CP-t választják.
- Közösségi média vagy online áruházak, ahol a folyamatos elérhetőség fontos, még a késleltetett adat-szinkronizációval is, gyakran az AP-t választják.