7 alata za pripitomljavanje velikih podataka pomoću Hadoopa

Poplave koje su opustošile industriju tvrdog diska na Tajlandu stare su sada pola godine, a cijene po terabajtu konačno ponovno padaju. To znači da će se podaci početi gomilati, a ljudi u uredu pitat će se što se s tim može učiniti. Možda postoje neke uvide u tim datotekama dnevnika? Možda će malo statističke analize pronaći neke grumenke zlata zakopane u svoj toj buci? Možda možemo pronaći dovoljno promjena zakopanih u jastučiće ovih datoteka kako bismo svi mogli pokupiti?

Industrija sada ima modnu riječ, "veliki podaci", kako ćemo nešto učiniti s ogromnom količinom informacija koje se nakupljaju. "Veliki podaci" zamjenjuju "poslovnu inteligenciju", koja je podrazumijevala "izvještavanje", što je dalo ljepši sjaj "proračunskim tablicama", koje su izbacile staromodne "ispise". Menadžeri koji su davno proučavali ispise, unajmljuju matematičare koji tvrde da su stručnjaci za velike podatke kako bi im pomogli riješiti isti stari problem: Što se prodaje i zašto?

[Također na: Enterprise Hadoop: Olakšana obrada velikih podataka | Istražite trenutne trendove i rješenja u BI-u uz interaktivni Business Intelligence iGuide. | Otkrijte što je novo u poslovnim aplikacijama pomoću biltena Technology: Applications. ]

Nije pošteno sugerirati da su ove modne riječi jednostavna zamjena jedna za drugu. Veliki su podaci kompliciraniji svijet jer je razmjer puno veći. Informacije se obično šire na više poslužitelja i posao prikupljanja podataka mora biti koordiniran među njima. U prošlosti je posao uglavnom bio delegiran softveru baze podataka, koji će koristiti svoj čarobni mehanizam JOIN za sastavljanje tablica, a zatim zbrajati stupce prije predaje pravokutnika podataka softveru za izvještavanje koji će ga paginirati. Ovo je često bilo teže nego što zvuči. Programeri baze podataka mogu vam ispričati priče o složenim naredbama JOIN koje bi satima zaključavale njihovu bazu podataka dok je pokušavao izraditi izvještaj za šefa koji je upravo tako želio njegove stupce.

Igra je sada puno drugačija. Hadoop je popularan alat za organiziranje stalaka i stalaka poslužitelja, a baze podataka NoSQL popularni su alati za pohranu podataka na tim stalcima. Ovi mehanizmi mogu biti mnogo moćniji od starog jednog stroja, ali daleko su od toga da su uglađeni kao stari poslužitelji baze podataka. Iako je SQL možda kompliciran, pisanje upita JOIN za SQL baze podataka često je bilo puno jednostavnije od prikupljanja podataka s desetaka strojeva i njihovog sastavljanja u jedan koherentan odgovor. Hadoop poslovi napisani su na Javi, a to zahtijeva još jednu razinu sofisticiranosti. Alati za rješavanje velikih podataka tek počinju spakirati ovu raspodijeljenu računalnu snagu na način koji je malo lakši za upotrebu.

Mnogi alati za velike podatke također rade s NoSQL spremištima podataka. To su fleksibilnije od tradicionalnih relacijskih baza podataka, ali fleksibilnost nije toliko odmak od prošlosti koliko Hadoop. NoSQL upiti mogu biti jednostavniji jer dizajn baze podataka obeshrabruje složenu tabličnu strukturu koja pokreće složenost rada s SQL-om. Glavna briga je da softver mora predvidjeti mogućnost da neće svaki redak imati neke podatke za svaki stupac.

Najveći izazov može biti suočavanje s očekivanjima izgrađenim u glavnom filmu "Moneyball". Svi su šefovi to vidjeli i shvatili poruku da neke pametne statistike mogu malobudžetni tim pretvoriti u pobjednika Svjetske serije. Nema veze što Oakland Athletics nikada nije osvojio World Series tijekom ere "Moneyball". To je čarolija proze Michaela Lewisa. Svi šefovi razmišljaju: "Možda ako uspijem dobiti dobru statistiku, Hollywood će angažirati Brada Pitta da me glumi u filmskoj verziji."

Niti jedan softver iz ove kolekcije neće se približiti primamljivanju Brada Pitta da zatraži od njegovog agenta kopiju scenarija za filmsku verziju vašeg posla u Hadoopu. To mora doći iz vas ili drugih ljudi koji rade na projektu. Razumijevanje podataka i pronalaženje pravog pitanja često je puno složenije od brzog pokretanja posla Hadoop. To stvarno nešto govori jer su ovi alati samo polovica posla.

Da bih dobio rješenje za obećanje polja, preuzeo sam neke alate za velike podatke, pomiješao podatke, a zatim se zagledao u odgovore za uvid u Einsteinovu ocjenu. Informacije su dolazile iz datoteka dnevnika na web mjesto koje prodaje neke od mojih knjiga (wayner.org), a ja sam tražio neku ideju o tome što se prodaje i zašto. Stoga sam raspakirao softver i postavio pitanja.

 

Alati za velike podatke: Jaspersoft BI Suite

Paket Jaspersoft jedan je od predvodnika otvorenog koda za izradu izvješća iz stupaca baze podataka. Softver je dobro uglađen i već je instaliran u mnogim tvrtkama pretvarajući SQL tablice u PDF-ove koje svatko može pregledati na sastancima.

Tvrtka uskače u vlak za velike podatke, a to znači dodavanje softverskog sloja za povezivanje softvera za generiranje izvješća s mjestima na kojima se pohranjuju veliki podaci. JasperReports Server sada nudi softver za usisavanje podataka s mnogih glavnih platformi za pohranu, uključujući MongoDB, Cassandra, Redis, Riak, CouchDB i Neo4j. Hadoop je također dobro zastupljen, a JasperReports pružaju Hive konektor za pristup unutar HBasea.

Ovaj se napor čini kao da se još uvijek pokreće - mnoge su stranice dokumentacije wiki prazne, a alati nisu u potpunosti integrirani. Na primjer, dizajner vizualnih upita još ne radi s Cassandrinim CQL-om. Ove upite možete otkucati ručno.

Jednom kada dobijete podatke iz ovih izvora, Jaspersoftov će ih poslužitelj svesti na interaktivne tablice i grafikone. Izvješća mogu biti vrlo sofisticirani interaktivni alati koji vam omogućavaju da prolazite u razne kutove. Možete zatražiti sve više detalja ako vam zatrebaju.

Ovo je dobro razvijeni kutak softverskog svijeta, a Jaspersoft se širi olakšavajući upotrebu ovih sofisticiranih izvješća s novijim izvorima podataka. Jaspersoft ne nudi posebno nove načine za gledanje podataka, već samo sofisticiranije načine za pristup podacima pohranjenim na novim lokacijama. Smatrao sam ovo iznenađujuće korisnim. Skupljanje mojih podataka bilo je dovoljno da se osnovno shvati tko ide na web mjesto i kada ide tamo.

 

Alati za velike podatke: Pentaho Business Analytics

Pentaho je još jedna softverska platforma koja je započela kao mehanizam za generiranje izvješća; ona se poput JasperSoft-a grana u velike podatke olakšavajući upijanje informacija iz novih izvora. Pentahov alat možete povezati s mnogim najpopularnijim NoSQL bazama podataka kao što su MongoDB i Cassandra. Jednom kada su baze podataka povezane, možete povući i ispustiti stupce u poglede i izvješća kao da informacije dolaze iz SQL baza podataka.

Smatrao sam da su klasične tablice za sortiranje i prosijavanje izuzetno korisne za razumijevanje toga tko provodi najviše vremena na mojoj web stranici. Jednostavno sortiranje prema IP adresi u datotekama dnevnika otkrilo je što su radili teški korisnici.

Pentaho također nudi softver za crtanje podataka HDFS datoteka i HBase podataka iz klastera Hadoop. Jedan od najzanimljivijih alata je grafičko programsko sučelje poznato kao Kettle ili Pentaho Integracija podataka. Ima hrpu ugrađenih modula koje možete povući i ispustiti na sliku, a zatim ih povezati. Pentaho je u to temeljito integrirao Hadoop i ostale izvore, tako da možete napisati svoj kôd i poslati ga da se izvrši na klasteru.

 

Alati za velike podatke: Karmasphere Studio i Analyst

Mnogi alati za velike podatke nisu započeli život kao alati za izvještavanje. Karmasphere Studio, na primjer, skup je dodataka izgrađenih na vrhu Eclipsea. To je specijalizirani IDE koji olakšava stvaranje i pokretanje Hadoop poslova.

Imao sam rijedak osjećaj radosti kad sam počeo konfigurirati posao Hadoop-a s ovim razvojnim alatom. Postoji niz faza u životu Hadoop posla, a Karmasphere alati vode vas kroz svaki korak, prikazujući djelomične rezultate na putu. Pretpostavljam da su nam debageri uvijek omogućavali zavirivanje u mehanizam dok on radi svoj posao, ali Karmasphere Studio radi nešto malo bolje: dok postavljate tijek rada, alati prikazuju stanje testnih podataka u svakom koraku. Vidite kako će izgledati privremeni podaci dok se dijele, analiziraju i smanjuju.

Karmasphere također distribuira alat nazvan Karmasphere Analyst, koji je dizajniran da pojednostavi postupak oranja kroz sve podatke u Hadoop klasteru. Dolazi s mnogim korisnim blokovima za programiranje dobrog Hadoop posla, poput potprograma za dekomprimiranje Zipped datoteka dnevnika. Zatim ih spaja i parametrizira pozive košnice kako bi proizveo tablicu rezultata za uvid.

 

Alati za velike podatke: Talend Open Studio

Talend također nudi IDE zasnovan na Eclipseu za povezivanje poslova obrade podataka s Hadoop-om. Njegovi su alati dizajnirani da pomažu u integraciji podataka, kvaliteti podataka i upravljanju podacima, a sve s potprogramima prilagođenim tim poslovima.

Talend Studio omogućuje vam da gradite svoje poslove povlačenjem i ispuštanjem malih ikona na platno. Ako želite dobiti RSS feed, Talendova komponenta će dohvatiti RSS i dodati proxy ako je potrebno. Postoje deseci komponenata za prikupljanje informacija i još deseci za radnje poput "mutnog podudaranja". Tada možete ispisati rezultate.

Vizualno povezivanje blokova može biti jednostavno nakon što steknete predodžbu o tome što komponente zapravo rade, a što ne čine. To mi je bilo lakše shvatiti kad sam počeo gledati izvorni kod koji se sastavlja iza platna. Talend vam omogućuje da to vidite i mislim da je idealan kompromis. Vizualno programiranje može se činiti kao uzvišeni cilj, ali otkrio sam da ikone nikada ne mogu predstavljati mehanizme s dovoljno detalja kako bi se moglo razumjeti što se događa. Treba mi izvorni kod.

Talend također održava TalendForge, zbirku proširenja otvorenog koda koja olakšavaju rad s proizvodima tvrtke. Čini se da su većina alata filtri ili knjižnice koji povezuju Talendov softver s drugim glavnim proizvodima kao što su Salesforce.com i SugarCRM. Informacije iz ovih sustava možete usisati u vlastite projekte, pojednostavljujući integraciju.

 

Alati za velike podatke: Skytree Server

Nisu svi alati dizajnirani da olakšaju nizanje koda s vizualnim mehanizmima. Skytree nudi paket koji izvodi mnoge sofisticiranije algoritme strojnog učenja. Potrebno je samo unijeti pravu naredbu u naredbeni redak.

Skytree je više usredotočen na crijeva nego na sjajni GUI. Skytree Server optimiziran je za pokretanje brojnih klasičnih algoritama strojnog učenja na vašim podacima koristeći implementaciju za koju tvrtka tvrdi da može biti 10 000 puta brža od ostalih paketa. Može pretraživati ​​vaše podatke tražeći nakupine matematički sličnih predmeta, a zatim ih obrnuti kako bi identificirao odstupanja koja mogu predstavljati probleme, prilike ili oboje. Algoritmi mogu biti precizniji od ljudi i mogu pretraživati ​​ogromne količine podataka tražeći unose koji su pomalo neobični. To može biti prijevara - ili posebno dobar kupac koji će trošiti i trošiti.

Besplatna verzija softvera nudi iste algoritme kao i vlasnička verzija, ali ograničena je na skupove podataka od 100 000 redaka. To bi trebalo biti dovoljno za utvrđivanje odgovara li softver.

 

Alati za velike podatke: Desktop i poslužitelj Tableau

Tableau Desktop alat je za vizualizaciju koji olakšava gledanje vaših podataka na nove načine, zatim njihovo rezanje i gledanje na drugačiji način. Možete čak i podatke pomiješati s drugim podacima i ispitati ih u još jednom svjetlu. Alat je optimiziran da vam pruži sve stupce za podatke i omogući vam da ih miješate prije nego što ih stavite u jedan od desetaka ponuđenih grafičkih predložaka.

Softver Tableau počeo je prihvaćati Hadoop prije nekoliko verzija, a sada se prema Hadoopu možete ponašati "baš kao da postupate s bilo kojom podatkovnom vezom". Tableau se oslanja na Hive za strukturiranje upita, a zatim pokušava sve da predmemorira što više podataka u memoriji kako bi alat mogao biti interaktivan. Iako su se mnogi drugi alati za izvještavanje temeljili na tradiciji izvanmrežnog generiranja izvješća, Tableau želi ponuditi interaktivni mehanizam tako da svoje podatke možete uvijek iznova narezati na kockice. Keširanje pomaže u rješavanju nekih kašnjenja Hadoop klastera.

Softver je dobro uglađen i estetski ugodan. Često sam se našao da resliciram podatke samo da bih ih vidio na još jednom grafikonu, iako se nije moglo puno naučiti prelaskom s tortnog grafikona na trakasti grafikon i više. Softverski tim očito uključuje brojne ljude s određenim umjetničkim talentom.

 

Alati za velike podatke: Splunk

Splunk se malo razlikuje od ostalih opcija. To nije baš alat za generiranje izvješća ili zbirka AI rutina, iako većinu toga postiže usput. Stvara indeks vaših podataka kao da su vaši podaci knjiga ili blok teksta. Da, baze podataka također grade indekse, ali Splunkov pristup mnogo je bliži procesu pretraživanja teksta.

Ovo indeksiranje je iznenađujuće fleksibilno. Splunk je već prilagođen mojoj određenoj aplikaciji, imajući smisla za datoteke dnevnika, i usisao ih je točno. Također se prodaje u više različitih paketa rješenja, uključujući jedan za nadgledanje poslužitelja Microsoft Exchange i drugi za otkrivanje web napada. Indeks pomaže u korelaciji podataka u tim i nekoliko drugih uobičajenih scenarija na strani poslužitelja.