Big Data în AWS - Soluție inteligentă pentru Big Data



Acest articol vă ajută să înțelegeți cum AWS se ocupă inteligent de Big Data. De asemenea, arată cum AWS poate rezolva cu ușurință provocările Big Data.

Ideea Big Data pur și simplu nu este nouă, este peste tot. Efectul Big Data este peste tot, de la afaceri la știință, de la guvern la arte și așa mai departe. Nu există un tovarăș mai bun decât pentru a procesa și analiza Big Data. În acest articol, voi arăta cum AWS abordează provocările Big Data și indicațiile pe care le voi acoperi sunt următoarele:

Ce este Big Data?

caracteristici de date mari





Puteți considera Big Data ca active de informații cu volum mare, viteză mare și / sau varietate ridicată, care necesită forme inovatoare de procesare a informațiilor eficiente din punct de vedere al costurilor, care permit o perspectivă îmbunătățită, luarea deciziilor și automatizarea proceselor.

Big Data cuprinde 5 V-uri importante care definesc caracteristicile Big Data. Să discutăm despre acestea înainte de a trece la AWS.



Ce este AWS?

cuprinde multe produse și servicii de cloud computing diferite. Divizia extrem de profitabilă Amazon oferă servere, stocare, rețea, calcul la distanță, e-mail, dezvoltare mobilă, împreună cu securitate. În plus. AWS constă din două produse principale: EC2, serviciul de mașini virtuale Amazon și S3, un sistem de stocare de către Amazon. Este atât de mare și prezentă în lumea informatică încât este acum de cel puțin 10 ori dimensiunea celui mai apropiat concurent și găzduiește site-uri web populare precum Netflix și Instagram.

.

AWS este împărțit în 12 regiuni globale la nivel mondial, fiecare dintre acestea având mai multe zone de disponibilitate în care sunt situate serverele sale.Aceste regiuni deservite sunt împărțite pentru a permite utilizatorilor să stabilească limite geografice pentru serviciile lor, dar și pentru a oferi securitate prin diversificarea locațiilor fizice în care sunt păstrate datele.



De ce Big Data în AWS?

Oamenii de știință, dezvoltatorii și alți pasionați de tehnologie din mai multe domenii diferite profită de AWS pentru a efectua analize de date mari și pentru a face față provocărilor critice ale V-urilor în creștere ale informațiilor digitale. AWS vă oferă un portofoliu de servicii de cloud computing pentru a vă ajuta să gestionați big data prin reducerea semnificativă a costurilor, scalarea pentru a satisface cererea și creșterea vitezei de inovație.

Amazon Web Services oferă un portofoliu complet integrat a serviciilor de cloud computing. În plus, vă ajută să construiți, să securizați și să implementați aplicațiile dvs. de big data. De asemenea, cu AWS, nu aveți nevoie de hardware pentru a procura și de infrastructură pentru întreținere și extindere. Datorită acestui fapt, vă puteți concentra resursele pe descoperirea de noi perspective.Deoarece noile funcții sunt adăugate în mod constant, veți putea întotdeauna să utilizați cele mai noi tehnologii fără a fi nevoie să vă asumați angajamente pe termen lung de investiții.

Cum AWS poate rezolva provocările Big Data?

Soluții AWS pentru Big Data

AWS are numeroase soluții pentru toate scopurile de dezvoltare și implementare. De asemenea, în domeniul științei datelor și Big Data, AWS a venit cu evoluții recente în diferite aspecte ale manipulării Big Data. Înainte de a trece la instrumente, permiteți-ne să înțelegem diferite aspecte ale Big Data pentru care AWS poate oferi soluții.

  1. Ingerarea datelor
    Colectarea datelor brute - tranzacții, jurnale, dispozitive mobile și multe altele - este prima provocare cu care se confruntă multe organizații atunci când se ocupă de big data. O platformă bună de date mari face acest pas mai ușor, permițând dezvoltatorilor să ingereze o mare varietate de date - de la structurate la nestructurate - la orice viteză - de la timp real la lot.

  2. Stocarea datelor
    Orice platformă de date mari are nevoie de un depozit sigur, scalabil și durabil pentru a stoca date înainte sau chiar după procesarea sarcinilor. În funcție de cerințele dvs. specifice, este posibil să aveți nevoie de magazine temporare pentru tranzitarea datelor.

  3. Procesarea datelor
    Acesta este pasul în care transformarea datelor se întâmplă din starea brută într-un format consumabil - de obicei prin sortare, agregare, alăturare și chiar efectuarea de funcții și algoritmi mai avansați. Seturile de date rezultate sunt stocate pentru procesare ulterioară sau sunt puse la dispoziție pentru consum prin intermediul instrumentelor de business intelligence și de vizualizare a datelor.

  4. Vizualizare

    Datele mari se referă la obținerea de informații de mare valoare, care pot fi acționate din resursele dvs. de date. În mod ideal, datele sunt disponibile pentru părțile interesate prin intermediul inteligenței de afaceri self-service și a instrumentelor de vizualizare agile a datelor, care permit explorarea rapidă și ușoară a seturilor de date.

