HQL లోని ఉదాహరణలతో టాప్ హైవ్ ఆదేశాలు



ఈ బ్లాగ్ హైవ్ కమాండ్లను HQL లోని ఉదాహరణలతో చర్చిస్తుంది. సృష్టించండి, వదలండి, కత్తిరించండి, మార్చండి, చూపించు, వివరించండి, వాడండి, లోడ్ చేయండి, చొప్పించండి, చేరండి మరియు మరెన్నో అందులో నివశించే తేనెటీగలు

ఈ బ్లాగ్ పోస్ట్‌లో, అగ్ర హైవ్ ఆదేశాలను ఉదాహరణలతో చర్చిద్దాం. ఈ హైవ్ ఆదేశాలు పునాదిని ఏర్పాటు చేయడానికి చాలా ముఖ్యమైనవి .

ఎడురేకా 2019 టెక్ కెరీర్ గైడ్ ముగిసింది! గైడ్‌లో హాటెస్ట్ ఉద్యోగ పాత్రలు, ఖచ్చితమైన అభ్యాస మార్గాలు, పరిశ్రమ దృక్పథం మరియు మరిన్ని. డౌన్‌లోడ్ ఇప్పుడు.

అందులో నివశించే తేనెటీగలు అంటే ఏమిటి?

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





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

HQL అంటే ఏమిటి?

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



అందులో నివశించే తేనెటీగలు యొక్క ఉపయోగాలు:

1. అపాచీ హైవ్ పంపిణీ నిల్వ.

2. అందులో నివశించే తేనెటీగలు సులభమైన డేటా సారం / పరివర్తన / లోడ్ (ETL) ను ప్రారంభించడానికి సాధనాలను అందిస్తుంది

3. ఇది వివిధ రకాల డేటా ఫార్మాట్లలో నిర్మాణాన్ని అందిస్తుంది.



4. అందులో నివశించే తేనెటీగలు ఉపయోగించడం ద్వారా, మేము హడూప్ డిస్ట్రిబ్యూటెడ్ ఫైల్ సిస్టమ్‌లో (హెచ్‌డిఎఫ్‌ఎస్ పెద్ద డేటాసెట్‌లను ప్రశ్నించడానికి మరియు నిర్వహించడానికి ఉపయోగిస్తారు) లేదా అపాచీ హెచ్‌బేస్ వంటి ఇతర డేటా నిల్వ వ్యవస్థలలో నిల్వ చేయవచ్చు.

అందులో నివశించే తేనెటీగలు యొక్క పరిమితులు:

& బుల్ హైవ్ ఆన్‌లైన్ లావాదేవీ ప్రాసెసింగ్ (OLTP) కోసం రూపొందించబడలేదు, ఇది ఆన్‌లైన్ అనలిటికల్ ప్రాసెసింగ్ కోసం మాత్రమే ఉపయోగించబడుతుంది.

c ++ అల్గోరిథం క్రమబద్ధీకరణ

& బుల్ హైవ్ డేటాను ఓవర్రైట్ చేయడానికి లేదా పట్టుకోవటానికి మద్దతు ఇస్తుంది, కానీ నవీకరణలు మరియు తొలగించదు.

& ఎద్దు అందులో నివశించే తేనెటీగలో, ఉప ప్రశ్నలకు మద్దతు లేదు.

అందులో నివశించే తేనెటీగలు పిగ్ యొక్క ప్రేరణను ఎందుకు ఉపయోగిస్తారు?

పిగ్ లభ్యత ఉన్నప్పటికీ అందులో నివశించే తేనెటీగలు వాడటానికి కింది కారణాలు:

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

అందులో నివశించే తేనెటీగలు యొక్క భాగాలు:

మెటాస్టోర్:

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

సెర్డే:

సీరియలైజర్, డీసెరియలైజర్ రికార్డును ఎలా ప్రాసెస్ చేయాలో హైవ్ చేయడానికి సూచనలు ఇస్తుంది.

అందులో నివశించే తేనెటీగలు:

