Увод у Спарк са Питхоном - ПиСпарк за почетнике



Апацхе Спарк је преузео свет великих података и аналитике, а Питхон је један од најприступачнијих програмских језика који се данас користи у индустрији. Дакле, овде на овом блогу научићемо о Писпарку (варница са питоном) како бисмо извукли најбоље из оба света.

је један од најчешће коришћених оквира када је реч о руковању и раду са великим подацима И Питхон је један од најчешће коришћених програмских језика за анализу података, машинско учење и још много тога. Па, зашто их не би користили заједно? Ово је место где Искра са Питхоном такође познат као ПиСпарк улази утхеслика.

Са просечном платом од 110.000 долара годишње за програмера Апацхе Спарк, нема сумње да се Спарк много користи у индустрији. Због тога штоњеговобогат библиотечки сет, Питхон користитхевећина научника и аналитичара података данас. Интегрисање Питхона са Спарк-ом био је главни поклон заједници. Спарк је развијен на скала језику, који је веома сличан Јави. Компајлира програмски код у бајт код за ЈВМ за обраду великих података. Да би подржала Спарк с питхоном, заједница Апацхе Спарк је објавила ПиСпарк.Од тада, је познато као једна од најтраженијих вештина у индустрији због широког спектра предности које су уследиле комбиновањем најбољих из оба света.У овом блогу Спарк витх Питхон, разговараћу о следећим темама.





Увод у Апацхе Спарк

Апацхе Спарк је кластер-рачунарски оквир отвореног кода за обрада у реалном времену развила Апацхе Софтваре Фоундатион. Спарк пружа интерфејс за програмирање читавих кластера са имплицитним паралелизам података и толеранција кварова.



Испод су неке од карактеристика Апацхе Спарк-а које му дају предност у односу на друге оквире:

Особине варнице - Искра са Питхоном - Едурека

  • Брзина: Сто пута је бржи од традиционалних оквира за обраду података великих размера.
  • Моћно кеширање: Једноставан програмски слој пружа моћне могућности кеширања и трајања диска.
  • Примена: Може да се примени преко Месоса, Хадоопа преко предива или Спарк-овог менаџера кластера.
  • Реалном времену: Реалном временурачунање и мала латенција због рачунања у меморији.
  • Полиглот: То је један од најважнијихКарактеристикеовог оквира јер се може програмирати у Сцали, Јави, Питхону и Р.

Зашто ићи на Питхон?

Иако је Спарк дизајниран у скали, што га чини готово 10 пута бржим од Питхона, али Сцала је бржа само када број језгара који се користи је мањи . Како већина анализа и процеса данас захтева велики број језгара, предност Сцала у перформансама није толико велика.



За програмере Питхон је релативно лакше научити због своје синтаксе и стандардних библиотека. Штавише, то је динамички куцани језик, што значи да РДД-ови могу садржати објекте више врста.

Иако је Сцала имала СпаркМЛлиб нема довољно библиотека и алата за машинско учење и НЛП сврхе. Штавише, Сцала нема визуелизацију података.

Обука за ПиСпарк | Апацхе Спарк витх Питхон | Едурека

Претплатите се на наш иоутубе канал да бисте добијали нова ажурирања ..!

Подешавање Спарк-а помоћу Питхона (ПиСпарк)

Надам се да знате како .Дакле, једном кад то учините распакован датотека са варницама, инсталиран то и додао је пут до .басхрц датотеку, морате да укуцатеизвор .басхрц

извоз СПАРК_ХОМЕ = /уср/либ/хадооп/спарк-2.1.0-бин-хадооп2.7 извоз ПАТХ = $ ПАТХ: /уср/либ/хадооп/спарк-2.1.0-бин-хадооп2.7/бин

Да бисте отворили љуску писпарк, потребно је да унесете наредбу./бин/писпарк

Искра у индустрији

Апацхе Спарк због својих невероватних карактеристика попут обрада у меморији , полиглот и брза обрада користе их многе компаније широм света у разне сврхе у разним индустријама:

Иахоо користи Апацхе Спарк због својих могућности машинског учења за персонализацију својих вести, веб страница, као и за циљно оглашавање. Користе Спарк са питхоном да би открили какве вести - корисници су заинтересовани да читају и категоризују вести како би открили какве би кориснике занимало читање сваке категорије вести.

питхон __инит__ селф

ТрипАдвисор користи апацхе спарк да пружи савете милионима путника упоређујући стотине веб локација како би пронашао најбоље цене хотела за своје купце. Време потребно за читање и обраду рецензија хотела у читљивом формату врши се уз помоћ Апацхе Спарк-а.

Једна од највећих светских платформи за е-трговину Алибаба покреће неке од највећих послова Апацхе Спарк на свету како би анализирао стотине петабајта података на својој платформи за е-трговину.

ПиСпарк СпаркЦонтект и проток података

Говорећи о Спарк-у са Питхоном, рад са РДД-има омогућава библиотека Пи4ј. ПиСпарк Схелл повезује Питхон АПИ са искреним језгром и иницијализује Спарк контекст. Спарк контекст је срце сваке примене искре.

  1. Спарк контекст поставља интерне услуге и успоставља везу са окружењем за извршење Спарк.
  2. Објект спаркцонтект у програму возача координира свим дистрибуираним процесима и омогућава алокацију ресурса.
  3. Менаџери кластера пружају извршиоце, који су ЈВМ процес са логиком.
  4. СпаркЦонтект објект шаље апликацију извршиоцима.
  5. СпаркЦонтект извршава задатке у сваком извршиоцу.