Instrumente AWS pentru Big Data

În secțiunile anterioare, am analizat câmpurile din Big Data unde AWS poate oferi soluții. În plus, AWS are mai multe instrumente și servicii în arsenalul său pentru a permite clienților cu capacitățile Big Data.

Să ne uităm la diferitele soluții furnizate de AWS pentru gestionarea diferitelor etape implicate în gestionarea Big Data

Ingerare

  1. Kinezis

    Amazon Kinesis Firehose este un serviciu complet gestionat pentru livrarea de date în timp real în direct către Amazon S3. Kinesis Firehose se dimensionează automat pentru a se potrivi cu volumul și fluxul de date în flux și nu necesită administrare continuă. Puteți configura Kinesis Firehose pentru a transforma datele de streaming înainte de a le stoca în Amazon S3.

  2. Bulgare de zapada
    Poți să folosești AWS Snowball pentru a migra în mod sigur și eficient datele în bloc de la platformele de stocare locale și clusterele Hadoop la cupe S3. După ce creați o lucrare în AWS Management Console, veți obține automat un dispozitiv Snowball. După sosirea unui Snowball, conectați-l la rețeaua dvs. locală, instalați clientul Snowball pe sursa dvs. de date locală și apoi utilizați clientul Snowball pentru a selecta și transfera directorele de fișiere pe dispozitivul Snowball.

Depozitare

  1. Amazon S3

Amazon S3 este un spațiu de stocare sigur, extrem de scalabil, durabil, cu latență de milisecundă pentru acces la date. S3 poate stoca orice tip de date de oriunde - site-uri web și aplicații mobile, aplicații corporative și date de la senzori sau dispozitive IoT. De asemenea, poate stoca și prelua orice cantitate de date, cu o disponibilitate de neegalat, și construită de la bază pentru a oferi 99,999999999% (11 noi) de durabilitate.

2. AWS Glue

Glue este un serviciu complet gestionat, care oferă un catalog de date pentru a face datele din lacul de date descoperibile. În plus, are capacitatea de a extrage, transforma și încărca (ETL) pentru a pregăti date pentru analiză. De asemenea, catalogul de date încorporat este ca un depozit de metadate persistent pentru toate activele de date, făcând toate datele căutabile și interogabile într-o singură vizualizare.

Prelucrare

  1. EMR
    Pentru prelucrarea datelor mari folosind Spark și Hadoop, Amazon EMR oferă un serviciu gestionat care face mai ușor, rapid și rentabil procesarea unor cantități mari de date. Mai mult, EMR sprijină 19 proiecte open-source diferite, inclusiv Hadoop , Scânteie , și De asemenea, vine cu notebook-uri EMR gestionate pentru ingineria datelor, dezvoltarea științei datelor și colaborarea.

  2. Tura roșie
    Pentru depozitarea datelor, Amazon Redshift oferă posibilitatea de a rula interogări complexe și analitice împotriva petabytes-ului de date structurate. De asemenea, include Spectru Redshift care rulează interogări SQL direct împotriva Exabytes de date structurate sau nestructurate în S3 fără a fi nevoie de mișcări inutile de date.

Vizualizări

  1. Amazon QuickSight

    Pentru tablouri de bord și vizualizări, Amazon Quicksight vă oferă un serviciu de analiză rapidă, bazat pe cloud. Este ușor să construiți vizualizări uimitoare și tablouri de bord bogate. În plus, le puteți accesa din orice browser sau dispozitiv mobil.

Demo - Analiza datelor speciilor de plante și animale pe cale de dispariție în Australia.

În această demonstrație, vom folosi date eșantion de specii de plante și animale pe cale de dispariție din statele și teritoriile Australiei. Aici vom crea un cluster EMR și îl vom configura pentru a rula lucrări Apache Hive în mai mulți pași. Clusterul EMR va avea instalat Apache Hive. Acest cluster va utiliza EMRFS ca sistem de fișiere, astfel încât locațiile sale de intrare și ieșire de date să fie mapate la o bucket S3. Clusterul va utiliza, de asemenea, același bucket S3 pentru stocarea fișierelor jurnal.

Acum vom crea o serie de pași EMR în cluster pentru a procesa un eșantion de date. Aici fiecare dintre acești pași va rula un script Hive, iar rezultatul final va fi salvat în bucket-ul S3. Acești pași vor genera jurnale MapReduce și asta pentru că comenzile Hive sunt traduse în joburi MapReduce în timpul rulării. Fișierele jurnal pentru fiecare pas sunt agregate din containerele pe care le generează.

Exemple de date

Setul de date eșantion pentru acest caz de utilizare este disponibil public de la Site-ul de date deschise al guvernului australian . Acest set de date se referă la specii de animale și plante amenințate din diferite state și teritorii din Australia. O descriere a câmpurilor acestui set de date și a fișierului CSV poate fi văzută și descărcată Aici .

Etape de procesare

Primul pas de job EMR implică crearea unei tabele Hive ca schemă pentru fișierul sursă subiacent în S3. În cel de-al doilea pas de job, vom rula acum o interogare reușită împotriva datelor. În mod similar, vom executa apoi o a treia și a patra interogare.

Vom repeta acești patru pași de câteva ori într-o oră, simulând parcurgerile succesive ale unei lucrări în lot cu mai mulți pași. Cu toate acestea, într-un scenariu din viața reală, diferența de timp dintre fiecare serie de loturi ar putea fi în mod normal mai mare. Distanța de timp redus între cursele succesive este menită să accelereze testarea noastră.

S3 Bucket și foldere

Înainte de a crea clusterul EMR, aici a trebuit să creăm un bucket S3 pentru a găzdui fișierele sale. În exemplul nostru, denumim acest bucket „arvind1-bucket” Dosarele de sub acest bucket sunt prezentate mai jos în AWS Console for S3:

  • Dosarul de intrare conține eșantionul de date

  • Dosarul de scripturi conține fișierele de scripturi Hive pentru pașii jobului EMR

  • Dosarul de ieșire va conține în mod evident ieșirea programului Hive

  • Clusterul EMR utilizează folderul jurnal pentru a-și salva fișierele jurnal.

Scripturi Hive pentru pașii de locuri de muncă EMR

1. Acest pas de job rulează un script Hivepentru a crea un tabel Hive extern. Acest tabel descrie schema tabelară a fișierului de date CSV subiacent. Scriptul pentru aceasta este următorul:

CREAȚI TABELUL EXTERN `amenințat_specii` (șirul„ nume științific`, șirul „nume comun”, șirul „nume științific curent`, șirul„ starea amenințată ”, șirul„ act ”, șirul„ nsw ”, șirul„ nt ”,„ qld ” șir, șir `sa`, șir„ tas`, „șir vic`, șir„ wa`, șir „aci`, șir„ cki`, șir „ci`,„ șir csi ”, șir„ jbt “,„ nfi ” șir, șir 'hmi', șir 'aat', șir 'cma', 'taxonid șprot listat' bigint, 'taxonid șprot curent' bigint, șir 'regat', șir 'clasă', șir „profil”, „data extrasă” șir, șir 'nume nsl', șir 'familie', șir 'gen', șir 'specie', șir 'rang infraspecific', șir 'infraspecie', șir 'autor autor', șir 'autor infraspecie') FORMAT DE RÂND CÂmpURI DELIMITATE TERMINAT DE ',' STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION 's3: // arvind1-bucket / script /'

2. Această etapă de lucru execută o interogare pentru a calcula primele cinci specii pe cale de dispariție din statul New South Wales (NSW). Numele fișierului de interogare Hive este endangeredSpeciesNSW.q și este prezentat mai jos:

SELECȚIE specii, COUNT (nsw) AS number_of_endangered_species FROM Amened_species WHERE (nsw = 'Da' SAU nsw = 'Periclitat') ȘI 'status amenințat' = 'Periclitat' GRUPUL PE specii CARE AU COUNT (nsw)> 1 COMANDĂ DE numărul_of_endangered_species DESC LIMIT 5

3.Acest pas de lucru execută o interogare pentru a calcula numărul total de specii de plante pe cale de dispariție pentru fiecare familie de plante din Australia. Numele fișierului de interogare Hive esteendangeredPlantSpecies.qși este prezentat mai jos

convertiți șirul în matricea php
Alegeți familia, COUNT (specie) AS number_of_endangered_species FROM Amenințat_specie2 WHERE regatul = 'Plantae' ȘI 'statusul amenințat' = 'Periclitat' GRUPUL PE FAMILIE

4. Acest pas listează numele științifice ale speciilor de animale dispărute în statul australian Queensland. Fișierul script se numește extinctAnimalsQLD.q și este prezentat mai jos:

SELECTAȚI „nume comun”, „nume științific” DIN specii amenințate WHERE regat = „Animalia” ȘI (qld = „Da” SAU qld = „Extinct”) ȘI „status amenințat” = „Extinct”

Agregare jurnal

Aici am încărcat și un fișier JSON numit logAggregation.json în dosarul de scripturi al cupei S3. Folosim acest fișier pentru agregarea fișierelor jurnal YARN. Agregarea jurnalului este configurată în fișierul de configurare yarn-site.xml la pornirea clusterului. Conținutul fișierului logAggregation.json este după cum urmează:

[{„Clasificare”: „yarn-site”, „Properties”: {„yarn.log-aggregation-enable”: „true”, „yarn.log-aggregation.retain-seconds”: „-1”, „yarn .nodemanager.remote-app-log-dir ”:„ s3: // arvind1-bucket / logs ”}}]

După ce creați bucket-ul S3 și copiați fișierele de date și scripturi în folderele respective, este timpul să configurați un cluster EMR. Următoarele instantanee descriu procesul pe măsură ce creăm clusterul cu setări implicite.

Configurare cluster EMR

În prima imagine, pentru a configura clusterul în consola AWS, am păstrat toate aplicațiile recomandate de EMR, inclusiv Hive. Nu este nevoie să folosim AWS Glue pentru stocarea metadatelor Hive și nici nu adăugăm niciun pas de lucru în acest moment. Cu toate acestea, trebuie să adăugăm o setare software pentru Hive. Aici trebuie să observați cu atenție modul în care specificăm calea către fișierul JSON de agregare a jurnalului în acest câmp.

În pasul următor, am păstrat toate setările implicite. De dragul testului nostru, clusterul va avea un nod master și două noduri core. Fiecare nod aici este o instanță m3.xlarge și are un volum rădăcină de 10 GB. Denumim clusterul arvind1-cluster la pasul următor și specificăm locația s3 personalizată pentru fișierele sale jurnal.

În cele din urmă, am specificat o pereche de chei EC2 în scopul accesării nodului master al clusterului. Nu există nicio modificare în rolurile IAM implicite pentru EMR, profilul instanței EC2 și opțiunile de scalare automată. De asemenea, nodurile master și core utilizează în mod implicit grupurile de securitate disponibile. În mod normal, aceasta este o setare implicită pentru un cluster EMR. Odată ce totul este gata, clusterul se află în starea „în așteptare”, așa cum se arată mai jos:

Trimiteți pașii de locuri de muncă Hive

După aceasta, trebuie să permitem accesul SSH.

  1. Deschideți consola Amazon EMR la https://console.aws.amazon.com/elasticmapreduce/ .
  2. Alege Clustere .
  3. Alege Nume a clusterului.
  4. Sub Securitate și acces alege Grupuri de securitate pentru Master legătură.
  5. Alege ElasticMapReduce-master din listă.
  6. Alege Intrare , Editați | × .
  7. Găsiți regula cu următoarele setări și alegeți X pictogramă pentru ao șterge:
    • Tip SSH
    • Port 22
    • Sursă Personalizat 0.0.0.0/0
  8. Derulați până în partea de jos a listei de reguli și alegeți Adăugați o regulă .
  9. Pentru Tip , Selectați SSH .Acest lucru intră automat TCP pentru Protocol și 22 pentru Port Range .
  10. Pentru sursă, selectați IP-ul meu .Acesta adaugă automat adresa IP a computerului client ca adresă sursă. Alternativ, puteți adăuga o gamă de Personalizat adrese IP de încredere ale clientului și alegeți să adaugă regula pentru a crea reguli suplimentare pentru alți clienți. În multe medii de rețea, alocați adrese IP în mod dinamic, deci poate fi necesar să editați periodic regulile grupului de securitate pentru a actualiza adresa IP a clienților de încredere.
  11. Alege salva .
  12. Opțional, alegeți ElasticMapReduce-slave din listă și repetați pașii de mai sus pentru a permite clientului SSH accesul la nodurile de bază și de activitate de la clienții de încredere.

Deoarece clusterul EMR este în funcțiune, am adăugat patru pași de job. Acestea sunt etapele pe care EMR le-ar parcurge unul după altul. Următoarea imagine prezintă pașii din consola AWS EMR:

După ce adăugăm cei patru pași, putem verifica starea acestor pași ca finalizați. Chiar dacă există o anumită problemă cu executarea acestor pași, atunci în astfel de cazuri poate fi rezolvată folosind fișierele jurnal ale acestor pași.

Deci, asta este din partea mea în acest articol despre Big Data în AWS. Sper că ați înțeles tot ce am explicat aici.

Dacă ați găsit relevante aceste Big Data în AWS, puteți consulta cursul în direct al Edureka și condus de instructor , co-creat de practicieni din industrie.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii a acestui Cum se implementează aplicația web Java în AWS și vă vom contacta înapoi.