అపాచీ హైవ్ ట్యుటోరియల్: పరిచయం
అందులో నివశించే తేనెటీగలు బిగ్ డేటా అనలిటిక్స్ కోసం పరిశ్రమ వ్యాప్తంగా ఉపయోగించిన సాధనం మరియు మీ ప్రారంభించడానికి గొప్ప సాధనం తో. ఈ హైవ్ ట్యుటోరియల్ బ్లాగులో, మేము అపాచీ హైవ్ గురించి లోతుగా చర్చిస్తాము. అపాచీ హైవ్ అనేది డేటా గిడ్డంగి సాధనం , ఇది బిగ్ డేటాను ప్రశ్నించడానికి మరియు విశ్లేషించడానికి SQL వంటి భాషను అందిస్తుంది. హైవ్ అభివృద్ధి వెనుక ఉన్న ప్రేరణ SQL డెవలపర్లు & విశ్లేషకులకు ఘర్షణ-తక్కువ అభ్యాస మార్గం. అందులో నివశించే తేనెటీగలు ప్రోగ్రామింగ్ కాని నేపథ్యం ఉన్నవారికి రక్షకుని మాత్రమే కాదు, మ్యాప్రెడ్యూస్ ప్రోగ్రామ్లను వ్రాయడానికి ఎక్కువ గంటలు గడిపే ప్రోగ్రామర్ల పనిని కూడా తగ్గిస్తుంది. ఈ అపాచీ హైవ్ ట్యుటోరియల్ బ్లాగులో, నేను దీని గురించి మాట్లాడతాను:
- అందులో నివశించే తేనెటీగలు అంటే ఏమిటి?
- అపాచీ హైవ్ యొక్క కథ - ఫేస్బుక్ నుండి అపాచీ వరకు
- అపాచీ అందులో నివశించే తేనెటీగలు యొక్క ప్రయోజనాలు
- అపాచీ హైవ్ - నాసా కేస్ స్టడీ
- అపాచీ హైవ్ ఆర్కిటెక్చర్
- మెటాస్టోర్ కాన్ఫిగరేషన్
- అందులో నివశించే తేనెటీగలు డేటా మోడల్
అపాచీ హైవ్ ట్యుటోరియల్: అందులో నివశించే తేనెటీగలు అంటే ఏమిటి?
అపాచీ హైవ్ అనేది హడూప్ పైన నిర్మించిన డేటా గిడ్డంగి వ్యవస్థ మరియు ఇది నిర్మాణాత్మక మరియు సెమీ స్ట్రక్చర్డ్ డేటాను విశ్లేషించడానికి ఉపయోగించబడుతుంది.హడూప్ మ్యాప్రెడ్యూస్ యొక్క సంక్లిష్టతను అందులో నివశించే తేనెటీగలు సంగ్రహిస్తాయి. ప్రాథమికంగా, ఇది డేటాను నిర్మాణానికి ప్రొజెక్ట్ చేయడానికి మరియు SQL స్టేట్మెంట్లకు సమానమైన HQL (హైవ్ క్వరీ లాంగ్వేజ్) లో వ్రాసిన ప్రశ్నలను నిర్వహించడానికి ఒక యంత్రాంగాన్ని అందిస్తుంది. అంతర్గతంగా, ఈ ప్రశ్నలు లేదా HQL హైవ్ కంపైలర్ చేత ఉద్యోగాలను తగ్గించే మ్యాప్గా మార్చబడుతుంది. అందువల్ల, హడూప్ ఉపయోగించి మీ డేటాను ప్రాసెస్ చేయడానికి సంక్లిష్టమైన మ్యాప్రెడ్యూస్ ప్రోగ్రామ్లను రాయడం గురించి మీరు ఆందోళన చెందాల్సిన అవసరం లేదు. ఇది SQL తో సౌకర్యంగా ఉన్న వినియోగదారులను లక్ష్యంగా చేసుకుంటుంది. అపాచీ హైవ్ డేటా డెఫినిషన్ లాంగ్వేజ్ (డిడిఎల్), డేటా మానిప్యులేషన్ లాంగ్వేజ్ (డిఎంఎల్) మరియు యూజర్ డిఫైన్డ్ ఫంక్షన్స్ (యుడిఎఫ్) కు మద్దతు ఇస్తుంది.
బిగినర్స్ కోసం హైవ్ ట్యుటోరియల్ | లోతులో అందులో నివశించే తేనెటీగలు అర్థం చేసుకోవడం | ఎడురేకా
SQL + Hadoop MapReduce = HiveQL
అపాచీ హైవ్ ట్యుటోరియల్: స్టోరీ ఆఫ్ హైవ్ - ఫేస్బుక్ నుండి అపాచీ వరకు
అత్తి : హైవ్ ట్యుటోరియల్ - ఫేస్బుక్ వాడకం కేసు
ఫేస్బుక్లో సవాళ్లు: డేటా యొక్క ఎక్స్పోనెన్షియల్ గ్రోత్
2008 కి ముందు, ఫేస్బుక్లోని అన్ని డేటా ప్రాసెసింగ్ మౌలిక సదుపాయాలు వాణిజ్య RDBMS ఆధారంగా డేటా గిడ్డంగి చుట్టూ నిర్మించబడ్డాయి. ఈ మౌలిక సదుపాయాలు ఆ సమయంలో ఫేస్బుక్ అవసరాలకు సరిపోయే సామర్థ్యాన్ని కలిగి ఉన్నాయి. కానీ, డేటా చాలా వేగంగా పెరగడం ప్రారంభించడంతో, ఈ భారీ డేటాసెట్ను నిర్వహించడం మరియు ప్రాసెస్ చేయడం చాలా పెద్ద సవాలుగా మారింది. ఫేస్బుక్ కథనం ప్రకారం, 2007 లో సెట్ చేయబడిన 15 టిబి డేటా నుండి 2009 లో 2 పిబి డేటాకు స్కేల్ చేయబడింది. అలాగే, అనేక ఫేస్బుక్ ఉత్పత్తులలో ప్రేక్షకుల అంతర్దృష్టులు, ఫేస్బుక్ లెక్సికాన్, ఫేస్బుక్ ప్రకటనలు మొదలైన డేటాను విశ్లేషించడం జరుగుతుంది. ఈ సమస్యను ఎదుర్కోవటానికి స్కేలబుల్ మరియు ఆర్ధిక పరిష్కారం అవసరం మరియు అందువల్ల హడూప్ ఫ్రేమ్వర్క్ను ఉపయోగించడం ప్రారంభించింది.
ప్రజాస్వామ్యం హడూప్ - మ్యాప్రెడ్యూస్
కానీ, డేటా పెరిగేకొద్దీ, మ్యాప్-తగ్గించు సంకేతాల సంక్లిష్టత దామాషా ప్రకారం పెరిగింది. కాబట్టి, ప్రోగ్రామింగ్ కాని నేపథ్యం ఉన్నవారికి మ్యాప్రెడ్యూస్ ప్రోగ్రామ్లు రాయడానికి శిక్షణ ఇవ్వడం కష్టమైంది. అలాగే, సాధారణ విశ్లేషణ చేయడానికి మ్యాప్రెడ్యూస్ కోడ్ యొక్క వంద పంక్తులు రాయాలి. కాబట్టి, SQL ను ఫేస్బుక్తో సహా ఇంజనీర్లు మరియు విశ్లేషకులు విస్తృతంగా ఉపయోగించారు, అందువల్ల, SQL ను హడూప్ పైన ఉంచడం SQL నేపథ్యం ఉన్న వినియోగదారులకు హడూప్ను ప్రాప్యత చేయడానికి ఒక తార్కిక మార్గంగా అనిపించింది.
అందువల్ల, చాలా విశ్లేషణాత్మక అవసరాలకు SQL యొక్క సామర్థ్యం సరిపోతుంది మరియు హడూప్ యొక్క స్కేలబిలిటీకి జన్మనిచ్చింది అపాచీ హైవ్ ఇది HDFS లో ఉన్న డేటాపై ప్రశ్నల వంటి SQL ని నిర్వహించడానికి అనుమతిస్తుంది. తరువాత, హైవ్ ప్రాజెక్ట్ ఆగస్టు 2008 లో ఫేస్బుక్ ద్వారా ఓపెన్ సోర్స్ చేయబడింది మరియు ఈ రోజు అపాచీ హైవ్ గా ఉచితంగా లభిస్తుంది.
ఇప్పుడు, అందులో నివశించే తేనెటీగ యొక్క లక్షణాలు లేదా ప్రయోజనాలను చూద్దాం.
అపాచీ హైవ్ ట్యుటోరియల్: అందులో నివశించే తేనెటీగలు యొక్క ప్రయోజనాలు
- సంక్లిష్టమైన మ్యాప్రెడ్యూస్ ప్రోగ్రామ్ను వ్రాయవలసిన అవసరాన్ని తొలగిస్తున్నందున ప్రోగ్రామింగ్ నేపథ్యం లేని వ్యక్తులకు ఇది ఉపయోగపడుతుంది.
- విస్తరించదగినది మరియు స్కేలబుల్ సిస్టమ్ పనితీరును ప్రభావితం చేయకుండా, పెరుగుతున్న వాల్యూమ్ మరియు వివిధ రకాల డేటాను ఎదుర్కోవటానికి.
- ఇది సమర్థవంతమైన ETL (ఎక్స్ట్రాక్ట్, ట్రాన్స్ఫార్మ్, లోడ్) సాధనంగా ఉంది.
- హైవ్ జావా, పిహెచ్పి, పైథాన్, సి ++ లేదా రూబీలో వ్రాసిన ఏదైనా క్లయింట్ అప్లికేషన్ను బహిర్గతం చేయడం ద్వారా మద్దతు ఇస్తుంది పొదుపు సర్వర్ . (DB2, మొదలైన డేటాబేస్ను యాక్సెస్ చేయడానికి మీరు SQL తో పొందుపరిచిన ఈ క్లయింట్ వైపు భాషలను ఉపయోగించవచ్చు).
- అందులో నివశించే తేనెటీగ యొక్క మెటాడేటా సమాచారం RDBMS లో నిల్వ చేయబడినందున, ఇది ప్రశ్న అమలు సమయంలో అర్థ తనిఖీలు చేసే సమయాన్ని గణనీయంగా తగ్గిస్తుంది.
అపాచీ హైవ్ ట్యుటోరియల్: అపాచీ అందులో నివశించే తేనెటీగలు ఎక్కడ ఉపయోగించాలి?
అపాచీ హైవ్ రెండు ప్రపంచాల ప్రయోజనాన్ని పొందుతుంది, అనగా SQL డేటాబేస్ సిస్టమ్ మరియు ఫ్రేమ్వర్క్. అందువల్ల, దీనిని చాలా మంది కంపెనీలు ఉపయోగిస్తున్నాయి. ఇది ఎక్కువగా డేటా గిడ్డంగి కోసం ఉపయోగించబడుతుంది, ఇక్కడ మీరు రియల్ టైమ్ ప్రాసెసింగ్ అవసరం లేని విశ్లేషణలు మరియు డేటా మైనింగ్ చేయవచ్చు. మీరు అపాచీ హైవ్ను ఉపయోగించగల కొన్ని ఫీల్డ్లు ఈ క్రింది విధంగా ఉన్నాయి:
- డేటా వేర్హౌసింగ్
- తాత్కాలిక విశ్లేషణ
చెప్పినట్లుగా, మీరు ఒక చేత్తో మాత్రమే చప్పట్లు కొట్టలేరు, అనగా మీరు ఒకే సమస్యను ఉపయోగించి ప్రతి సమస్యను పరిష్కరించలేరు. అందువల్ల, మీరు అనేక ఇతర డొమైన్లలో ఉపయోగించడానికి ఇతర సాధనాలతో హైవ్ను జంట చేయవచ్చు. ఉదాహరణకు, అపాచీ హైవ్తో పాటు టేబులో డేటా విజువలైజేషన్ కోసం ఉపయోగించవచ్చు, హైవ్తో అపాచీ తేజ్ ఇంటిగ్రేషన్ మీకు రియల్ టైమ్ ప్రాసెసింగ్ సామర్థ్యాలను అందిస్తుంది.
ఈ అపాచీ హైవ్ ట్యుటోరియల్ బ్లాగులో ముందుకు వెళుతున్నప్పుడు, నాసా యొక్క కేస్ స్టడీని చూద్దాం, ఇక్కడ వాతావరణ నమూనాల మూల్యాంకనం చేసేటప్పుడు నాసా శాస్త్రవేత్తలు ఎదుర్కొంటున్న సమస్యను హైవ్ ఎలా పరిష్కరించిందో మీకు తెలుస్తుంది.
హైవ్ ట్యుటోరియల్: నాసా కేస్ స్టడీ
క్లైమేట్ మోడల్ అనేది భూమి యొక్క వాతావరణాన్ని ప్రభావితం చేసే వివిధ అంశాల ఆధారంగా వాతావరణ వ్యవస్థల యొక్క గణిత ప్రాతినిధ్యం. సాధారణంగా, ఇది సముద్రం, సూర్యుడు, వాతావరణం మొదలైన వాతావరణం యొక్క వివిధ డ్రైవర్ల పరస్పర చర్యను వివరిస్తుందివాతావరణ వ్యవస్థ యొక్క డైనమిక్స్ గురించి అంతర్దృష్టిని అందిస్తుంది. వాతావరణాన్ని ప్రభావితం చేసే కారకాల ఆధారంగా వాతావరణ మార్పులను అనుకరించడం ద్వారా వాతావరణ పరిస్థితులను అంచనా వేయడానికి ఇది ఉపయోగించబడుతుంది. నాసా యొక్క జెట్ ప్రొపల్షన్ లాబొరేటరీ వివిధ బాహ్య రిపోజిటరీలలో ఉన్న రిమోట్ సెన్సింగ్ డేటాకు వ్యతిరేకంగా క్లైమేట్ అవుట్పుట్ మోడల్ యొక్క విశ్లేషణ మరియు మూల్యాంకనం కోసం ప్రాంతీయ వాతావరణ నమూనా మూల్యాంకన వ్యవస్థ (RCMES) ను అభివృద్ధి చేసింది.
RCMES (ప్రాంతీయ వాతావరణ నమూనా మూల్యాంకన వ్యవస్థ) రెండు భాగాలను కలిగి ఉంది:
RCMED (ప్రాంతీయ వాతావరణ నమూనా మూల్యాంకనం డేటాబేస్):
అపాచీ OODT ఎక్స్ట్రాక్టర్స్, అపాచీ టికా, వంటి ఎక్స్ట్రాక్టర్లను ఉపయోగించి వాతావరణానికి సంబంధించిన రిమోట్ సెన్సింగ్ డేటా మరియు రీఅనాలిసిస్ డేటాను లోడ్ చేసే స్కేలబుల్ క్లౌడ్ డేటాబేస్ ఇది. చివరగా, ఇది డేటాను డేటా పాయింట్ మోడల్గా మారుస్తుంది (అక్షాంశం , రేఖాంశం, సమయం, విలువ, ఎత్తు) మరియు దాన్ని నా SQL డేటాబేస్లో నిల్వ చేస్తుంది. క్లయింట్ స్పేస్ / టైమ్ ప్రశ్నలు చేయడం ద్వారా RCMED లో ఉన్న డేటాను తిరిగి పొందవచ్చు. అటువంటి ప్రశ్నల వివరణ ఇప్పుడు మనకు సంబంధించినది కాదు.
RCMET (ప్రాంతీయ వాతావరణ నమూనా మూల్యాంకన టూల్కిట్):
ఇది RCMED లో ఉన్న రిఫరెన్స్ డేటాను వివిధ రకాల విశ్లేషణలు మరియు మూల్యాంకనం చేయడానికి కొన్ని ఇతర వనరుల నుండి పొందిన క్లైమేట్ మోడల్ అవుట్పుట్ డేటాతో పోల్చగల సామర్థ్యాన్ని వినియోగదారుకు అందిస్తుంది. RCMES యొక్క నిర్మాణాన్ని అర్థం చేసుకోవడానికి మీరు క్రింద ఇచ్చిన చిత్రాన్ని చూడవచ్చు.
వాతావరణ నమూనా మూల్యాంకనానికి అవసరమైన వివిధ పారామితుల ప్రకారం, RCMED లోని రిఫరెన్స్ డేటా ఉపగ్రహ-ఆధారిత రిమోట్ సెన్సింగ్ నుండి వచ్చింది. ఉదాహరణకు - AIRS (వాతావరణ ఇన్ఫ్రారెడ్ సౌండర్) ఉపరితల గాలి ఉష్ణోగ్రత, ఉష్ణోగ్రత మరియు భౌగోళిక శక్తి వంటి పారామితులను అందిస్తుంది, TRMM (ఉష్ణమండల వర్షపాతం కొలత మిషన్) నెలవారీ అవపాతం మొదలైనవి అందిస్తుంది.
MySQL డేటాబేస్ సిస్టమ్ను ఉపయోగించి నాసా ఎదుర్కొంటున్న సమస్యలు:
- రూపం యొక్క 6 బిలియన్ టుపుల్స్ (అక్షాంశం, రేఖాంశం, సమయం, డేటా పాయింట్ విలువ, ఎత్తు) తో MySQL డేటాబేస్ను లోడ్ చేసిన తరువాత, పై చిత్రంలో చూపిన విధంగా సిస్టమ్ క్రాష్ అయ్యింది.
- మొత్తం పట్టికను చిన్న ఉపసమితులుగా విభజించిన తరువాత కూడా, డేటాను ప్రాసెస్ చేసేటప్పుడు సిస్టమ్ భారీ ఓవర్హెడ్ను ఉత్పత్తి చేస్తుంది.
కాబట్టి, ప్రశ్నించే సామర్ధ్యం వంటి SQL తో ఈ భారీ మొత్తంలో డేటాను నిల్వ చేసి ప్రాసెస్ చేయగల స్కేలబుల్ పరిష్కారం వారికి అవసరం. చివరగా, వారు పైన పేర్కొన్న సమస్యలను అధిగమించడానికి అపాచీ హైవ్ ఉపయోగించాలని నిర్ణయించుకున్నారు.
అపాచీ హైవ్ సమస్యను ఎలా పరిష్కరించగలదు?
ఇప్పుడు, అపాచీ హైవ్ను వారి పరిష్కార వ్యూహంలో అంతర్భాగంగా చేర్చడానికి నాసా యొక్క జెపిఎల్ బృందాన్ని ఒప్పించిన లక్షణాలు ఏమిటి:
- అపాచీ హైవ్ హడూప్ పైన నడుస్తుంది కాబట్టి, ఇది స్కేలబుల్ మరియు పంపిణీ మరియు సమాంతర పద్ధతిలో డేటాను ప్రాసెస్ చేయగలదు.
- ఇది SQL ను పోలి ఉండే అందులో నివశించే తేనెటీగ ప్రశ్న భాషను అందిస్తుంది మరియు అందువల్ల నేర్చుకోవడం సులభం.
అందులో నివశించే తేనెటీగలు విస్తరణ:
కింది చిత్రం అపాచీ హైవ్ ఇంటిగ్రేషన్తో RCMES ఆర్కిటెక్ట్ను వివరిస్తుంది:
అత్తి : హైవ్ ట్యుటోరియల్ - అపాచీ హైవ్తో RCMES ఆర్కిటెక్చర్
పై చిత్రం RCMES లో అపాచీ అందులో నివశించే తేనెటీగలు యొక్క విస్తరణను చూపుతుంది. అపాచీ హైవ్ను మోహరించేటప్పుడు నాసా బృందం ఈ క్రింది చర్యలు తీసుకుంది:
- పై చిత్రంలో చూపిన విధంగా వారు క్లౌడెరా మరియు అపాచీ హడూప్ ఉపయోగించి హైవ్ను ఇన్స్టాల్ చేశారు.
- MySQL డేటాబేస్ నుండి హైవ్లోకి డేటాను తీసుకోవడానికి వారు అపాచీ స్కూప్ను ఉపయోగించారు.
- అందులో నివశించే తేనెటీగపై ప్రశ్నలు నిర్వహించడానికి మరియు డేటాను RCMET కి తిరిగి పొందటానికి అపాచీ OODT రేపర్ అమలు చేయబడింది.
అందులో నివశించే తేనెటీగలతో ప్రారంభ బెంచ్ మార్కింగ్ పరిశీలనలు:
- ప్రారంభంలో వారు 2.5 బిలియన్ డేటా పాయింట్లను ఒకే పట్టికలో లోడ్ చేసి, కౌంట్ ప్రశ్నను ప్రదర్శించారు. ఉదాహరణకి, అందులో నివశించే తేనెటీగలు> డేటాపాయింట్ నుండి కౌంట్ (డేటాపాయింట్_ఐడి) ఎంచుకోండి. అన్ని రికార్డులను లెక్కించడానికి 5-6 నిమిషాలు పట్టింది (పూర్తి 6.8 బిలియన్ రికార్డులకు 15–17 నిమిషాలు).
- తగ్గించే దశ వేగంగా ఉంది, కానీ మ్యాప్ దశ మొత్తం ప్రాసెసింగ్ సమయం 95% తీసుకుంది. వారు ఆరు ఉపయోగిస్తున్నారు ( 4x క్వాడ్-కోర్ ) వ్యవస్థలు 24 జీబీ ర్యామ్ (సుమారు.) ప్రతి వ్యవస్థలో.
- మరిన్ని యంత్రాలను జోడించిన తరువాత కూడా, HDFS బ్లాక్ పరిమాణాన్ని (64 MB, 128 MB, 256 MB) మార్చడం మరియు అనేక ఇతర కాన్ఫిగరేషన్ వేరియబుల్స్ (io.క్రమబద్ధీకరించు.కారకం, i.క్రమబద్ధీకరించు.mb), గణనను పూర్తి చేయడానికి సమయాన్ని తగ్గించడంలో వారు పెద్దగా విజయం సాధించలేదు.
అందులో నివశించే తేనెటీగ సంఘం సభ్యుల నుండి ఇన్పుట్లు:
చివరగా, హైవ్ కమ్యూనిటీ సభ్యులు రక్షించటానికి వచ్చారు మరియు వారి ప్రస్తుత అందులో నివశించే తేనెటీగ అమలుతో సమస్యలను పరిష్కరించడానికి వివిధ అంతర్దృష్టులను అందించారు:
- హెచ్డిఎఫ్ఎస్ రీడ్ స్పీడ్ సుమారుగా ఉంటుందని వారు పేర్కొన్నారు 60 MB / s పోలిస్తే 1GB / s స్థానిక డిస్క్ విషయంలో, నెట్వర్క్ సామర్థ్యం మరియు నేమ్నోడ్లో పనిభారాన్ని బట్టి.
- సభ్యులు సూచించారు 16 మాపర్లు స్థానిక నాన్-హడూప్ పని యొక్క I / O పనితీరుతో సరిపోలడానికి వారి ప్రస్తుత వ్యవస్థలో అవసరం.
- తగ్గించాలని కూడా వారు సూచించారు స్ప్లిట్-సైజ్ ప్రతి మ్యాపర్ సంఖ్యను పెంచడానికియొక్కమ్యాపర్స్ మరియు అందువల్ల, మరింత సమాంతరతను అందిస్తుంది.
- చివరగా, సంఘం సభ్యులు వారికి చెప్పారు వాడకం సంఖ్య (1) సూచించడానికి బదులుగా లెక్కించు ( డేటా పాయింట్_ఐడి) . ఎందుకంటే కౌంట్ (1) విషయంలో, రిఫరెన్స్ కాలమ్ లేదు మరియు అందువల్ల, కౌంట్ చేసేటప్పుడు డికంప్రెషన్ మరియు డీసియలైజేషన్ జరగదు.
చివరగా, హైవ్ కమ్యూనిటీ సభ్యులు ఇచ్చిన అన్ని సూచనలను పరిగణనలోకి తీసుకోవడం ద్వారా నాసా వారి హైవ్ క్లస్టర్ను వారి అంచనాలకు అనుగుణంగా మార్చగలిగింది. అందువల్ల, పైన పేర్కొన్న సిస్టమ్ కాన్ఫిగరేషన్లను ఉపయోగించి వారు కేవలం 15 సెకన్లలో బిలియన్ల వరుసలను ప్రశ్నించగలిగారు.
అపాచీ హైవ్ ట్యుటోరియల్: అందులో నివశించే తేనెటీగలు మరియు దాని భాగాలు
కింది చిత్రం హైవ్ ఆర్కిటెక్చర్ మరియు ప్రశ్న సమర్పించిన ప్రవాహాన్ని వివరిస్తుందిఅందులో నివశించే తేనెటీగలుచివరకు మ్యాప్రెడ్యూస్ ఫ్రేమ్వర్క్ ఉపయోగించి ప్రాసెస్ చేయబడింది:
అత్తి : అందులో నివశించే తేనెటీగ ట్యుటోరియల్ - అందులో నివశించే తేనెటీగలు
పై చిత్రంలో చూపినట్లుగా, అందులో నివశించే తేనెటీగలు ఈ క్రింది భాగాలుగా వర్గీకరించబడతాయి:
- అందులో నివశించే తేనెటీగలు: JDBC, పొదుపు మరియు ODBC డ్రైవర్లను ఉపయోగించి జావా, సి ++, పైథాన్ వంటి అనేక భాషలలో వ్రాసిన అనువర్తనానికి అందులో నివశించే తేనెటీగలు మద్దతు ఇస్తాయి. అందువల్ల ఒకరు తమకు నచ్చిన భాషలో రాసిన అందులో నివశించే తేనెటీగ క్లయింట్ అప్లికేషన్ను ఎల్లప్పుడూ వ్రాయవచ్చు.
- అందులో నివశించే తేనెటీగలు సేవలు: అపాచీ హైవ్ ప్రశ్నలను నిర్వహించడానికి CLI, వెబ్ ఇంటర్ఫేస్ మొదలైన వివిధ సేవలను అందిస్తుంది. ఈ హైవ్ ట్యుటోరియల్ బ్లాగులో వాటిలో ప్రతి ఒక్కటి త్వరలో అన్వేషిస్తాము.
- ప్రాసెసింగ్ ఫ్రేమ్వర్క్ మరియు రిసోర్స్ మేనేజ్మెంట్: అంతర్గతంగా,ప్రశ్నలను అమలు చేయడానికి హైవ్ హడూప్ మ్యాప్రెడ్యూస్ ఫ్రేమ్వర్క్ను వాస్తవ ఇంజిన్గా ఉపయోగిస్తుంది. ఒక ప్రత్యేక అంశం మరియు అందువల్ల ఇక్కడ చర్చించబడలేదు.
- పంపిణీ చేసిన నిల్వ: హడూప్ పైన అందులో నివశించే తేనెటీగలు వ్యవస్థాపించబడినందున, పంపిణీ చేయబడిన నిల్వ కోసం ఇది అంతర్లీన HDFS ని ఉపయోగిస్తుంది. మీరు చూడవచ్చు HDFS బ్లాగ్ దాని గురించి మరింత తెలుసుకోవడానికి.
ఇప్పుడు, హైవ్ ఆర్కిటెక్చర్లో మొదటి రెండు ప్రధాన భాగాలను అన్వేషిద్దాం:
1. అందులో నివశించే తేనెటీగలు:
అందులో నివశించే తేనెటీగలు ప్రశ్నలను నిర్వహించడానికి అపాచీ హైవ్ వివిధ రకాల క్లయింట్ అనువర్తనాలకు మద్దతు ఇస్తుంది. ఈ క్లయింట్లను మూడు రకాలుగా వర్గీకరించవచ్చు:
- పొదుపు క్లయింట్లు: హైవ్ సర్వర్ అపాచీ పొదుపుపై ఆధారపడినందున, ఇది పొదుపుకు మద్దతిచ్చే అన్ని ప్రోగ్రామింగ్ భాషల నుండి అభ్యర్థనను అందిస్తుంది.
- జెడిబిసి క్లయింట్లు: క్లాస్ ఆర్గ్లో నిర్వచించబడిన జెడిబిసి డ్రైవర్ను ఉపయోగించి జావా అనువర్తనాలను దానికి కనెక్ట్ చేయడానికి హైవ్ అనుమతిస్తుంది.అపాచీ.హడూప్.hive.jdbc.హైవ్డ్రైవర్.
- ODBC క్లయింట్లు: హైవ్ ODBC డ్రైవర్ ODBC ప్రోటోకాల్కు మద్దతు ఇచ్చే అనువర్తనాలను హైవ్కు కనెక్ట్ చేయడానికి అనుమతిస్తుంది. (JDBC డ్రైవర్ వలె, ODBC డ్రైవర్ హైవ్ సర్వర్తో కమ్యూనికేట్ చేయడానికి పొదుపును ఉపయోగిస్తుంది.)
2. అందులో నివశించే తేనెటీగలు సేవలు:
పై చిత్రంలో చూపిన విధంగా అందులో నివశించే తేనెటీగలు చాలా సేవలను అందిస్తుంది. వాటిలో ప్రతి ఒక్కటి చూద్దాం:
- హైవ్ CLI (కమాండ్ లైన్ ఇంటర్ఫేస్): ఇది హైవ్ అందించిన డిఫాల్ట్ షెల్, ఇక్కడ మీరు మీ హైవ్ ప్రశ్నలు మరియు ఆదేశాలను నేరుగా అమలు చేయవచ్చు.
- అపాచీ హైవ్ వెబ్ ఇంటర్ఫేస్లు: కమాండ్ లైన్ ఇంటర్ఫేస్ కాకుండా, అందులో నివశించే తేనెటీగలు ప్రశ్నలు మరియు ఆదేశాలను అమలు చేయడానికి వెబ్ ఆధారిత GUI ని కూడా అందిస్తుంది.
- అందులో నివశించే తేనెటీగలు సర్వర్: అందులో నివశించే తేనెటీగ సర్వర్ అపాచీ పొదుపుపై నిర్మించబడింది మరియు అందువల్ల దీనిని పొదుపు సర్వర్ అని కూడా పిలుస్తారు, ఇది వేర్వేరు క్లయింట్లను హైవ్కు అభ్యర్థనలను సమర్పించడానికి మరియు తుది ఫలితాన్ని తిరిగి పొందటానికి అనుమతిస్తుంది.
- అపాచీ హైవ్ డ్రైవర్: CLI, వెబ్ UI, పొదుపు, ODBC లేదా JDBC ఇంటర్ఫేస్ల ద్వారా క్లయింట్ ద్వారా సమర్పించిన ప్రశ్నలను స్వీకరించడానికి ఇది బాధ్యత వహిస్తుంది. అప్పుడు, మెటాస్టోర్లో ఉన్న స్కీమా సహాయంతో పార్సింగ్, టైప్ చెకింగ్ మరియు సెమాంటిక్ అనాలిసిస్ జరిగే కంపైలర్కు డ్రైవర్ ప్రశ్నను పంపుతాడు.. తదుపరి దశలో, మ్యాప్-తగ్గించే పనులు మరియు HDFS పనుల యొక్క DAG (డైరెక్టెడ్ ఎసిక్లిక్ గ్రాఫ్) రూపంలో ఆప్టిమైజ్ చేసిన తార్కిక ప్రణాళిక రూపొందించబడుతుంది. చివరగా, అమలు ఇంజిన్ ఈ పనులను హడూప్ ఉపయోగించి వాటి డిపెండెన్సీల క్రమంలో అమలు చేస్తుంది.
- మెటాస్టోర్: మీరు మెటాస్టోర్ అని అనుకోవచ్చుఅన్ని హైవ్ మెటాడేటా సమాచారాన్ని నిల్వ చేయడానికి కేంద్ర రిపోజిటరీగా. అందులో నివశించే తేనెటీగలు మెటాడేటాలో పట్టికల నిర్మాణం మరియు విభజనలు వంటి వివిధ రకాల సమాచారం ఉంటుందిHDFS లో ఉన్న డేటాపై చదవడానికి / వ్రాయడానికి ఆపరేషన్ కోసం అవసరమైన కాలమ్, కాలమ్ రకం, సీరియలైజర్ మరియు డీసెరియలైజర్తో పాటు. మెటాస్టోర్రెండు ప్రాథమిక యూనిట్లను కలిగి ఉంటుంది:
- మెటాస్టోర్ అందించే సేవఇతర యాక్సెస్rఅందులో నివశించే తేనెటీగలు సేవలు.
- HDFS నిల్వ నుండి వేరుగా ఉన్న మెటాడేటా కోసం డిస్క్ నిల్వ.
ఇప్పుడు, హైవ్ మెటాస్టోర్ను అమలు చేసే వివిధ మార్గాలను అర్థం చేసుకుందాంఈ అందులో నివశించే తేనెటీగ ట్యుటోరియల్ యొక్క తరువాతి విభాగంలో.
అపాచీ హైవ్ ట్యుటోరియల్: మెటాస్టోర్ కాన్ఫిగరేషన్
మెటాస్టోర్ RDBMS మరియు డేటా న్యూక్లియస్ అని పిలువబడే ఓపెన్ సోర్స్ ORM (ఆబ్జెక్ట్ రిలేషనల్ మోడల్) పొరను ఉపయోగించి మెటా డేటా సమాచారాన్ని నిల్వ చేస్తుంది, ఇది ఆబ్జెక్ట్ ప్రాతినిధ్యాన్ని రిలేషనల్ స్కీమాగా మారుస్తుంది మరియు దీనికి విరుద్ధంగా ఉంటుంది. హెచ్డిఎఫ్ఎస్కు బదులుగా ఆర్డిబిఎంఎస్ను ఎంచుకోవడానికి కారణం తక్కువ జాప్యం సాధించడమే. మేము క్రింది మూడు కాన్ఫిగరేషన్లలో మెటాస్టోర్ను అమలు చేయవచ్చు:
1. పొందుపరిచిన మెటాస్టోర్:
మెటాస్టోర్ సేవ మరియు హైవ్ సేవ రెండూ ఒకే JVM లో డిఫాల్ట్గా ఎంబెడెడ్ డెర్బీ డేటాబేస్ ఉదాహరణను ఉపయోగించి నడుస్తాయి, ఇక్కడ మెటాడేటా స్థానిక డిస్క్లో నిల్వ చేయబడుతుంది. దీనిని ఎంబెడెడ్ మెటాస్టోర్ కాన్ఫిగరేషన్ అంటారు. ఈ సందర్భంలో, ఒకేసారి ఒక వినియోగదారు మాత్రమే మెటాస్టోర్ డేటాబేస్కు కనెక్ట్ చేయగలరు. మీరు హైవ్ డ్రైవర్ యొక్క రెండవ ఉదాహరణను ప్రారంభిస్తే, మీకు లోపం వస్తుంది. ఇది యూనిట్ పరీక్షకు మంచిది, కానీ ఆచరణాత్మక పరిష్కారాలకు కాదు.
2. స్థానిక మెటాస్టోర్:
ఈ కాన్ఫిగరేషన్ మాకు బహుళ హైవ్ సెషన్లను కలిగి ఉండటానికి అనుమతిస్తుంది, అనగా బహుళ వినియోగదారులు ఒకే సమయంలో మెటాస్టోర్ డేటాబేస్ను ఉపయోగించవచ్చు. పైన చూపిన విధంగా అదే JVM లో నడుస్తున్న హైవ్ సర్వీస్ మరియు మెటాస్టోర్ సేవ కంటే ప్రత్యేకమైన JVM లేదా వేరే యంత్రంలో నడుస్తున్న MySQL వంటి ఏదైనా JDBC కంప్లైంట్ డేటాబేస్ను ఉపయోగించడం ద్వారా ఇది సాధించబడుతుంది. సాధారణంగా, అత్యంత ప్రాచుర్యం పొందిన ఎంపిక ఏమిటంటే MySQL సర్వర్ను మెటాస్టోర్ డేటాబేస్గా అమలు చేయడం.
3. రిమోట్ మెటాస్టోర్:
రిమోట్ మెటాస్టోర్ కాన్ఫిగరేషన్లో, మెటాస్టోర్ సేవ దాని స్వంత ప్రత్యేక JVM పై నడుస్తుంది మరియు హైవ్ సర్వీస్ JVM లో కాదు. ఇతర ప్రక్రియలు పొదుపు నెట్వర్క్ API లను ఉపయోగించి మెటాస్టోర్ సర్వర్తో కమ్యూనికేట్ చేస్తాయి. ఎక్కువ లభ్యతను అందించడానికి మీరు ఈ సందర్భంలో ఒకటి లేదా అంతకంటే ఎక్కువ మెటాస్టోర్ సర్వర్లను కలిగి ఉండవచ్చు.రిమోట్ మెటాస్టోర్ను ఉపయోగించడం యొక్క ప్రధాన ప్రయోజనం ఏమిటంటే, మెటాస్టోర్ డేటాబేస్ను యాక్సెస్ చేయడానికి మీరు ప్రతి హైవ్ వినియోగదారుతో జెడిబిసి లాగిన్ క్రెడెన్షియల్ను భాగస్వామ్యం చేయనవసరం లేదు.
అపాచీ హైవ్ ట్యుటోరియల్: డేటా మోడల్
అందులో నివశించే తేనెటీగలోని డేటాను కణిక స్థాయిలో మూడు రకాలుగా వర్గీకరించవచ్చు:
- పట్టిక
- విభజన
- బకెట్
పట్టికలు:
అందులో నివశించే తేనెటీగలు పట్టికలు రిలేషనల్ డేటాబేస్లో ఉన్న పట్టికల మాదిరిగానే ఉంటాయి. మీరు వాటిపై ఫిల్టర్, ప్రాజెక్ట్, జాయిన్ మరియు యూనియన్ ఆపరేషన్లను చేయవచ్చు. అందులో నివశించే తేనెటీగలో రెండు రకాల పట్టికలు ఉన్నాయి:
1. నిర్వహించే పట్టిక:
ఆదేశం:
పట్టికను సృష్టించండి (కాలమ్ 1 డేటా_టైప్, కాలమ్ 2 డేటా_టైప్)
పట్టిక మేనేజ్_టేబుల్ లోకి లోడ్ డేటా ఇన్పాత్
పేరు సూచించినట్లుగా (నిర్వహించే పట్టిక), నిర్వహించబడే పట్టిక యొక్క డేటాను నిర్వహించడానికి హైవ్ బాధ్యత వహిస్తుంది. మరో మాటలో చెప్పాలంటే, “హైవ్ డేటాను నిర్వహిస్తుంది” అని చెప్పడం ద్వారా నేను అర్థం ఏమిటంటే, మీరు HDFS లో ఉన్న ఫైల్ నుండి డేటాను హైవ్లోకి లోడ్ చేస్తే నిర్వహించే పట్టిక మరియు దానిపై DROP ఆదేశాన్ని జారీ చేయండి, పట్టిక దాని మెటాడేటాతో పాటు తొలగించబడుతుంది. కాబట్టి, పడిపోయిన వాటికి చెందిన డేటా నిర్వహించే_టేబుల్ HDFS లో ఎక్కడా ఉండదు మరియు మీరు దీన్ని ఏ విధంగానైనా తిరిగి పొందలేరు. సాధారణంగా, మీరు HDFS ఫైల్ స్థానం నుండి హైవ్ గిడ్డంగి డైరెక్టరీకి LOAD ఆదేశాన్ని జారీ చేసినప్పుడు మీరు డేటాను తరలిస్తున్నారు.
గమనిక: గిడ్డంగి డైరెక్టరీ యొక్క డిఫాల్ట్ మార్గం / యూజర్ / అందులో నివశించే తేనెటీగలు / గిడ్డంగికి సెట్ చేయబడింది. హైవ్ టేబుల్ యొక్క డేటా గిడ్డంగి_డైరెక్టరీలో ఉంటుంది / table_name (HDFS). అందులో నివశించే తేనెటీగలు- site.xml లో ఉన్న hive.metastore.warehouse.dir కాన్ఫిగరేషన్ పారామితిలో గిడ్డంగి డైరెక్టరీ యొక్క మార్గాన్ని కూడా మీరు పేర్కొనవచ్చు.
2. బాహ్య పట్టిక:
ఆదేశం:
బాహ్య పట్టికను సృష్టించండి (కాలమ్ 1 డేటా_టైప్, కాలమ్ 2 డేటా_టైప్) స్థానం ‘’
లోడ్ డేటా ఇన్పాత్ ‘’ టేబుల్లోకి
కోసం బాహ్య పట్టిక , డేటాను నిర్వహించడానికి అందులో నివశించే తేనెటీగలు బాధ్యత వహించవు. ఈ సందర్భంలో, మీరు LOAD ఆదేశాన్ని జారీ చేసినప్పుడు, అందులో నివశించే తేనెటీగలు డేటాను దాని గిడ్డంగి డైరెక్టరీలోకి కదిలిస్తుంది. అప్పుడు, హైవ్ బాహ్య పట్టిక కోసం మెటాడేటా సమాచారాన్ని సృష్టిస్తుంది. ఇప్పుడు, మీరు DROP ఆదేశాన్ని జారీ చేస్తే బాహ్య పట్టిక , బాహ్య పట్టికకు సంబంధించిన మెటాడేటా సమాచారం మాత్రమే తొలగించబడుతుంది. అందువల్ల, మీరు హెచ్డిఎఫ్ఎస్ ఆదేశాలను ఉపయోగించి గిడ్డంగి డైరెక్టరీ నుండి చాలా బాహ్య పట్టిక యొక్క డేటాను తిరిగి పొందవచ్చు.
విభజనలు:
ఆదేశం:
పట్టిక పట్టిక పేరును సృష్టించండి (కాలమ్ 1 డేటా_టైప్, కాలమ్ 2 డేటా_టైప్) విభజించబడింది (విభజన 1 డేటా_టైప్, విభజన 2 డేటా_టైప్, & హెల్లిప్.)
క్రమబద్ధీకరించు () సి ++
ఒక కాలమ్ లేదా విభజన కీ ఆధారంగా సారూప్య డేటాను సమూహపరచడానికి హైవ్ పట్టికలను విభజనలుగా నిర్వహిస్తుంది. ప్రతి పట్టికలో ఒక నిర్దిష్ట విభజనను గుర్తించడానికి ఒకటి లేదా అంతకంటే ఎక్కువ విభజన కీలు ఉండవచ్చు. ఇది డేటా ముక్కలపై వేగంగా ప్రశ్నించడానికి అనుమతిస్తుంది.
గమనిక: గుర్తుంచుకోండి, విభజనలను సృష్టించేటప్పుడు చేసిన అత్యంత సాధారణ తప్పు ఏమిటంటే, ఇప్పటికే ఉన్న కాలమ్ పేరును విభజన కాలమ్గా పేర్కొనడం. అలా చేస్తున్నప్పుడు, మీరు లోపం అందుకుంటారు - “అర్థ విశ్లేషణలో లోపం: విభజన నిలువు వరుసలలో కాలమ్ పునరావృతమవుతుంది”.
స్టూడెంట్_ఐడి, పేరు, విభాగం, సంవత్సరం మొదలైన కొన్ని ఇంజనీరింగ్ కళాశాల విద్యార్థుల సమాచారాన్ని కలిగి ఉన్న టేబుల్ స్టూడెంట్_డెయిల్స్ ఉన్న ఉదాహరణను తీసుకొని విభజనను అర్థం చేసుకుందాం. ఇప్పుడు, నేను డిపార్ట్మెంట్ కాలమ్ ఆధారంగా విభజన చేస్తే, విద్యార్థులందరి సమాచారం ఒక నిర్దిష్ట విభాగానికి చెందినవి ఆ విభజనలో కలిసి నిల్వ చేయబడతాయి. భౌతికంగా, విభజన అనేది టేబుల్ డైరెక్టరీలోని ఉప డైరెక్టరీ తప్ప మరొకటి కాదు.
మా విద్యార్థి_ వివరాల పట్టికలో CSE, ECE మరియు సివిల్ అనే మూడు విభాగాల కోసం డేటా ఉందని చెప్పండి. అందువల్ల, దిగువ చిత్రంలో చూపిన విధంగా ప్రతి విభాగానికి మొత్తం మూడు విభజనలను కలిగి ఉంటాము. మరియు, ప్రతి విభాగానికి మేము అందులో నివశించే తేనెటీగ పట్టిక డైరెక్టరీ క్రింద ప్రత్యేక ఉప డైరెక్టరీలో నివసిస్తున్న విభాగానికి సంబంధించిన మొత్తం డేటాను కలిగి ఉంటాము. ఉదాహరణకు, సిఎస్ఇ విభాగాలకు సంబంధించిన అన్ని విద్యార్థుల డేటా యూజర్ / అందులో నివశించే తేనెటీగ / గిడ్డంగి / విద్యార్థి_ వివరాలు / డిపార్ట్మెంట్లో నిల్వ చేయబడుతుంది. = సిఎస్ఇ. కాబట్టి, సిఎస్ఇ విద్యార్థులకు సంబంధించిన ప్రశ్నలు సిఎస్ఇ విభజనలో ఉన్న డేటాను మాత్రమే చూడాలి. విభజనను చాలా ఉపయోగకరంగా చేస్తుంది ఎందుకంటే ఇది స్కాన్ చేయడం ద్వారా ప్రశ్న జాప్యాన్ని తగ్గిస్తుంది సంబంధిత మొత్తం డేటా సెట్కు బదులుగా విభజించబడిన డేటా. వాస్తవానికి, వాస్తవ ప్రపంచ అమలులో, మీరు వందలాది టిబిల డేటాతో వ్యవహరిస్తారు. కాబట్టి, కొన్ని ప్రశ్నల కోసం ఈ భారీ మొత్తంలో డేటాను స్కాన్ చేయడం imagine హించుకోండి 95% మీరు స్కాన్ చేసిన డేటా మీ ప్రశ్నకు సంబంధించినది కాదు.
బ్లాగులో వెళ్ళమని నేను మీకు సూచిస్తాను అందులో నివశించే తేనెటీగలు ఇక్కడ మీరు ఒక ఉదాహరణతో విభజనలను అమలు చేయడానికి వివిధ మార్గాలను కనుగొంటారు.
బకెట్లు:
ఆదేశాలు:
పట్టిక పట్టిక పేరును సృష్టించండి (విభజన 1 డేటా_టైప్, విభజన 2 డేటా_టైప్, & హెల్లిప్.) ద్వారా క్లస్టర్ చేయబడింది (కాలమ్_పేరు 1, కాలమ్_పేరు 2,…) ద్వారా క్రమబద్ధీకరించబడింది (కాలమ్_పేరు [ASC | DESC],…)] సంఖ్య_బకెట్ల బకెట్లలో
ఇప్పుడు, మీరు పట్టికలోని ఒక కాలమ్ యొక్క హాష్ ఫంక్షన్ ఆధారంగా ప్రతి విభజన లేదా విభజించని పట్టికను బకెట్లుగా విభజించవచ్చు. వాస్తవానికి, ప్రతి బకెట్ విభజన డైరెక్టరీ లేదా టేబుల్ డైరెక్టరీ (విభజించబడని పట్టిక) లోని ఒక ఫైల్ మాత్రమే. అందువల్ల, మీరు విభజనలను n బకెట్లుగా విభజించడానికి ఎంచుకుంటే, మీ ప్రతి విభజన డైరెక్టరీలో మీకు n ఫైళ్లు ఉంటాయి. ఉదాహరణకు, మేము ప్రతి విభజనను 2 బకెట్లుగా బకెట్ చేసిన పై చిత్రాన్ని మీరు చూడవచ్చు. కాబట్టి, ప్రతి విభజన, CSE అని చెప్పండి, అక్కడ రెండు ఫైళ్లు ఉంటాయి, అక్కడ ప్రతి ఒక్కటి CSE విద్యార్థి డేటాను నిల్వ చేస్తుంది.
అందులో నివశించే తేనెటీగలు వరుసలను బకెట్లుగా ఎలా పంపిణీ చేస్తాయి?
బాగా, హైవ్ సూత్రాన్ని ఉపయోగించి వరుసగా బకెట్ సంఖ్యను నిర్ణయిస్తుంది: హాష్_ఫంక్షన్ (బకెట్_ కాలమ్) మాడ్యులో (num_of_buckets) . ఇక్కడ, hash_function కాలమ్ డేటా రకాన్ని బట్టి ఉంటుంది. ఉదాహరణకు, మీరు కొన్ని కాలమ్ ఆధారంగా పట్టికను బకెట్ చేస్తుంటే, INT డేటాటైప్ యొక్క user_id అని చెప్పండి, హాష్_ఫంక్షన్ ఉంటుంది - హాష్_ఫంక్షన్ (యూజర్_ఐడి ) = user_id యొక్క పూర్ణాంక విలువ . మరియు, మీరు రెండు బకెట్లను సృష్టించారని అనుకుందాం, అప్పుడు ప్రతి విభజనలో బకెట్ 1 కి వెళ్ళే అడ్డు వరుసలను లెక్కించడం ద్వారా అందులో నివశించే తేనెటీగలు నిర్ణయిస్తాయి: (user_id విలువ) మాడ్యులో (2). అందువల్ల, ఈ సందర్భంలో, యూజర్_ఐడితో సమానమైన పూర్ణాంక అంకెతో ముగిసే అడ్డు వరుసలు ప్రతి విభజనకు అనుగుణంగా ఒకే బకెట్లో ఉంటాయి. ఇతర డేటా రకాల కోసం హాష్_ఫంక్షన్ లెక్కించడానికి కొంచెం క్లిష్టంగా ఉంటుంది మరియు వాస్తవానికి, స్ట్రింగ్ కోసం ఇది మానవీయంగా గుర్తించబడదు.
గమనిక: మీరు అపాచీ హైవ్ 0.x లేదా 1.x ఉపయోగిస్తుంటే, మీరు బకెట్ చేసే ముందు మీ హైవ్ టెర్మినల్ నుండి కమాండ్ - సెట్ hive.enforce.bucketing = true ను జారీ చేయాలి. నిలువు వరుసను బకెట్ చేయడానికి నిబంధన ద్వారా క్లస్టర్ను ఉపయోగిస్తున్నప్పుడు సరైన తగ్గింపు సంఖ్యను కలిగి ఉండటానికి ఇది మిమ్మల్ని అనుమతిస్తుంది. ఒకవేళ మీరు దీన్ని చేయకపోతే, మీ టేబుల్ డైరెక్టరీలో సృష్టించబడిన ఫైళ్ళ సంఖ్య బకెట్ల సంఖ్యకు సమానం కాదని మీరు కనుగొనవచ్చు. ప్రత్యామ్నాయంగా, మీరు set mapred.reduce.task = num_bucket సెట్ను ఉపయోగించడం ద్వారా బకెట్ల సంఖ్యకు సమానమైన తగ్గింపు సంఖ్యను కూడా సెట్ చేయవచ్చు.
మనకు బకెట్లు ఎందుకు అవసరం?
విభజనకు బకెట్ చేయటానికి రెండు ప్రధాన కారణాలు ఉన్నాయి:
- TO మ్యాప్ సైడ్ చేరండి ఒకే విభజనలో ఉండటానికి ప్రత్యేకమైన జాయిన్ కీకి చెందిన డేటా అవసరం. మీ విభజన కీ చేరడానికి భిన్నంగా ఉన్న సందర్భాల గురించి ఏమిటి? అందువల్ల, ఈ సందర్భాలలో మీరు జాయిన్ కీని ఉపయోగించి టేబుల్ను బకెట్ చేయడం ద్వారా మ్యాప్ సైడ్ జాయిన్ చేయవచ్చు.
- బకెట్టింగ్ నమూనా ప్రక్రియను మరింత సమర్థవంతంగా చేస్తుంది మరియు అందువల్ల, ప్రశ్న సమయాన్ని తగ్గించడానికి అనుమతిస్తుంది.
నేను ఈ హైవ్ ట్యుటోరియల్ బ్లాగును ఇక్కడ ముగించాలనుకుంటున్నాను. ఈ హైవ్ ట్యుటోరియల్ బ్లాగ్ ద్వారా వెళ్ళిన తర్వాత నాకు చాలా ఖచ్చితంగా తెలుసు, అపాచీ హైవ్ యొక్క సరళతను మీరు గ్రహించారు. అప్పటి నుండి, మీరు అబ్బాయిలు అన్ని హైవ్ ఫండమెంటల్స్ నేర్చుకున్నారు, అపాచీ హైవ్తో అనుభవం కలిగి ఉండటానికి ఇది ఎక్కువ సమయం. కాబట్టి, హైవ్ ఇన్స్టాలేషన్లో ఉన్న ఈ హైవ్ ట్యుటోరియల్ బ్లాగ్ సిరీస్లోని తదుపరి బ్లాగును చూడండి మరియు అపాచీ హైవ్లో పనిచేయడం ప్రారంభించండి.
ఇప్పుడు మీరు అపాచీ హైవ్ మరియు దాని లక్షణాలను అర్థం చేసుకున్నారు, చూడండి ప్రపంచవ్యాప్తంగా విస్తరించి ఉన్న 250,000 మందికి పైగా సంతృప్తికరమైన అభ్యాసకుల నెట్వర్క్తో విశ్వసనీయ ఆన్లైన్ లెర్నింగ్ సంస్థ ఎడురేకా చేత. రిటైల్, సోషల్ మీడియా, ఏవియేషన్, టూరిజం, ఫైనాన్స్ డొమైన్లో రియల్ టైమ్ యూజ్ కేసులను ఉపయోగించి హెచ్డిఎఫ్ఎస్, నూలు, మ్యాప్రెడ్యూస్, పిగ్, హైవ్, హెచ్బేస్, ఓజీ, ఫ్లూమ్ మరియు స్కూప్లో నిపుణులు కావడానికి ఎడురేకా బిగ్ డేటా హడూప్ సర్టిఫికేషన్ ట్రైనింగ్ కోర్సు సహాయపడుతుంది.
మాకు ప్రశ్న ఉందా? దయచేసి వ్యాఖ్యల విభాగంలో పేర్కొనండి మరియు మేము మిమ్మల్ని సంప్రదిస్తాము.