Случај употребе ПиСпарк КДД

Сада погледајмо Пример употребе Куп КДД’99 (Међународно такмичење у откривању знања и алаткама за рударење подацима).Овде ћемо узети делић скупа података јер је оригинални скуп података превелик

импорт урллиб ф = урллиб.урлретриеве ('хттп://кдд.ицс.уци.еду/датабасес/кддцуп99/кддцуп.дата_10_перцент.гз', 'кддцуп.дата_10_перцент.гз')

СТВАРАЊЕ РДД:
Сада ову датотеку можемо користити за креирајте наш РДД .

дата_филе = './кддцуп.дата_10_перцент.гз' рав_дата = сц.тектФиле (дата_филе)

ФИЛТИРАЊЕ:

Претпоставимо да желимо да избројимо колико је нормалних. интеракције које имамо у нашем скупу података. Ми Можемо филтер наш рав_дата РДД како следи.

нормал_рав_дата = рав_дата.филтер (ламбда к: 'нормално.' у к)

ЦОУНТ:

Сада можемо рачунати колико елемената имамо у новом РДД.

од времена време увоза т0 = време () нормал_цоунт = нормал_рав_дата.цоунт () тт = тиме () - т0 принт 'Постоје {}' нормалне 'интеракције'.формат (нормал_цоунт) принт' Број завршен за {} секунди'.формат (округло (тт, 3))

Излаз:

Постоји 97278 'нормалних' интеракција Бројање је завршено за 5,951 секунди

КАРТИРАЊЕ:

У овослучајнашу датотеку података желимо да читамо као ЦСВ форматирану. То можемо учинити применом ламбда функције на сваки елемент у РДД-у на следећи начин. Овде ћемо користити трансформација мап () и таке ().

фром ппринт импорт ппринт цсв_дата = рав_дата.мап (ламбда к: к.сплит (',')) т0 = тиме () хеад_ровс = цсв_дата.таке (5) тт = тиме () - т0 принт 'Рашчлањивање завршено за {} секунди '.формат (роунд (тт, 3)) ппринт (хеад_ровс [0])

Излаз:

Рашчлањивање је завршено за 1,715 секунди [у'0 ', у'тцп', у'хттп ', у'СФ', у'181 ', у'5450', у'0 ', у'0',. . у'нормално. ']

СПЛИТТИНГ:

Сада желимо да сваки елемент у РДД буде као пар кључ / вредност где је кључ ознака (нпр. нормално ) а вредност је цела листа елемената која представља ред у датотеци у ЦСВ формату. Могли бисмо да поступимо на следећи начин. Овде користимо лине.сплит () и мап ().

деф парсе_интерацтион (лине): елемс = лине.сплит (',') таг = елемс [41] ретурн (таг, елемс) кеи_цсв_дата = рав_дата.мап (парсе_интерацтион) хеад_ровс = кеи_цсв_дата.таке (5) ппринт (хеад_ровс [0] )
 Излаз: (у'нормал. ', [у'0', у'тцп ', у'хттп', у'СФ ', у'181', у'5450 ', у'0', у'0 ', у' 0,00 ', у'1,00', .... Неуобичајено. '])

ЗБИРКА АКЦИЈЕ:

Овде ћемо користити акцију цоллецт (). У меморију ће унети све елементе РДД-а. Из тог разлога, мора се пажљиво користити при раду са великим РДД-овима.

т0 = тиме () алл_рав_дата = рав_дата.цоллецт () тт = тиме () - т0 принт 'Подаци прикупљени у {} секунди'.формат (округли (тт, 3))

Излаз:

Подаци прикупљени за 17.927 секунди

То је трајало дуже као и било која друга радња коју смо раније користили, наравно. Сваки раднички чвор Спарк који има фрагмент РДД-а мора бити координиран како би преузео његов део, а затим све заједно смањио.

Као последњи пример комбиновања свих претходних, желимо да прикупимо свенормалноинтеракције као парови кључ / вредност.

# преузми податке из датотеке дата_филе = './кддцуп.дата_10_перцент.гз' рав_дата = сц.тектФиле (дата_филе) # рашчланити у парове кључ / вредност кеи_цсв_дата = рав_дата.мап (парсе_интерацтион) # филтрирати нормалне интеракције кључа нормал_кеи_интерацтионс = кеи_цсв_дата. ламбда к: к [0] == 'нормално.') # прикупи све т0 = тиме () алл_нормал = нормал_кеи_интерацтионс.цоллецт () тт = тиме () - т0 нормал_цоунт = лен (алл_нормал) принт 'Подаци прикупљени у {} секунди '.формат (роунд (тт, 3)) принт' Постоје {} 'нормалне' интеракције'.формат (нормал_цоунт)

Излаз:

Подаци прикупљени за 12,485 секунди Постоји 97278 нормалних интеракција

Дакле, то је то, момци!

Надам се да вам се свидео овај блог Спарк витх Питхон. Ако ово читате, честитам! Више нисте почетник у ПиСпарку. Испробајте овај једноставни пример на својим системима сада.

Сад кад сте разумели основе ПиСпарка, погледајте Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250.000 задовољних ученика раширених широм света. Едурека Обука за сертификацију Питхон Спарк помоћу ПиСпарка је дизајниран да вам пружи знање и вештине потребне да бисте постали успешан програмер Спарк-а који користи Питхон и припремио вас за испит за сертификацију Цлоудера Хадооп анд Спарк Девелопер (ЦЦА175).

Имате питање за нас? Молимо вас да то споменете у одељку за коментаре и јавићемо вам се.