Big Data i AWS - Smart løsning til Big Data



Denne artikel hjælper dig med at forstå, hvordan AWS håndterer Big Data smart. Det viser også, hvordan AWS nemt kan løse Big Data-udfordringer.

Ideen med Big Data er simpelthen ikke ny, den er overalt. Effekten af ​​Big Data er overalt, fra forretning til videnskab, fra regeringen til kunsten og så videre. Der er ingen bedre ledsager end til at behandle og analysere Big Data. I denne artikel skal jeg vise, hvordan AWS tackler udfordringerne ved Big Data, og de pointer, som jeg skal dække, er som følger:

Hvad er Big Data?

big data egenskaber





Du kan betragte Big data som informationsaktiver med stor volumen, høj hastighed og / eller stor variation, der kræver omkostningseffektive, innovative former for informationsbehandling, der muliggør forbedret indsigt, beslutningstagning og procesautomatisering.

Big Data består af 5 vigtige V'er, der definerer egenskaberne ved Big Data. Lad os diskutere disse, inden vi flytter til AWS.



Hvad er AWS?

består af mange forskellige cloud computing-produkter og -tjenester. Den meget rentable Amazon-afdeling leverer servere, opbevaring, netværk, fjerncomputering, e-mail, mobiludvikling sammen med sikkerhed. Desuden. AWS består af to hovedprodukter: EC2, Amazons virtuelle maskintjeneste og S3, et lagringssystem fra Amazon. Det er så stort og til stede i computerverdenen, at det nu er mindst 10 gange størrelsen på dets nærmeste konkurrent og er vært for populære websteder som Netflix og Instagram.

.

AWS er ​​opdelt i 12 globale regioner verden over, som hver har flere tilgængelighedszoner, hvor dets servere er placeret.Disse servicerede regioner er opdelt for at give brugerne mulighed for at sætte geografiske grænser for deres tjenester, men også for at give sikkerhed ved at diversificere de fysiske placeringer, hvor data opbevares.



Hvorfor store data i AWS?

Forskere, udviklere og andre teknologientusiaster fra mange forskellige domæner udnytter AWS til at udføre big data-analyse og imødekomme de kritiske udfordringer ved den stigende Vs for digital information. AWS tilbyder dig en portefølje af cloud computing-tjenester, der hjælper med at administrere big data ved betydeligt at reducere omkostningerne, skalere for at imødekomme efterspørgslen og øge innovationshastigheden.

__init__ i python

Amazon Web Services leverer en fuldt integreret portefølje af cloud computing-tjenester. Desuden hjælper det dig med at opbygge, sikre og implementere dine big data-applikationer. Også med AWS har du ikke brug for hardware til indkøb og infrastruktur til vedligeholdelse og skalering. På grund af dette kan du fokusere dine ressourcer på at afdække ny indsigt.Da nye funktioner tilføjes konstant, vil du altid være i stand til at udnytte de nyeste teknologier uden at skulle kræve langsigtede investeringsforpligtelser.

Hvordan AWS kan løse Big Data-udfordringer?

AWS-løsninger til Big Data

AWS har adskillige løsninger til alle udviklings- og implementeringsformål. Også inden for datavidenskab og Big Data er AWS kommet med den seneste udvikling inden for forskellige aspekter af Big Data-håndtering. Før vi hopper til værktøjer, lad os forstå forskellige aspekter af Big Data, som AWS kan levere løsninger til.

  1. Indtagelse af data
    Indsamling af rådata - transaktioner, logfiler, mobile enheder og mere - er den første udfordring, som mange organisationer står over for, når de beskæftiger sig med big data. En god big data-platform gør dette trin lettere, så udviklere kan indtage en bred vifte af data - fra struktureret til ustruktureret - til enhver hastighed - fra realtid til batch.

  2. Lagring af data
    Enhver big data-platform har brug for et sikkert, skalerbart og holdbart lager til at gemme data før eller endda efter behandlingsopgaver. Afhængigt af dine specifikke krav kan du muligvis også have brug for midlertidige butikker til data-in-transit.

  3. Databehandling
    Dette er trin, hvor datatransformation sker fra dets rå tilstand til et forbrugsformat - normalt ved hjælp af sortering, sammenlægning, sammenføjning og endda udførelse af mere avancerede funktioner og algoritmer. De resulterende datasæt underlagres til yderligere behandling eller stilles til rådighed til forbrug via værktøjer til forretningsinformation og datavisualisering.

  4. Visualisering

    Big data handler om at få høj værdi, handlingsbar indsigt fra dine dataaktiver. Ideelt set er data tilgængelige for interessenter gennem selvbetjeningsinformation og agile datavisualiseringsværktøjer, der giver mulighed for hurtig og nem udforskning af datasæt.

