పైథాన్‌తో స్పార్క్ పరిచయం - బిగినర్స్ కోసం పైస్పార్క్



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

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

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





అపాచీ స్పార్క్ పరిచయం

అపాచీ స్పార్క్ అనేది ఓపెన్ సోర్స్ క్లస్టర్-కంప్యూటింగ్ ఫ్రేమ్‌వర్క్ రియల్ టైమ్ ప్రాసెసింగ్ అపాచీ సాఫ్ట్‌వేర్ ఫౌండేషన్ అభివృద్ధి చేసింది. స్పార్క్ మొత్తం క్లస్టర్‌లను అవ్యక్తంగా ప్రోగ్రామింగ్ చేయడానికి ఒక ఇంటర్‌ఫేస్‌ను అందిస్తుంది డేటా సమాంతరత మరియు తప్పు-సహనం.



అపాచీ స్పార్క్ యొక్క కొన్ని లక్షణాలు క్రింద ఉన్నాయి, ఇది ఇతర ఫ్రేమ్‌వర్క్‌లపై అంచుని ఇస్తుంది:

స్పార్క్ ఫీచర్స్ - పైథాన్‌తో స్పార్క్ - ఎడురేకా

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

పైథాన్ కోసం ఎందుకు వెళ్ళాలి?

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



ప్రోగ్రామర్లకు పైథాన్ తులనాత్మకంగా సులభం నేర్చుకోవడం దాని వాక్యనిర్మాణం మరియు ప్రామాణిక గ్రంథాలయాల కారణంగా. అంతేకాక, ఇది ఒక డైనమిక్‌గా టైప్ చేసిన భాష, అంటే RDD లు బహుళ రకాల వస్తువులను కలిగి ఉంటాయి.

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

పైస్పార్క్ శిక్షణ | పైథాన్‌తో అపాచీ స్పార్క్ | ఎడురేకా

క్రొత్త నవీకరణలను పొందడానికి మా యూట్యూబ్ ఛానెల్‌కు సభ్యత్వాన్ని పొందండి ..!

పైథాన్ (పైస్పార్క్) తో స్పార్క్ ఏర్పాటు.

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

ఎగుమతి SPARK_HOME = /usr/lib/hadoop/spark-2.1.0-bin-hadoop2.7 ఎగుమతి PATH = $ PATH: /usr/lib/hadoop/spark-2.1.0-bin-hadoop2.7/bin

పైస్పార్క్ షెల్ తెరవడానికి మీరు కమాండ్ టైప్ చేయాలి./బిన్ / పైస్పార్క్

పరిశ్రమలో స్పార్క్

అపాచీ స్పార్క్ ఎందుకంటే ఇది అద్భుతమైన లక్షణాలు ఇన్-మెమరీ ప్రాసెసింగ్ , పాలిగ్లోట్ మరియు వేగవంతమైన ప్రాసెసింగ్ ప్రపంచవ్యాప్తంగా ఉన్న అనేక కంపెనీలు వివిధ పరిశ్రమలలో వివిధ ప్రయోజనాల కోసం ఉపయోగిస్తున్నాయి:

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

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

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

పైస్పార్క్ స్పార్క్కాంటెక్స్ట్ మరియు డేటా ఫ్లో

