డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

అందరికి వందనాలు! మాకు గొప్ప వార్త ఉంది, OTUS జూన్‌లో మళ్లీ కోర్సును ప్రారంభిస్తోంది "సాఫ్ట్‌వేర్ ఆర్కిటెక్ట్", దీనికి సంబంధించి మేము సాంప్రదాయకంగా మీతో ఉపయోగకరమైన విషయాలను పంచుకుంటాము.

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

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

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

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

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

కాబట్టి ఈ రోజు మనం నియమాలు ఎలా మారాయి, సేవలను మరియు అవి ఒకదానికొకటి పంపే డేటాను మనం సంప్రదించే విధానాన్ని మనం ఎందుకు పునరాలోచించాలి మరియు దీన్ని చేయడానికి మనకు పూర్తిగా భిన్నమైన సాధనాలు ఎందుకు అవసరమవుతాయి.

ఎన్‌క్యాప్సులేషన్ ఎల్లప్పుడూ మీ స్నేహితుడు కాదు

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

ప్రామాణిక విధానంలో భాగంగా, వారు కేవలం బాధించే ఎండ్-టు-ఎండ్ మార్పులను నివారించడానికి ప్రయత్నిస్తారు, సేవల మధ్య కార్యాచరణను స్పష్టంగా విభజించారు. ఒకే సైన్-ఆన్ సేవ ఇక్కడ మంచి ఉదాహరణ. ఇది ఇతర సేవల నుండి వేరుచేసే స్పష్టంగా నిర్వచించబడిన పాత్రను కలిగి ఉంది. ఈ స్పష్టమైన విభజన అంటే దాని చుట్టూ ఉన్న సేవలపై వేగంగా మారుతున్న డిమాండ్ల ప్రపంచంలో, ఒకే సైన్-ఆన్ సేవ మారే అవకాశం లేదు. ఇది ఖచ్చితంగా పరిమిత సందర్భంలో ఉంది.

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

సమస్య ఏమిటంటే, వాస్తవ ప్రపంచంలో, వ్యాపార సేవలు అన్ని సమయాలలో ఒకే విధమైన స్వచ్ఛమైన పాత్రలను నిర్వహించలేవు. ఉదాహరణకు, అదే వ్యాపార సేవలు ఇతర సారూప్య సేవల నుండి వచ్చే డేటాతో ఎక్కువ మేరకు పని చేస్తాయి. మీరు ఆన్‌లైన్ రిటైల్‌లో నిమగ్నమైతే, ఆర్డర్ ఫ్లో, ప్రోడక్ట్ కేటలాగ్ లేదా యూజర్ సమాచారాన్ని ప్రాసెస్ చేయడం మీ అనేక సేవలకు అవసరం అవుతుంది. ప్రతి సేవను ఆపరేట్ చేయడానికి ఈ డేటాకు యాక్సెస్ అవసరం.

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం
చాలా వ్యాపార సేవలు ఒకే డేటా స్ట్రీమ్‌ను పంచుకుంటాయి, కాబట్టి వాటి పని స్థిరంగా ముడిపడి ఉంటుంది.

కాబట్టి మనం మాట్లాడవలసిన ఒక ముఖ్యమైన విషయానికి వచ్చాము. ఇన్‌ఫ్రాస్ట్రక్చర్ కాంపోనెంట్‌ల కోసం సేవలు బాగా పని చేస్తున్నప్పటికీ, చాలా వరకు వ్యాపార సేవలు చాలా దగ్గరగా ముడిపడి ఉంటాయి.

డేటా డైకోటమీ

సేవా ఆధారిత విధానాలు ఇప్పటికే ఉనికిలో ఉండవచ్చు, కానీ సేవల మధ్య పెద్ద మొత్తంలో డేటాను ఎలా పంచుకోవాలో వారికి ఇప్పటికీ అంతర్దృష్టి లేదు.

ప్రధాన సమస్య ఏమిటంటే డేటా మరియు సేవలు విడదీయరానివి. ఒక వైపు, డేటాను దాచడానికి ఎన్‌క్యాప్సులేషన్ మమ్మల్ని ప్రోత్సహిస్తుంది, తద్వారా సేవలు ఒకదానికొకటి వేరు చేయబడతాయి మరియు వాటి పెరుగుదల మరియు తదుపరి మార్పులను సులభతరం చేస్తాయి. మరోవైపు, మనం ఇతర డేటా లాగానే షేర్ చేసిన డేటాను స్వేచ్ఛగా విభజించి, జయించగలగాలి. ఏదైనా ఇతర సమాచార వ్యవస్థలో వలె స్వేచ్ఛగా పనిని వెంటనే ప్రారంభించగలగడం.

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

మరియు ఇక్కడ ఒక గందరగోళం తలెత్తుతుంది. వైరుధ్యం. డైకోటమీ. అన్నింటికంటే, సమాచార వ్యవస్థలు డేటాను అందించడం మరియు సేవలు దాచడం.