డేటా డెఫినిషన్ లాంగ్వేజ్ (డిడిఎల్)

డేటాబేస్లోని పట్టికలు మరియు ఇతర వస్తువులను నిర్మించడానికి మరియు సవరించడానికి DDL స్టేట్మెంట్స్ ఉపయోగించబడతాయి.

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

సుడో హైవ్ కమాండ్ ఇవ్వడం ద్వారా హైవ్ షెల్‌కు వెళ్లి కమాండ్‌ను నమోదు చేయండి ‘సృష్టించండి డేటాబేస్ పేరు> ’ అందులో నివశించే తేనెటీగలు కొత్త డేటాబేస్ సృష్టించడానికి.

అందులో నివశించే తేనెటీగలు ఆదేశాలను ఉపయోగించి అందులో నివశించే తేనెటీగలు సృష్టించండి

హైవ్ గిడ్డంగిలోని డేటాబేస్లను జాబితా చేయడానికి, కమాండ్‌ను నమోదు చేయండి ‘ డేటాబేస్‌లను చూపించు ’.

హైవ్ గిడ్డంగి యొక్క డిఫాల్ట్ ప్రదేశంలో డేటాబేస్ సృష్టిస్తుంది. క్లౌడెరాలో, / యూజర్ / అందులో నివశించే తేనెటీగ / గిడ్డంగిలో హైవ్ డేటాబేస్ స్టోర్.

డేటాబేస్ ఉపయోగించడానికి ఆదేశం వా డు

లోకల్ కమాండ్ నుండి కాపీని ఉపయోగించి లోకల్ నుండి ఇన్పుట్ డేటాను HDFS కు కాపీ చేయండి.

మేము అందులో నివశించే తేనెటీగలో ఒక పట్టికను సృష్టించినప్పుడు, అది అందులో నివశించే తేనెటీగ గిడ్డంగి యొక్క డిఫాల్ట్ ప్రదేశంలో సృష్టిస్తుంది. - “/ యూజర్ / అందులో నివశించే తేనెటీగలు / గిడ్డంగి”, పట్టికను సృష్టించిన తరువాత మనం డేటాను హెచ్‌డిఎఫ్‌ఎస్ నుండి అందులో నివశించే తేనెటీగ పట్టికకు తరలించవచ్చు.

కింది ఆదేశం “/user/hive/warehouse/retail.db” స్థానంలో ఉన్న పట్టికను సృష్టిస్తుంది

గమనిక : retail.db అనేది హైవ్ గిడ్డంగిలో సృష్టించబడిన డేటాబేస్.

వివరించండి పట్టిక యొక్క స్కీమా గురించి సమాచారాన్ని అందిస్తుంది.

డేటా మానిప్యులేషన్ లాంగ్వేజ్ (DML)

డేటాబేస్లో డేటాను తిరిగి పొందడానికి, నిల్వ చేయడానికి, సవరించడానికి, తొలగించడానికి, చొప్పించడానికి మరియు నవీకరించడానికి DML స్టేట్‌మెంట్‌లు ఉపయోగించబడతాయి.

ఉదాహరణ :

లోడ్, ఇన్సర్ట్ స్టేట్మెంట్స్.

సింటాక్స్:

డేటా ఇన్‌పాత్‌ను పట్టికలోకి లోడ్ చేయండి [పట్టిక పేరు]

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

LOAD డేటా LOCAL ఆదేశానికి ఇక్కడ కొన్ని ఉదాహరణలు ఉన్నాయి

డేటాను అందులో నివశించే తేనెటీగ పట్టికలోకి లోడ్ చేసిన తరువాత మేము డేటా మానిప్యులేషన్ స్టేట్మెంట్లను వర్తింపజేయవచ్చు లేదా మొత్తం విధులు డేటాను తిరిగి పొందవచ్చు.

రికార్డుల సంఖ్యను లెక్కించడానికి ఉదాహరణ:

పట్టికలోని మొత్తం రికార్డుల సంఖ్యను లెక్కించడానికి మొత్తం ఫంక్షన్‌ను లెక్కించండి.