పైథాన్‌తో స్పార్క్ గురించి మాట్లాడుతూ, RDD లతో పనిచేయడం లైబ్రరీ Py4j ద్వారా సాధ్యమవుతుంది. పైస్పార్క్ షెల్ పైథాన్ API ని స్పార్క్ కోర్కు లింక్ చేస్తుంది మరియు స్పార్క్ సందర్భాన్ని ప్రారంభిస్తుంది. స్పార్క్ సందర్భం ఏదైనా స్పార్క్ అప్లికేషన్ యొక్క గుండె.

  1. స్పార్క్ సందర్భం అంతర్గత సేవలను ఏర్పాటు చేస్తుంది మరియు స్పార్క్ అమలు వాతావరణానికి కనెక్షన్‌ను ఏర్పాటు చేస్తుంది.
  2. డ్రైవర్ ప్రోగ్రామ్‌లోని స్పార్క్ కాంటెక్స్ట్ ఆబ్జెక్ట్ అన్ని పంపిణీ ప్రక్రియలను సమన్వయం చేస్తుంది మరియు వనరుల కేటాయింపును అనుమతిస్తుంది.
  3. క్లస్టర్ నిర్వాహకులు ఎగ్జిక్యూటర్లను అందిస్తారు, అవి తర్కంతో JVM ప్రాసెస్.
  4. స్పార్క్కాంటెక్స్ట్ ఆబ్జెక్ట్ అప్లికేషన్ను ఎగ్జిక్యూటర్లకు పంపుతుంది.
  5. స్పార్క్కాంటెక్స్ట్ ప్రతి ఎగ్జిక్యూటర్లో పనులను అమలు చేస్తుంది.

పైస్పార్క్ కెడిడి వాడకం కేసు

ఇప్పుడు వాడకం కేసును చూద్దాం KDD’99 కప్ (ఇంటర్నేషనల్ నాలెడ్జ్ డిస్కవరీ అండ్ డేటా మైనింగ్ టూల్స్ కాంపిటీషన్).ఇక్కడ మేము డేటాసెట్ యొక్క కొంత భాగాన్ని తీసుకుంటాము ఎందుకంటే అసలు డేటాసెట్ చాలా పెద్దది

దిగుమతి urllib f = urllib.urlretrieve ('http://kdd.ics.uci.edu/databases/kddcup99/kddcup.data_10_percent.gz', 'kddcup.data_10_percent.gz')

RDD ని సృష్టిస్తోంది:
ఇప్పుడు మనం ఈ ఫైల్‌ను ఉపయోగించవచ్చు మా RDD ని సృష్టించండి .

data_file = './kddcup.data_10_percent.gz' raw_data = sc.textFile (data_file)

ఫిల్టరింగ్:

ఎన్ని సాధారణమైనవి అని మనం లెక్కించాలనుకుందాం. మా డేటాసెట్‌లో పరస్పర చర్యలు. మేము చేయవచ్చు ఫిల్టర్ మా ముడి_డేటా RDD క్రింది విధంగా ఉంది.

normal_raw_data = raw_data.filter (లాంబ్డా x: x లో 'సాధారణ.')

COUNT:

ఇప్పుడు మనం చేయవచ్చు లెక్కించు క్రొత్త RDD లో మనకు ఎన్ని అంశాలు ఉన్నాయి.

సమయం దిగుమతి సమయం నుండి t0 = సమయం () normal_count = normal_raw_data.count () tt = time () - t0 ముద్రణ 'అక్కడ normal normal' సాధారణ 'పరస్పర చర్యలు ఉన్నాయి. ఫార్మాట్ (సాధారణ_కౌంట్) ముద్రణ' Count} సెకన్లలో పూర్తయింది ' (రౌండ్ (టిటి, 3 శాతం)

అవుట్పుట్:

97278 'సాధారణ' పరస్పర చర్యలు 5.951 సెకన్లలో పూర్తయ్యాయి

మ్యాపింగ్:

ఇందులోకేసుమేము మా డేటా ఫైల్‌ను CSV ఆకృతీకరించినదిగా చదవాలనుకుంటున్నాము. RDD లోని ప్రతి మూలకానికి లాంబ్డా ఫంక్షన్‌ను ఈ క్రింది విధంగా వర్తింపజేయడం ద్వారా మనం దీన్ని చేయవచ్చు. ఇక్కడ మేము ఉపయోగిస్తాము మ్యాప్ () మరియు () పరివర్తన తీసుకోండి.