AWS-værktøjer til store data

I de foregående sektioner kiggede vi på felterne i Big Data, hvor AWS kan levere løsninger. Derudover har AWS flere værktøjer og tjenester i sit arsenal for at give kunder mulighed for Big Data.

Lad os se på de forskellige løsninger, der leveres af AWS til håndtering af forskellige faser involveret i håndtering af Big Data

Indtagelse

  1. Kinesis

    Amazon Kinesis Firehose er en fuldt administreret tjeneste til levering af streamingdata i realtid direkte til Amazon S3. Kinesis Firehose skaleres automatisk for at matche volumen og gennemstrømning af streamingdata og kræver ingen løbende administration. Du kan konfigurere Kinesis Firehose til at omdanne streamingdata, før du gemmer det i Amazon S3.

  2. Snebold
    Du kan bruge AWS Snowball til sikker og effektiv migrering af bulkdata fra lokale lagerplatforme og Hadoop-klynger til S3-skovle. Når du har oprettet et job i AWS Management Console, får du automatisk et Snowball-apparat. Når en Snowball ankommer, skal du slutte den til dit lokale netværk, installere Snowball-klienten på din lokale datakilde og derefter bruge Snowball-klienten til at vælge og overføre filmapperne til Snowball-enheden.

Opbevaring

  1. Amazon S3

Amazon S3 er en sikker, meget skalerbar, holdbar objektlagring med millisekunders latenstid til dataadgang. S3 kan gemme alle typer data fra hvor som helst - websteder og mobilapps, virksomhedsapplikationer og data fra IoT-sensorer eller enheder. Det kan også gemme og hente enhver datamængde med uovertruffen tilgængelighed og bygget fra bunden til at levere 99,999999999% (11 ni) holdbarhed.

2. AWS-lim

Lim er en fuldt administreret tjeneste, der leverer et datakatalog for at gøre data i datasøen synlige. Derudover har den evnen til at udpakke, transformere og indlæse (ETL) for at forberede data til analyse. Det indbyggede datakatalog er også som en vedvarende metadatalager for alle dataaktiver, hvilket gør alle data søgbare og kan spørges i en enkelt visning.

Forarbejdning

  1. EMR
    Til behandling af big data ved hjælp af Spark og Hadoop, Amazon EMR leverer en administreret service, der gør det nemt, hurtigt og omkostningseffektivt at behandle store mængder data. Derudover understøtter EMR 19 forskellige open source-projekter inklusive Hadoop , Gnist og Den leveres også med styrede EMR-notesbøger til datateknik, udvikling af datalogi og samarbejde.

  2. Rødskift
    Til datalagring, Amazon Redshift giver mulighed for at køre komplekse, analytiske forespørgsler mod petabyte med strukturerede data. Det inkluderer også Redshift-spektrum der kører SQL-forespørgsler direkte mod Exabytes af strukturerede eller ustrukturerede data i S3 uden behov for unødvendig dataflytning.

Visualiseringer

  1. Amazon QuickSight

    Til dashboards og visualiseringer giver Amazon Quicksight dig hurtig, skybaseret forretningsanalysetjeneste. Det gør det nemt at oprette fantastiske visualiseringer og rige dashboards. Derudover kan du få adgang til dem fra enhver browser eller mobilenhed.

Demo - Analyse af data om truede arter af planter og dyr i Australien.

I denne demo bruger vi stikprøvedata om truede plante- og dyrearter fra Australiens stater og territorier. Her opretter vi en EMR-klynge og konfigurerer den til at køre Apache Hive-job i flere trin. EMR-klyngen har Apache Hive installeret i den. Denne klynge bruger EMRFS som filsystemet, så dets datainput- og outputplaceringer kortlægges til en S3-bucket. Klyngen bruger også den samme S3-bucket til lagring af logfiler.

Vi opretter nu et antal EMR-trin i klyngen for at behandle et prøvesæt af data. Her kører hvert af disse trin et Hive-script, og den endelige output gemmes i S3-skovlen. Disse trin genererer MapReduce-logfiler, og det er fordi Hive-kommandoer oversættes til MapReduce-job på kørselstid. Logfilerne for hvert trin aggregeres fra de containere, det gyder.