ఈ రెండు శక్తులు ప్రాథమికమైనవి. అవి మన పనిలో చాలా వరకు మద్దతునిస్తాయి, మనం నిర్మించే వ్యవస్థల్లో శ్రేష్ఠత కోసం నిరంతరం పోరాడుతూ ఉంటాయి.

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

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

అధ్వాన్నమైన విషయం ఏమిటంటే, డేటా వాల్యూమ్‌లు సేవా సరిహద్దు సమస్యలను పెంచుతాయి. సేవలో ఎక్కువ షేర్ చేయబడిన డేటా ఉంటే, ఇంటర్‌ఫేస్ మరింత క్లిష్టంగా మారుతుంది మరియు వివిధ సేవల నుండి వచ్చే డేటా సెట్‌లను కలపడం మరింత కష్టమవుతుంది.

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

సమస్య ఏమిటంటే, వివిధ సేవలు వారు వినియోగించే డేటాను విభిన్నంగా అర్థం చేసుకుంటాయి. ఈ డేటా ఎల్లప్పుడూ చేతిలో ఉంటుంది. అవి స్థానికంగా సవరించబడతాయి మరియు ప్రాసెస్ చేయబడతాయి. చాలా త్వరగా వారు మూలంలోని డేటాతో ఉమ్మడిగా ఏదైనా కలిగి ఉండరు.

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం
కాపీలు ఎంత ఎక్కువ మార్చబడతాయో, కాలక్రమేణా డేటా మారుతూ ఉంటుంది.

విషయాలను మరింత దిగజార్చడానికి, అటువంటి డేటాను పునరాలోచనలో సరిచేయడం కష్టం (ఎండిఎం ఇక్కడే ఇది నిజంగా రెస్క్యూకి రావచ్చు). వాస్తవానికి, వ్యాపారాలు ఎదుర్కొనే కొన్ని పరిష్కరించలేని సాంకేతిక సమస్యలు అప్లికేషన్ నుండి అప్లికేషన్‌కు గుణించే అసమాన డేటా నుండి ఉత్పన్నమవుతాయి.

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం
డేటా వైఫల్యం యొక్క చక్రం

స్ట్రీమ్‌లు: డేటా మరియు సేవలకు వికేంద్రీకృత విధానం

ఆదర్శవంతంగా, మేము షేర్ చేసిన డేటాతో సేవలు పని చేసే విధానాన్ని మార్చాలి. ఈ సమయంలో, ఏదైనా విధానం పైన పేర్కొన్న డైకోటోమిని ఎదుర్కొంటుంది, ఎందుకంటే అది కనిపించకుండా పోయేలా దానిపై చల్లబడే మాయా ధూళి లేదు. అయితే, మేము సమస్యను పునరాలోచించవచ్చు మరియు రాజీకి చేరుకోవచ్చు.

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

ఈ విధానాన్ని సాధించడానికి ఒక మార్గం స్ట్రీమింగ్ ప్లాట్‌ఫారమ్‌ను ఉపయోగించడం. అనేక ఎంపికలు ఉన్నాయి, కానీ ఈ రోజు మనం కాఫ్కాను పరిశీలిస్తాము, ఎందుకంటే దాని స్టేట్‌ఫుల్ స్ట్రీమ్ ప్రాసెసింగ్ ఉపయోగం సమర్పించిన సమస్యను సమర్థవంతంగా పరిష్కరించడానికి అనుమతిస్తుంది.

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

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

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

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం
మార్పులేని స్థితి స్ట్రీమ్‌ను వేరు చేయడం ద్వారా డేటా డైకోటమీని తొలగించండి. స్టేట్‌ఫుల్ స్ట్రీమ్ ప్రాసెసింగ్‌ని ఉపయోగించి ప్రతి సేవకు ఈ కార్యాచరణను జోడించండి.

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం
డేటా సమగ్రతను రాజీ పడకుండా షేర్ చేయండి. అవసరమైన ప్రతి సేవలో మూలాన్ని కాకుండా ఫంక్షన్‌ను ఎన్‌క్యాప్సులేట్ చేయండి.

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

కాబట్టి, ఈ రోజు చర్చించిన విధానం అనేక ప్రయోజనాలను కలిగి ఉంది:

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

మీరు చూడగలిగినట్లుగా, ఇది కేవలం REST కంటే ఎక్కువ. భాగస్వామ్య డేటాతో వికేంద్రీకృత పద్ధతిలో పని చేయడానికి మిమ్మల్ని అనుమతించే సాధనాల సమితిని మేము అందుకున్నాము.

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

డేటా డైకోటమీ: డేటా మరియు సేవల మధ్య సంబంధాన్ని పునరాలోచించడం

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

కోర్సు గురించి మరింత తెలుసుకోండి.

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి