4.1 బ్రూవెరా గురించి స్థిరత్వం

ప్రారంభించడానికి, ఎరిక్ బ్రూవర్ డేటాబేస్ నిపుణుడు కాదు మరియు ఎప్పుడూ క్లెయిమ్ చేయలేదు. అతను పంపిణీ చేయబడిన వ్యవస్థల సంఘానికి చెందినవాడు మరియు అతని ప్రసిద్ధ ప్రసంగం, దీనిలో CAP "సిద్ధాంతం" కనిపించింది, "పంపిణీ చేయబడిన కంప్యూటింగ్ సూత్రాలు" సమావేశంలో ఇవ్వబడింది. (మార్గం ద్వారా, పదేళ్ల తర్వాత, 2010లో, అతను మళ్లీ అదే సమావేశంలో ఆహ్వానించబడిన ప్రసంగం ఇచ్చాడు, మరియు ఈ ప్రసంగంలో, ప్రత్యేకించి, పంపిణీ చేయబడిన వ్యవస్థల యొక్క అనేక ఉదాహరణలను ఇచ్చాడు, దీని అభివృద్ధిని పరిగణనలోకి తీసుకుంటుంది " CAP యొక్క సిద్ధాంతం".) ఈ ప్రాంతంలో డేటాబేస్‌ల రంగంలో ఉపయోగించే పదాలకు దాని స్వంత వివరణ ఉంది.

ప్రత్యేకించి, "తక్షణ అనుగుణ్యత" అనే పదం అంటే, కొంత డేటా అప్‌డేట్ ఆపరేషన్‌ని విజయవంతంగా పూర్తి చేయడం గురించి వినియోగదారు సిస్టమ్ నుండి నోటిఫికేషన్‌ను స్వీకరించిన తర్వాత, ఈ ఆపరేషన్ ఫలితం అన్ని పరిశీలకులకు తక్షణమే కనిపిస్తుంది.

అంతిమ అనుగుణ్యత అంటే, కొత్త డేటా అప్‌డేట్ ఆపరేషన్‌లు తగినంత కాలం పాటు సిస్టమ్‌లోకి ప్రవేశించకపోతే, మునుపటి అన్ని డేటా అప్‌డేట్ ఆపరేషన్‌ల ఫలితాలు చివరికి సిస్టమ్‌లోని అన్ని నోడ్‌లకు వ్యాప్తి చెందుతాయని మరియు అన్ని ప్రతిరూపాల డేటా స్థిరమైన (స్పష్టంగా, దీనిని "అన్ని ప్రతిరూపాలు ఒకే స్థితిని కలిగి ఉంటాయి" అని అర్థం చేసుకోవాలి.

ఈ స్థిరత్వ భావాన్ని దృష్టిలో ఉంచుకుని, బ్రూవర్ యొక్క "సిద్ధాంతాన్ని" చాలా అర్థమయ్యేలా మరియు స్పష్టంగా పరిగణించవచ్చు: భాగస్వామ్య డేటాతో ఏదైనా పంపిణీ చేయబడిన సిస్టమ్‌లో, నెట్‌వర్క్ యొక్క స్థిరత్వం, లభ్యత మరియు విభజన సహనం యొక్క ఏవైనా రెండు లక్షణాలు మాత్రమే ఏకకాలంలో నిర్ధారించబడతాయి. ఈ విషయంలో, బ్రూవర్ తన ప్రతిపాదిత BASE లక్షణాల సెట్‌తో ACID లక్షణాల సమితిని కూడా విభేదించాడు (ప్రాథమికంగా అందుబాటులో ఉంది, సాఫ్ట్-స్టేట్, చివరికి అనుగుణ్యత - చాలా సందర్భాలలో లభ్యత; అస్థిర స్థితి; తుది అనుగుణ్యత). కానీ ఈ వ్యతిరేకత, నా అభిప్రాయం ప్రకారం, అన్యాయమైనది, ఎందుకంటే మొదటి సందర్భంలో మేము లావాదేవీల తార్కిక లక్షణాల గురించి మాట్లాడుతున్నాము మరియు రెండవది - పంపిణీ వ్యవస్థల భౌతిక లక్షణాల గురించి.

4.2 "సిద్ధాంతము" యొక్క రుజువు

బ్రూవర్ యొక్క "సిద్ధాంతం" అధికారికంగా నిరూపించబడిందని చాలా మంది నమ్ముతారు. నిజానికి, సేథ్ గిల్బర్ట్ మరియు నాన్సీ లించ్ రాసిన కాగితం కొన్ని (దాదాపు) అధికారిక నిర్వచనాలను పరిచయం చేసింది, ఈ సందర్భంలో "సిద్ధాంతం" నిజంగా ఒక సిద్ధాంతంగా మారుతుంది మరియు నిరూపించబడింది. అయితే, పంపిణీ చేయబడిన వ్యవస్థ యొక్క ఆ మూడు లక్షణాలు ఎలా నిర్ణయించబడతాయో చూద్దాం, బ్రూవర్ యొక్క "సిద్ధాంతము" ప్రకారం, రెండు లక్షణాలు మాత్రమే ఏకకాలంలో మద్దతు ఇవ్వబడతాయి.

స్థిరత్వాన్ని పరమాణు, లేదా సరళీకృత అనుగుణ్యత (అణు, లేదా సరళీకృత అనుగుణ్యత) అంటారు, ఇది సిస్టమ్ యొక్క ఆస్తి, అణు (లీనియరైజబుల్) అయిన అన్ని వ్యక్తిగత డేటా వస్తువులు. ప్రతిగా, అటామిక్ ఆబ్జెక్ట్ అనేది అనేక కార్యకలాపాలతో కూడిన వస్తువు, అంటే ఆపరేషన్ యొక్క కాల్ మరియు ప్రతిస్పందన డేటా యొక్క రసీదు తక్షణమే జరుగుతుంది, అనగా. మునుపటి ఆపరేషన్ పూర్తిగా పూర్తయ్యే వరకు ఆబ్జెక్ట్ తదుపరి ఆపరేషన్ యొక్క కాల్‌ను అంగీకరించదు. కొన్ని వ్రాత-రకం ఆపరేషన్ చేసిన తర్వాత రీడ్-టైప్ ఆపరేషన్ వచ్చినట్లయితే, రీడ్ ఆపరేషన్ తప్పనిసరిగా ఈ లేదా తర్వాత వ్రాసే ఆపరేషన్ ద్వారా వ్రాసిన విలువను తప్పక అందించాలి.

విఫలం కాని నోడ్ ద్వారా స్వీకరించబడిన ప్రతి అభ్యర్థనకు తప్పనిసరిగా సమాధానం ఇవ్వబడినట్లయితే పంపిణీ చేయబడిన సిస్టమ్ ఎల్లప్పుడూ అందుబాటులో ఉంటుంది. నెట్‌వర్క్ విభజనకు సిస్టమ్ యొక్క స్థితిస్థాపకత ఒక నోడ్ నుండి మరొక నోడ్‌కు పంపబడిన ఏకపక్ష సంఖ్యలో సందేశాలను కోల్పోయినప్పుడు సిస్టమ్ యొక్క సాధ్యత యొక్క సంరక్షణగా రూపొందించబడింది.

ఈ నిర్వచనాల ఆధారంగా, హిల్బర్ట్ మరియు లించ్ క్రింది సిద్ధాంతాన్ని రూపొందించారు (అసమకాలిక నెట్‌వర్క్ మోడల్‌లో గడియారం లేదు మరియు నోడ్‌లు స్వీకరించిన సందేశాలు మరియు స్థానిక లెక్కల ఆధారంగా మాత్రమే నిర్ణయాలు తీసుకోవాలి):

అసమకాలిక నెట్‌వర్క్ మోడల్‌లో, అన్ని చెల్లుబాటు అయ్యే అమలులకు (సందేశాలను కోల్పోయే వాటితో సహా) లభ్యత మరియు పరమాణు అనుగుణ్యత లక్షణాలకు హామీ ఇచ్చే రీడ్/రైట్ డేటా ఆబ్జెక్ట్‌ని అమలు చేయడం సాధ్యం కాదు.

ఈ సిద్ధాంతం నిజంగా "వైరుధ్యం ద్వారా" పద్ధతి ద్వారా చాలా సరళంగా అధికారికంగా నిరూపించబడింది. వ్యాసం ఇలా ముగుస్తుంది:

అసమకాలిక నెట్‌వర్క్ మోడల్‌లో, అన్ని చెల్లుబాటు అయ్యే ఎగ్జిక్యూషన్‌ల కోసం యాక్సెస్‌బిలిటీ ప్రాపర్టీస్‌కి హామీ ఇచ్చే రీడ్/రైట్ డేటా ఆబ్జెక్ట్‌ని అమలు చేయడం సాధ్యపడదు మరియు మెసేజ్‌లు పోగొట్టుకోని చెల్లుబాటయ్యే ఎగ్జిక్యూషన్‌ల కోసం పరమాణు అనుగుణ్యత.

అదనంగా, ప్రధాన సిద్ధాంతం యొక్క నిజం పాక్షికంగా సమకాలీకరించబడిన నెట్‌వర్క్ మోడల్‌కు నిరూపించబడింది, దీనిలో ప్రతి నోడ్‌కు గడియారం ఉంటుంది, చూపిన సమయం అదే రేటుతో పెరుగుతుంది, కానీ అవి సమకాలీకరించబడవు, అనగా. ఒకే నిజమైన క్షణంలో వేర్వేరు సమయాలను చూపగలదు. ఈ సందర్భంలో ఇదే విధమైన పరిణామం ఉత్పన్నం కాలేదని చూపబడింది మరియు అందువల్ల, పాక్షికంగా సమకాలీకరించబడిన నెట్‌వర్క్‌ల కోసం "మంచి" లక్షణాలతో పంపిణీ చేయబడిన వ్యవస్థలను నిర్వహించడానికి మరిన్ని అవకాశాలు ఉన్నాయి.

అవును, ఒక కోణంలో (బ్రూవర్ ఉద్దేశించినది కానవసరం లేదు) గిల్బర్ట్ మరియు లించ్ ఒకే పంపిణీ వ్యవస్థలో నెట్‌వర్క్ యొక్క పరమాణు అనుగుణ్యత, లభ్యత మరియు విభజన సహనం యొక్క లక్షణాలను ఏకకాలంలో నిర్ధారించడం అసాధ్యం అని నిరూపించినట్లు పరిగణించవచ్చు. అయితే సాధారణంగా డేటాబేస్ లావాదేవీలకు మరియు ప్రత్యేకంగా ACID లావాదేవీలకు దీనికి సంబంధం ఏమిటి?

4.3 ACID లావాదేవీలు

CAP యొక్క "సిద్ధాంతం" యొక్క చర్చపై జూలియన్ బ్రౌన్ తన నోట్‌లో దీని గురించి వ్రాసినది ఇక్కడ ఉంది:

వారి రుజువులో, హిల్బర్ట్ మరియు లించ్ స్థిరత్వానికి బదులుగా అటామిసిటీ అనే పదాన్ని ఉపయోగిస్తున్నారు, ఇది సాంకేతిక దృక్కోణం నుండి మరింత అర్థవంతంగా ఉంటుంది ఎందుకంటే, ఖచ్చితంగా చెప్పాలంటే, ACID అర్థంలో స్థిరత్వం అనేది డేటాబేస్ లావాదేవీల యొక్క ఆదర్శ లక్షణాలను సూచిస్తుంది మరియు డేటా ఏదీ చేయదని అర్థం. వారు ముందుగా ఏర్పాటు చేసిన కొన్ని పరిమితులను ఉల్లంఘిస్తే పట్టుదలతో ఉంటారు. పంపిణీ చేయబడిన వ్యవస్థల యొక్క ముందుగా స్థాపించబడిన పరిమితి ఒకే డేటా మూలకం కోసం అనేక విభిన్న విలువల ఉనికిని నిషేధించడం అని మేము అనుకుంటే, నా అభిప్రాయం ప్రకారం, స్థిరత్వం యొక్క సంగ్రహణలో ఈ లోపం పరిగణించబడుతుంది. ముఖ్యమైనది కాదు (అదనంగా, బ్రూవర్ అటామిసిటీ అనే పదాన్ని ఉపయోగించినట్లయితే, AAP సిద్ధాంతం కనిపిస్తుంది, దీని పేరు ఉచ్చరించడానికి చాలా అసౌకర్యంగా ఉంటుంది).

ఇది చాలా సీరియస్‌గా కాకుండా నిజాయితీగా వ్రాయబడింది. మరియు, వాస్తవానికి, అణు అనుగుణ్యత యొక్క అవసరాన్ని ACID అర్థంలో లావాదేవీల అనుగుణ్యత యొక్క అవసరాలతో కలపకూడదు. డేటాబేస్ సమగ్రత పరిమితులు తార్కికంగా ఉంటాయి, మీరు కోరుకుంటే, వ్యాపార అవసరాలు. అవి అప్లికేషన్ డొమైన్ లాజిక్ నుండి వచ్చాయి. పరమాణు అనుగుణ్యత యొక్క అవసరం చాలా భిన్నమైనది. ఇది అమలు అవసరం, ఇది డేటాబేస్ పరిశ్రమలో భౌతిక అనుగుణ్యతగా సాంప్రదాయకంగా సూచించబడే వర్గంలోకి వస్తుంది (ఉదాహరణకు, ఏదైనా ఇండెక్స్ మార్పు ఆపరేషన్ చేస్తున్నప్పుడు, సంబంధిత B+ ట్రీ యొక్క అన్ని బ్లాక్‌లు తప్పనిసరిగా చెల్లుబాటు అయ్యే విలువలను కలిగి ఉండాలి మరియు చెల్లుబాటు అయ్యే సూచనల ద్వారా లింక్ చేయబడాలి. )

మరియు ఇక్కడ డేటాబేస్ సంఘం ప్రతినిధులు డేనియల్ అబాడి మరియు అలెగ్జాండర్ థామ్సన్ తమ నోట్‌లో చాలా తీవ్రంగా వ్రాస్తారు:

... స్కేలబుల్ లావాదేవీ వ్యవస్థల లభ్యత యొక్క ఆవశ్యకత చాలా క్లిష్టమైనదిగా మారుతోంది మరియు ఇది సాధారణంగా నోడ్‌లలో ఒకటి విఫలమైనప్పుడు అభ్యర్థనల యొక్క ప్రతిరూపణ మరియు స్వయంచాలక దారి మళ్లింపు ద్వారా పరిష్కరించబడుతుంది. అందువల్ల, అప్లికేషన్ డెవలపర్‌లు ACID సిస్టమ్‌ల యొక్క స్థిరత్వ హామీలు (వాస్తవానికి వినియోగదారు-నిర్వచించిన మార్పులకు స్థానిక మద్దతును కలిగి ఉంటాయి) బలమైన అనుగుణ్యతను నిర్ధారించడానికి పొడిగించబడతాయని భావిస్తున్నారు (ఏ సమయంలోనైనా ఒకే డేటా యొక్క అన్ని ప్రతిరూపాలు ఒకే విధమైన కాపీలుగా ఉంటాయి, అనగా ఈ కేసు స్థిరత్వం CAP/PACELC అర్థంలో సూచించబడుతుంది.

మరో మాటలో చెప్పాలంటే, బ్రూవర్ అనుగుణ్యతకి ACID అర్థంలో స్థిరత్వంతో సంబంధం లేదు, అయితే ఇది డేటా రెప్లికేషన్ ద్వారా అధిక లభ్యతను అందించడంపై దృష్టి సారించిన సిస్టమ్‌లలో బలమైన ప్రతిరూప అనుగుణ్యతను కొనసాగించడం అవసరం. ఇది ACID ప్రాపర్టీ కాదు, అప్లికేషన్ డెవలప్‌మెంట్‌ను సులభతరం చేసే భారీ సమాంతర DBMS యొక్క సాంకేతిక (భౌతిక) లక్షణం.

మైఖేల్ స్టోన్‌బ్రేకర్ ప్రకారం, అధిక-నాణ్యత ఆధునిక DBMSని నిర్మించడంలో కీలకమైన సాంకేతిక రాజీల సరైన ఎంపిక. నిర్దిష్ట ఇంజినీరింగ్ పరిష్కారాన్ని ఎన్నుకునేటప్పుడు, అనేక అంశాలను పరిగణనలోకి తీసుకోవాలి - భవిష్యత్ వినియోగదారుల అవసరాలు, వివిధ వైఫల్యాల సంభావ్యత మొదలైనవి.

స్టోన్‌బ్రేకర్ లావాదేవీల సమాంతర డేటాబేస్ సిస్టమ్‌ల రంగంలో, అధిక లభ్యత మరియు నెట్‌వర్క్ విభజన సహనానికి మద్దతుగా బ్రూవర్ యొక్క అనుగుణ్యతను విడిచిపెట్టడం ఒక పేలవమైన ట్రేడ్-ఆఫ్ అని నమ్ముతుంది ఎందుకంటే (a) ప్రతిరూప అనుగుణ్యత సిస్టమ్ యొక్క చాలా ఉపయోగకరమైన లక్షణం; (బి) లావాదేవీల భారీ సమాంతర DBMSకి చాలా పెద్ద సంఖ్యలో నోడ్‌లతో క్లస్టర్‌లు అవసరం లేదు, కాబట్టి నెట్‌వర్క్ స్ప్లిట్ పరిస్థితులు అసంభవం; (సి) నెట్‌వర్క్ విభజన వల్ల కాదు, ఉదాహరణకు, క్రమం తప్పకుండా సంభవించే సాఫ్ట్‌వేర్ ఎర్రర్‌ల కారణంగా సిస్టమ్ సులభంగా అందుబాటులో ఉండదు.

అందువల్ల, తరచుగా బ్రూవర్ యొక్క "సిద్ధాంతాన్ని" సూచించే NoSQL క్యాంప్ (NoACID చదవండి) ప్రతినిధుల యొక్క అధిక కార్యాచరణ, ACID లావాదేవీలకు మద్దతు ఇచ్చే భారీ సమాంతర లావాదేవీల DBMSని నిర్మించడం యొక్క సైద్ధాంతిక అసంభవంతో సంబంధం కలిగి ఉండదు, కానీ సరళీకృత వ్యవస్థలు ఇవి ACID లావాదేవీలకు మాత్రమే మద్దతివ్వవు, కానీ ప్రతిరూప అనుగుణ్యత కూడా సులభంగా మరియు వేగంగా సృష్టించబడతాయి. వారి సరళమైన సంస్థ కారణంగా, అవి చాలా వేగంగా డేటా ప్రాసెసింగ్ చేయగలవు మరియు కొన్ని అనువర్తనాలకు ఇది డేటాబేస్ టెక్నాలజీలో అంతర్లీనంగా ఉన్న అన్ని సౌకర్యాల కంటే చాలా ముఖ్యమైనది.

ఈ ఛాలెంజ్‌కి డేటాబేస్ సంఘం ఎలా స్పందిస్తుందో చూద్దాం.