Eksempeldata

Eksempeldatasættet til denne brugssag er offentligt tilgængeligt fra Den australske regerings open data-websted . Dette datasæt handler om truede dyre- og plantearter fra forskellige stater og territorier i Australien. En beskrivelse af felterne i dette datasæt og CSV-filen kan ses og downloades her .

Behandlingstrin

Det første EMR-jobtrin her involverer oprettelse af en Hive-tabel som et skema for den underliggende kildefil i S3. I det andet jobtrin kører vi nu en vellykket forespørgsel mod dataene. På samme måde kører vi derefter en tredje og fjerde forespørgsel.

Vi gentager disse fire trin et par gange på en time og simulerer successive kørsler af et flertrins batchjob. I et virkeligt scenarie kan tidsforskellen mellem hver batchkørsel normalt være meget højere. Det lille tidsrum mellem successive kørsler er beregnet til at fremskynde vores test.

S3 Spand og mapper

Før vi oprettede vores EMR-klynge, måtte vi her oprette en S3-spand for at være vært for dens filer. I vores eksempel navngiver vi denne spand “arvind1-bucket” Mapperne under denne spand vises nedenfor i AWS-konsollen til S3:

  • Inputmappen indeholder eksempeldataene

  • Scripts-mappen indeholder Hive-scriptfilerne til EMR-jobtrin

  • Outputmappen vil naturligvis indeholde Hive-programmets output

  • EMR-klyngen bruger mappen logfiler til at gemme sine logfiler.

Hive-scripts til EMR-jobtrin

1. Dette jobtrin kører et Hive-scriptfor at oprette en ekstern Hive-tabel. Denne tabel beskriver skemaet for den underliggende CSV-datafil. Scriptet til dette er som følger:

Opret EKSTERN TABEL `truet_species` (` videnskabeligt navn` streng, `almindeligt navn` streng,` nuværende videnskabeligt navn` streng, `truet status` streng,` handling` streng, `nsw` streng,` nt` streng, `qld` streng, `sa` streng,` tas` streng, `vic` streng,` wa` streng, `aci` streng,` cki` streng, `ci` streng,` csi` streng, `jbt` streng,` nfi` streng, `hmi` streng,` aat` streng, `cma` streng,` listet brisling taxonid` bigint, `nuværende brisling taxonid` bigint,` kingdom` streng, `class` streng,` profil` streng, `ekstraheret dato` streng, `nsl navn` streng,` familie` streng, `slægt` streng,` art` streng, `infraspecifik rang` streng,` infraspecies` streng, `artsforfatter` streng,` infraspecies forfatter` streng) RÅFORMAT AFGRÆNSET FELTER AFSLUTTET AF ',' STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION 's3: // arvind1-bucket / script'

2. Dette jobtrin kører en forespørgsel for at beregne de fem største truede arter i staten New South Wales (NSW). Navnet på Hive-forespørgslen er endangeredSpeciesNSW.q og det er vist nedenfor:

VÆLG art, TÆLLING (nsw) AS-nummer_af_struede_art FRA truede_arter WHERE (nsw = 'Ja' ELLER nsw = 'truede') OG 'truede status' = 'truede' GRUPPE FOR arter, der har TÆLLER (nsw)> 1 BESTILLING AF antal_of_endangered_species DESC LIMIT 5

3.Dette jobtrin kører en forespørgsel for at beregne det samlede antal truede plantearter for hver plantefamilie i Australien. Navnet på Hive-forespørgslen erendangeredPlantSpecies.qog er vist nedenfor

VÆLG familie, ANTAL (art) AS-nummer_af_struede_arter FRA truede_species2 WHERE kingdom = 'Plantae' OG 'truet status' = 'Truet' GROUP FOR familie

4. Dette trin viser de videnskabelige navne på uddøde dyrearter i Australiens Queensland-stat. Scriptfilen kaldes extinctAnimalsQLD.q og er vist nedenfor:

VÆLG 'almindeligt navn', 'videnskabeligt navn' FRA truede_arter WHERE kingdom = 'Animalia' OG (qld = 'Ja' ELLER qld = 'Uddød') OG 'truet status' = 'Uddødt'

Log Aggregation

Her har vi også uploadet en JSON-fil kaldet logAggregation.json i scripts-mappen på S3-skovlen. Vi bruger denne fil til sammenlægning af YARN-logfiler. Logaggregation konfigureres i konfigurationsfilen garn-site.xml, når klyngen starter. Indholdet af logAggregation.json-filen er som følger:

