Hadoop Big Data & Analytiikka SAS & Cloudera integraatio Live Demot: SAS Data Loader for Hadoop SAS VA SAS IMSTAT SAS HPA
Esittely Teemu Ojalehto Sr. Consultant BI, Big Data & Analytics teemu.ojalehto@perigeum.fi TE: SAS VA? Hadoop? Big Data? IMSTAT + HPA?
Agenda Cloudera = Hadoop SAS Clouderassa Demoja: SAS Data Loader for Hadoop SAS VA SAS IMSTAT SAS HPA Yhteenveto
Miksi Cloudera (Hadoop)? Hajautettu data & laskenta Skaalautuva lineaarisesti tehoa lisää (vrt. kustannus) Vikasietoinen automaattinen toipuminen Open source
Hadoopin perustelua: data pullonkaulana Perinteisesti, data tallennetaan keskitettyyn paikkaan Data kopioidaan prosessorille laskentaan Toimii, kun dataa ei ole paljon
Hadoopin perustelua: data pullonkaulana Ei ratkea näin. Tarvitaan toinen lähestymistapa.
Hadoopin perustelua: data pullonkaulana Hadoop: Data hajautetaan tallennusvaiheessa Hadoop: Laskenta siellä missä data on
Kaupallinen Hadoop EDW Testatuin & levinnein. Kattavin. Isoja ympäristöjä maailmalla. 100% Open Source
Slave Master Slave Slave Slave
Cloudera Manager Hadoop Admin yhdessä paikassa Konfigurointi Monitorointi Käyttöliittymä moneen paikkaan Päivitys no downtime
SAS analytiikkatarjoama Clouderaan (osajoukko) SAS Data Loader for Hadoop Web-käyttöliittymä business käyttäjille SAS Visual Analytics Datan exploraatio Raportointiportaali In-Memory Analytics IMSTAT SAS Visual Statistic SAS VA:n viereen valmiita analytiikka metodeja SAS High-Performance Analytics (SAS Embedded Process )
SAS Data Loader for Hadoop
Demoa: SAS Data Loader for Hadoop Use case: business analyytikko haluaa dataa Clouderasta Self-service portaali Perus datan muokkaus ja exploraatioita Profile Data Join / Delete / Filtter Transform data Cleanse Data: Match koodit, yms. Datan lataaminen Clouderasta esim. SAS VA:han Big Dataan pääsee kiinni kaikki. Turvallisesti ja helposti. Myös muita datanlähteitä voidaan laittaa mukaan
SAS Data Loader for Hadoop Hyödyt: Kaikki pääsevät Big Dataan kiinni helposti Vrt. Hadoopin aloituskynnys IT-admin ei ole pullonkaula Prosessit: Datan lataus/muokkaus/korjaus... Data Quality
SAS analytiikkatarjoama Clouderaan (osajoukko) SAS Data Loader for Hadoop Web-käyttöliittymä business käyttäjille SAS Visual Analytics Datan exploraatio Raportointiportaali In-Memory Analytics IMSTAT SAS Visual Statistic SAS VA:n viereen valmiita analytiikkametodeja SAS High-Performance Analytics (SAS Embedded Process )
SAS Visual Analytics distributed vs. SAS Visual Analytics non-distributed
vs.
SAS VA distributed arkkitehtuuri SAS Visual Analytics Server kerros Perus SAS serverit: metadata, workspace, etc. Lisäksi: SAS LASR Analytics Server (Distributed LASR) SAS High-Performance Computing Management Console SAS High-Performance Deployment for Hadoop SAS High-Performance Node Installation SAS LASR Analytic Server ajetaan monella koneella (n kpl) Datanoodeilla taulut ladataan muistiin. Kapasiteetin lisäys. SAS Visual Analytics middle tier VA Analytics Hub eli www-käyttöliittymä Co-located storage Cloudera Hadoop. Myös muita.
SAS VA distributed arkkitehtuuri SAS LASR Analytics Server (Distributed LASR) Useita servereitä, näyttää yhdeltä. (MPI) Laskentaklusteri jossa useita koneita (HPA) Root node. Jakaa datan & laskennan ja koordinoi prosessia (vrt. Hadoop master node) Worker node Data muistissa. Laskenta täällä. (vrt Hadoop slave node) HPA ja co-located Hadoop. Samoilla koneilla HPA & Hadoop, samoissa rooleissa.
SAS VA distributed arkkitehtuuri Co-located Hadoop Demoklusteri. Levyt + CPU + verkko
Demoa: SAS VA dist ja HPA Use case: raakadata SAS VA:n muistiin HPA:ta käyttäen CVS-filet HDFS:ssä Luetaan ensiksi sashdat muotoon hpds2 käyttäen Tutkitaan latausta SAS VA resource monitor? Ladataan sashdat suoraan muistiin. Mitä opitaan? Käytetään tauluja SAS VA:ssa.
PROC IMSTAT Muistissa olevien taulujen hyödyntäminen ja manipulointi IMSTAT Muistissa olevien taulujen hallinnointi ja muokkaus Muistissa oleville tauluille analytiikkaa RAM vs. levy IO. ~3000 nopeampi Saumattomasti SAS VA:n kanssa.
PROC IMSTAT Muistissa olevien taulujen hyödyntäminen ja manipulointi Analytiikkaa voi tehdä hyvin monipuolisesti Statements: AGGREGATE, ARM, ASSESS, BOXPLOT, CLUSTER, CORR, CROSSTAB,DECISIONTREE, DISTINCT, FORECAST, FREQUENCY, GENMODEL, GLM, GROUPBY, HISTOGRAM, HYPERGROUP, KDE, LOGISTIC, MDSUMMARY, NEURAL, PERCENTILE, RANDOMWOODS, REGCORR, SUMMARY, TEXTPARSE, TOPK, TRANSFORM SAS In-Memory Statistics Merkittävä hyöty VA distributed ympäristöstä Laskentaklusteri!
PROC IMSTAT (demo) Muistissa olevien taulujen manipulointia (+LASR server admin) Taulun partitiointi Temp-taulut, luonti+talletus Taulun rebalansointi Taulun rivien deletointi ja kirjoitus HDFS (demo) Esimerkki käyttötapaus Iso taulu koko ajan muistissa, 24h data Kerran tunnissa lisätään kuluneen tunnin data Poistetaan viimeisin tunti ja arkistoidaan se HDFS:ään
SAS analytiikkatarjoama Clouderaan (osajoukko) SAS Data Loader for Hadoop Web-käyttöliittymä business käyttäjille SAS Visual Analytics Datan exploraatio Raportointiportaali In-Memory Analytics IMSTAT SAS Visual Statistic SAS VA:n viereen valmiita analytiikka metodeja SAS High-Performance Analytics (SAS Embedded Process )
SAS High-Performance Analytics SAS High- Performance Statistics SAS High- Performance Econometrics SAS High- Performance Optimization SAS High- Performance Data Mining 1 SAS High- Performance Text Mining SAS High- Performance Forecasting HPLOGISTIC HPREG HPLMIXED HPNLMOD HPSPLIT HPGENSELECT HPCOUNTREG HPSEVERITY HPQLIM HPLSO Select features in OPTMILP OPTLP OPTMODEL HPREDUCE HPNEURAL HPFOREST HP4SCORE HPDECIDE HPTMINE HPTMSCORE HPFORECAST Common Set (HPDS2, HPDMDB, HPSAMPLE, HPSUMMARY, HPIMPUTE, HPBIN, HPCORR) Common set of HP procedures will be included in each of the individual SAS HP Analytics products
SAS High-Performance Analytics
SASHDAT Engine (Demo) SASHDAT on SASsin oma HDFS tiedostomuoto Vain kirjoitus sashdat. Tiedoston metadataa voi lukea/kirjoittaa. Kirjoitus nopeata. Rinnakkain datanoodeilla. Tarkoitettu HPA analytiikkaa varten Data laitetaan Datanoodeille (luku nopeata) Laskenta laitetaan Datanoodeille Proc: LASR, HPDS2, HPREG, HPLOGISTIC, etc. VA muistiin lataaminen LASR proc (demo) HPDS2 sashdat käsittelyä (demo) SASHDAT samassa muodossa muistissa ja levyllä
High-Performance Statistics Monet HPA proceduurit osaavat hyödyntää HDFS:ssa olevaa sashdat HPA voi hyödyntää myös muistissa olevia tauluja (SASIOLA) Datan havainnointi ja muokkaus HPCORR - Pearson correlation HPDMBD - summary of input datasets HPDS2 - DS2, parallel data step HPIMPUTE - numeric variable imputation HPBIN generate new variables HPSAMPLE - random sampling HPSUMMARY - summary statistics
High-Performance Statistics 1. Datan kuvailu & tilastolliset tunnusluvut HPCORR korrelaatiomatriisi HPSUMMARY perustunnusluvut HPDMBD selittäjien valinta by Miner Vrt. SAS VA 2. Datan muokkaus HPDS2 Datan muokkaus HPSAMPLE datan jakaminen HPMIPUTE puuttuvien arvojen korvaus HPBIN muuttujien jakaminen uusiin luokkiin HPREDUCE: dimension pienennys
High-Performance Statistics 3. Binäärikohdemuuttujien ennustaminen HPLOGICTIC Logistinen regressio HPFOREST Random forest HP4SCORE Random forest scoraus HPNEURAL - Neuroverkkoja 4. Intervallikohdemuuttujien ennustaminen HPREG - ~GLMSELECT HPGENREG Yleistetty lin. regressio (HPLMIXED,HPNLMOD, HPSPLIT)
IMSTAT & HPA
In-Memory
SAS & Hadoop integraatio Näkökulma on pitkälti SAS VA distributed SAS High-Performance Analytics (HPA) SAS High-Performance Deployment of Hadoop Muillakin SAS tuotteilla integraatio onnistuu DIS (samoja libnameja etc) SQL-pass-Through Etc.
Hadoop Engine (Demo) Voidaan lukea suoraan HDFS. Eri tiedostoformaatteja. Parquet hyvin pakattu, kolumnaarinen tiedostoformaatti. Paljon käytetty. Hiven metadataa hyödynnetään. HDFS datalla voidaan luoda oma metadata. PROC HDMD. Tunnetaan HDFS:än tiedoston muoto. Esimerkiksi tiedosto binäärimuodossa Kerrotaan muoto SASssille HDMD:n avulla
Proc Hadoop (Demo) Suoraan HDFS komentoja (demo) MapReduce komentoja Pig komentoja (Pig = ohjelmointikieli joka käytää MapReducea)
SAS Acces to Impala (demo) Cloudera Impala. Muistinvarainen tietokanta. Erittäin nopea. Käytetään paljon Clouderassa SAS/Access to Impala ominaisuudet SAS funktiot DB:hen (osajoukko, kts. Doc) SQL-pass-Through Bulk-Load Taulujen yhdistely (joins) Impalaan Datatyypit (SAS -> Impala ja Impala -> SAS, esim. timestamp)
Yhteenveto Joustavasti sopiva suorituskyky. Skaalautuvuus. SAS integroituu tehokkaasti Clouderaan Hadoop ympäristö on muutakin kuin pelkkä datalähde HPA: skaalautuvaa analytiikkaa IMSTAT: Hadoopin muistissa datan käsittelyä ja analytiikkaa Prosessointi datan vieressä Hadoopin datanodella Loppukäyttäjälle Hadoop on yksi lähde muiden joukossa SAS & Cloudera kehitys nopeata Uusi ominaisuuksia jatkuvasti
Lähteet ja lisätiedot (SAS)
Kysymyksiä?
Hadoopin perusteita Hadoop koostuu kahdesta avain komponentista HDFS (The Hadoop Distributed File System) Luotettava, hajautettu tiedostojärjestelmä Koko Hadoopin peruskivi MapReduce Metodi jolla dataa prosessoidaan hajautetusti ja rinnakkaisesti
FILE Hadoopin perusteita: HDFS HDFS pilkkoo talletettavan tiedoston blockeihin ja jakelee sen klusteriin Datan automaattinen replikointi (x3). Vikasietoisuus Datan paikallisuus tuo suorituskyvyn. Master host pitää kirjaa missä tiedosto blockit ovat HDFS metadata Master hostilla on NameNode palvelu HDFS
Hadoopin perusteita: HDFS Master Host NameNode: Tiedostojen sijainnit, luvat, blockien sijainnit yms. Kirjanpito RAMissa. Metadata luetaan levyltä käynnistymisen yhteydessä Datablockien sijainti varmistetaan DataNodeilta Slave Host Tiedostot on tallennettu blockkeina tänne DataNode: Kontroloi pääsyä data blokkeihin Kommunikoi NameNoden kanssa
Hadoopin perusteita: HDFS Eri tiedostoformaatit ovat keskeinen asia Suorityskyky & tiedostojen koko Työkalut <--> minkälainen tiedosto Muutamia: Text/CSV, Avro, RC, ORC, Parquet SASsilla oma HDFS tiedostoformaatti sashdat
Hadoopin perusteita: MapReduce MapReduce on ohjelmointi framework Ei alusta tai ohjelmointikieli riippuvainen Tehtävät hajautetaan ja jaetaan useammalle serverille Jos mahdollista niin prosessointi viedään datan lähettyville
Hadoopin perusteita: Resurssien hallinta Yarn jakaa Hadoop klusterin resurssit