‘బాహ్య సృష్టించు’ పట్టిక:

ది బాహ్య సృష్టించండి కీవర్డ్ పట్టికను సృష్టించడానికి ఉపయోగించబడుతుంది మరియు పట్టిక సృష్టించే స్థానాన్ని అందిస్తుంది, తద్వారా ఈ పట్టిక కోసం హైవ్ డిఫాల్ట్ స్థానాన్ని ఉపయోగించదు. ఒక బాహ్య డిఫాల్ట్ నిల్వ కాకుండా దాని నిల్వ కోసం ఏదైనా HDFS స్థానానికి పట్టిక సూచిస్తుంది.

ఆదేశాన్ని చొప్పించండి:

ది చొప్పించు డేటా హైవ్ పట్టికను లోడ్ చేయడానికి కమాండ్ ఉపయోగించబడుతుంది. ఇన్సర్ట్‌లు టేబుల్‌కు లేదా విభజనకు చేయవచ్చు.

& బుల్ ఇన్సర్ట్ ఓవర్రైట్ టేబుల్ లేదా విభజనలో ఉన్న డేటాను ఓవర్రైట్ చేయడానికి ఉపయోగించబడుతుంది.

& బుల్ INSERT INTO డేటాను పట్టికలో ఉన్న డేటాలో చేర్చడానికి ఉపయోగించబడుతుంది. (గమనిక: వాక్యనిర్మాణంలో ఇన్సర్ట్ 0.8 వెర్షన్ నుండి పని చేస్తుంది)

‘విభజన ద్వారా’ మరియు ‘క్లస్టర్డ్ బై’ కమాండ్‌కు ఉదాహరణ:

‘ద్వారా విభజించబడింది ‘పట్టికను విభజనగా విభజించడానికి ఉపయోగిస్తారు మరియు దీనిని ఉపయోగించడం ద్వారా బకెట్లుగా విభజించవచ్చు. క్లస్టర్డ్ బై ‘ఆదేశం.

మేము డేటాను అందుకున్నప్పుడు హైవ్ విసిరే లోపాలు, డైనమిక్ విభజన మోడ్ కఠినమైనది మరియు డైనమిక్ విభజన ప్రారంభించబడదు (ద్వారా జెఫ్ వద్ద డ్రెస్‌హెడ్ వెబ్‌సైట్ ). కాబట్టి మనం ఈ క్రింది పారామితులను హైవ్ షెల్ లో సెట్ చేయాలి.

hive.exec.dynamic.partition = true ని సెట్ చేయండి

డైనమిక్ విభజనలను ప్రారంభించడానికి, అప్రమేయంగా, ఇది తప్పు

hive.exec.dynamic.partition.mode = నాన్‌స్ట్రిక్ట్ సెట్ చేయండి

విభజన వర్గం ద్వారా జరుగుతుంది మరియు ‘క్లస్టర్డ్ బై’ ఆదేశాన్ని ఉపయోగించి బకెట్లుగా విభజించవచ్చు.

‘డ్రాప్ టేబుల్’ స్టేట్మెంట్ టేబుల్ కోసం డేటా మరియు మెటాడేటాను తొలగిస్తుంది. బాహ్య పట్టికల విషయంలో, మెటాడేటా మాత్రమే తొలగించబడుతుంది.

‘డ్రాప్ టేబుల్’ స్టేట్మెంట్ టేబుల్ కోసం డేటా మరియు మెటాడేటాను తొలగిస్తుంది. బాహ్య పట్టికల విషయంలో, మెటాడేటా మాత్రమే తొలగించబడుతుంది.

డేటా స్థానిక ఇన్‌పాత్ ‘aru.txt’ ను టేబుల్ టేబుల్ నేమ్‌లోకి లోడ్ చేసి, ఆపై టేబుల్ నేమ్ కమాండ్ నుండి సెలెక్ట్ * ని ఉపయోగించి ఉద్యోగి 1 టేబుల్‌ని తనిఖీ చేస్తాము.