pprint దిగుమతి నుండి pprint csv_data = raw_data.map (lambda x: x.split (',')) t0 = time () head_rows = csv_data.take (5) tt = time () - t0 print 'పార్స్ {} సెకన్లలో పూర్తయింది '. ఫార్మాట్ (రౌండ్ (tt, 3%) pprint (head_rows [0])

అవుట్పుట్:

పార్స్ 1.715 సెకన్లలో పూర్తయింది [u'0 ', u'tcp', u'http ', u'SF', u'181 ', u'5450', u'0 ', u'0' ,. . u'normal. ']

స్ప్లిటింగ్:

ఇప్పుడు మేము RDD లోని ప్రతి మూలకాన్ని కీ-విలువ జతగా కలిగి ఉండాలనుకుంటున్నాము, ఇక్కడ కీ ట్యాగ్ (ఉదా. సాధారణ ) మరియు విలువ CSV ఆకృతీకరించిన ఫైల్‌లోని అడ్డు వరుసను సూచించే మూలకాల మొత్తం జాబితా. మేము ఈ క్రింది విధంగా కొనసాగవచ్చు. ఇక్కడ మేము ఉపయోగిస్తాము line.split () మరియు మ్యాప్ ().

def parse_interaction (line): elems = line.split (',') tag = elems [41] return (tag, elems) key_csv_data = raw_data.map (parse_interaction) head_rows = key_csv_data.take (5) pprint (head_rows [0] )
 అవుట్పుట్: (u'normal. ', [u'0', u'tcp ', u'http', u'SF ', u'181', u'5450 ', u'0', u'0 ', u' 0.00 ', u'1.00', .... అసాధారణమైనది. '])

సేకరణ చర్య:

ఇక్కడ మేము సేకరణ () చర్యను ఉపయోగించబోతున్నాము. ఇది RDD యొక్క అన్ని అంశాలను మెమరీలోకి పొందుతుంది. ఈ కారణంగా, పెద్ద RDD లతో పనిచేసేటప్పుడు దీనిని జాగ్రత్తగా ఉపయోగించాలి.

t0 = time () all_raw_data = raw_data.collect () tt = time () - t0 ప్రింట్ 'data} సెకన్లలో సేకరించిన డేటా. ఫార్మాట్ (రౌండ్ (tt, 3%))

అవుట్పుట్:

17.927 సెకన్లలో సేకరించిన డేటా

మేము ఇంతకుముందు ఉపయోగించిన ఇతర చర్యల కంటే ఎక్కువ సమయం పట్టింది. RDD యొక్క ఒక భాగాన్ని కలిగి ఉన్న ప్రతి స్పార్క్ వర్కర్ నోడ్ దాని భాగాన్ని తిరిగి పొందటానికి సమన్వయం చేసుకోవాలి మరియు తరువాత ప్రతిదీ కలిసి తగ్గించాలి.

మునుపటి అన్నింటినీ కలిపే చివరి ఉదాహరణగా, మేము అన్నింటినీ సేకరించాలనుకుంటున్నాముసాధారణకీ-విలువ జతలుగా పరస్పర చర్యలు.

పైథాన్‌లో __init__ అంటే ఏమిటి?
# ఫైల్ డేటా_ఫైల్ = 'నుండి డేటాను పొందండి.'. lambda x: x [0] == 'normal.') # అన్ని t0 = time () all_normal = normal_key_interactions.collect () tt = time () - t0 normal_count = len (all_normal) print 'సేకరించిన డేటా {} సెకన్లలో '.ఫార్మాట్ (రౌండ్ (టిటి, 3 శాతం) ప్రింట్' {normal 'సాధారణ' పరస్పర చర్యలు ఉన్నాయి. ఫార్మాట్ (సాధారణ_కౌంట్)

అవుట్పుట్:

12.485 సెకన్లలో సేకరించిన డేటా 97278 సాధారణ పరస్పర చర్యలు ఉన్నాయి

కాబట్టి ఇది, అబ్బాయిలు!

పైథాన్ బ్లాగుతో మీరు ఈ స్పార్క్ ను ఆస్వాదించారని నేను నమ్ముతున్నాను. మీరు దీన్ని చదువుతుంటే, అభినందనలు! మీరు ఇకపై పైస్‌పార్క్‌కు క్రొత్తవారు కాదు. ఇప్పుడు మీ సిస్టమ్స్‌లో ఈ సరళమైన ఉదాహరణను ప్రయత్నించండి.

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

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