omfangsoperatør c ++

[{'Klassifikation': 'garn-site', 'Egenskaber': {'garn.log-aggregering-aktiv': 'sand', 'garn.log-aggregering.retain-sekunder': '-1', 'garn .nodemanager.remote-app-log-dir ”:“ s3: // arvind1-bucket / logs ”}}]

Når du har oprettet S3-bucket og kopieret data- og scriptfilerne til deres respektive mapper, er det nu tid til at oprette en EMR-klynge. Følgende snapshots beskriver processen, når vi opretter klyngen med for det meste standardindstillinger.

EMR Cluster Setup

For at konfigurere klyngen i AWS-konsollen har vi i det første billede gemt alle de applikationer, der anbefales af EMR, inklusive Hive. Vi har ikke brug for AWS Lim til lagring af Hive-metadata, og vi tilføjer heller ikke noget jobstrin på dette tidspunkt. Vi skal dog tilføje en softwareindstilling til Hive. Her skal du omhyggeligt observere, hvordan vi angiver stien til log-aggregerings-JSON-filen i dette felt.

I det næste trin har vi bevaret alle standardindstillingerne. Af hensyn til vores test vil klyngen have en masternode og to kernenoder. Hver knude her er en m3.xlarge forekomst og har 10 GB rodvolumen. Vi navngiver klyngen arvind1-klynge i næste trin og specificerer den tilpassede s3-placering til dens logfiler.

Endelig specificerede vi et EC2-nøglepar med det formål at få adgang til klyngens masternode. Der er ingen ændringer i standard IAM-roller for EMR, EC2-instansprofil og indstillinger for automatisk skalering. Master- og kernenoder bruger også som standard tilgængelige sikkerhedsgrupper. Normalt er dette en standardopsætning til en EMR-klynge. Når alt er klar, er klyngen i en 'ventende' status som vist nedenfor:

Indsend Hive Job trin

Efter dette er vi nødt til at tillade SSH-adgang.

  1. Åbn Amazon EMR-konsollen kl https://console.aws.amazon.com/elasticmapreduce/ .
  2. Vælge Klynger .
  3. Vælg Navn af klyngen.
  4. Under Sikkerhed og adgang Vælg Sikkerhedsgrupper for Master link.
  5. Vælge ElasticMapReduce-master fra listen.
  6. Vælge Indgående , Redigere .
  7. Find reglen med følgende indstillinger, og vælg x ikon for at slette det:
    • Type SSH
    • Havn 22
    • Kilde Brugerdefineret 0.0.0.0/0
  8. Rul ned til bunden af ​​listen over regler, og vælg Tilføj regel .
  9. Til Type , Vælg SSH Dette kommer automatisk ind TCP til Protokol og 22 til Port rækkevidde .
  10. Vælg for kilde Min IP .Dette tilføjer automatisk IP-adressen på din klientcomputer som kildeadresse. Alternativt kan du tilføje en række Brugerdefinerede betroede klienters IP-adresser og vælg at tilføj reglen for at oprette yderligere regler for andre kunder. I mange netværksmiljøer tildeler du IP-adresser dynamisk, så du bliver muligvis regelmæssigt nødt til at redigere sikkerhedsgrupperegler for at opdatere IP-adressen til betroede klienter.
  11. Vælge Gemme .
  12. Valgfrit, vælg ElasticMapReduce-slave fra listen, og gentag ovenstående trin for at give SSH-klienten adgang til kerne- og opgaveknudepunkter fra betroede klienter.

Da EMR-klyngen er i gang, har vi tilføjet fire jobtrin. Dette er de trin, EMR kører efter hinanden. Følgende billede viser trinene fra AWS EMR-konsol:

Når vi har tilføjet de fire trin, kan vi kontrollere status for disse trin som afsluttet. Selvom der er noget problem med udførelsen af ​​disse trin, kan det i sådanne tilfælde løses ved hjælp af logfilerne i disse trin.

Så dette er det fra min side i denne artikel om Big Data i AWS. Jeg håber, du har forstået alt, hvad jeg har forklaret her.

Hvis du fandt disse Big Data i AWS relevante, kan du tjekke Edurekas live og instruktørledte kursus den , co-oprettet af brancheudøvere.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne Sådan distribueres Java-webapplikation i AWS, og vi vender tilbage til dig.