ఎంచుకోండి ఉపయోగించి పట్టికలోని రికార్డుల సంఖ్యను లెక్కించడానికి లెక్కించు (*) txnrecords నుండి

సమూహనం :

పట్టిక పేరు నుండి గణన (DISTINCT వర్గం) ఎంచుకోండి

ఈ ఆదేశం ‘కేట్’ పట్టిక యొక్క విభిన్న వర్గాన్ని లెక్కించబడుతుంది. ఇక్కడ 3 వేర్వేరు వర్గాలు ఉన్నాయి.

మరొక టేబుల్ కేట్ ఉందని అనుకుందాం, ఇక్కడ f1 వర్గం యొక్క ఫీల్డ్ పేరు.

సమూహం:

ఒకటి లేదా అంతకంటే ఎక్కువ నిలువు వరుసల ద్వారా ఫలితాన్ని సెట్ చేయడానికి సమూహ ఆదేశం ఉపయోగించబడుతుంది.

వర్గం ప్రకారం txt రికార్డుల సమూహం నుండి వర్గం, మొత్తం (మొత్తం) ఎంచుకోండి

ఇది ఒకే వర్గం మొత్తాన్ని లెక్కిస్తుంది.

ఫలితం ఒక పట్టిక మరొక పట్టికలో నిల్వ చేయబడుతుంది.

పాత టేబుల్ పేరు నుండి ఎంచుకోండి * గా టేబుల్ న్యూ టేబుల్ పేరును సృష్టించండి

కమాండ్‌లో చేరండి:

ఇక్కడ పేరులో మరో పట్టిక సృష్టించబడుతుంది ‘మెయిల్స్’

ఆపరేషన్‌లో చేరండి :

ప్రతిదానికి సాధారణ విలువలను ఉపయోగించడం ద్వారా రెండు పట్టికల నుండి ఫీల్డ్‌లను కలపడానికి జాయిన్ ఆపరేషన్ జరుగుతుంది.

ఎడమ uter టర్ చేరండి :

A మరియు B పట్టికలకు ఎడమ బాహ్య జాయిన్ (లేదా ఎడమ జాయిన్) ఫలితం ఎల్లప్పుడూ “ఎడమ” పట్టిక (A) యొక్క అన్ని రికార్డులను కలిగి ఉంటుంది, జాయిన్-కండిషన్ “కుడి” పట్టికలో సరిపోలే రికార్డును కనుగొనలేకపోయినా (బి).

కుడి uter టర్ చేరండి :

కుడి బాహ్య జాయిన్ (లేదా కుడి జాయిన్) ఎడమ బాహ్య జాయిన్‌ను దగ్గరగా పోలి ఉంటుంది, పట్టికలు తిరగబడటం తప్ప. “కుడి” పట్టిక (బి) నుండి ప్రతి అడ్డు వరుస చేరిన పట్టికలో కనీసం ఒక్కసారైనా కనిపిస్తుంది.

పూర్తి చేరండి :

చేరిన పట్టిక రెండు పట్టికల నుండి అన్ని రికార్డులను కలిగి ఉంటుంది మరియు ఇరువైపులా తప్పిపోయిన మ్యాచ్‌ల కోసం NULL లను నింపండి.

అందులో నివశించే తేనెటీగలు చేసిన తర్వాత మనం అందులో నివశించే తేనెటీగ షెల్ నుండి నిష్క్రమించడానికి క్విట్ కమాండ్‌ను ఉపయోగించవచ్చు.

అందులో నివశించే తేనెటీగలు నుండి నిష్క్రమించడం

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

మాకు ప్రశ్న ఉందా? దయచేసి వ్యాఖ్యల విభాగంలో పేర్కొనండి మరియు మేము మిమ్మల్ని సంప్రదిస్తాము.

సంబంధిత పోస్ట్లు:

7 మార్గాలు పెద్ద డేటా శిక్షణ మీ సంస్థను మార్చగలదు

హైవ్ డేటా మోడల్స్