Programavimas

7 įrankiai, skirti „Hadoop“ prisijaukinti didelius duomenis

Tailando kietųjų diskų pramonę nusiaubę potvyniai dabar yra pusės metų senumo, o terabaitų kainos pagaliau vėl krinta. Tai reiškia, kad duomenys pradės kauptis ir žmonės aplink biurą domėsis, ką su jais galima padaryti. Galbūt tuose žurnalo failuose yra keletas įžvalgų? Gal šiek tiek statistinės analizės metu bus rasti keli aukso grynuoliai, palaidoti visame tame triukšme? Gal galime rasti pakankamai pakaitų, paslėptų šių failų sofos pagalvėlėse, kad pakeltume mus visus?

Pramonė dabar turi madingą žodį „didieji duomenys“, kaip mes ką nors padarysime kaupdami didžiulį informacijos kiekį. „Didieji duomenys“ pakeičia „verslo intelektą“, kuris pristabdė „ataskaitų teikimą“, o tai suteikė gražesnį blizgesį „skaičiuoklėms“, kurios išmušė senamadiškus „spaudinius“. Vadybininkai, kurie jau seniai studijavo spaudinius, dabar samdo matematikus, kurie teigia esantys didžiųjų duomenų specialistai, kurie padėtų jiems išspręsti tą pačią seną problemą: kas parduodama ir kodėl?

[Taip pat: Enterprise Hadoop: palengvintas didelių duomenų apdorojimas Naršykite dabartines BI tendencijas ir sprendimus naudodamiesi interaktyviuoju verslo intelekto „iGuide“. | Sužinokite, kas naujo verslo programose, naudodamiesi „Technology: Applications“ naujienlaiškiu. ]

Neteisinga teigti, kad šie žodžiai yra paprasti vienas kito pakaitalai. Didieji duomenys yra sudėtingesnis pasaulis, nes mastas yra daug didesnis. Informacija paprastai paskirstoma keliuose serveriuose, o duomenų rinkimo darbas turi būti koordinuojamas tarp jų. Anksčiau darbas iš esmės buvo deleguotas duomenų bazės programinei įrangai, kuri naudodama savo stebuklingą JOIN mechanizmą sudarė lenteles, tada pridėjo stulpelius prieš atiduodama duomenų stačiakampį ataskaitų programinei įrangai, kuri jį paginuotų. Tai dažnai buvo sunkiau, nei atrodo. Duomenų bazių programuotojai gali jums pasakoti istorijas apie sudėtingas JOIN komandas, kurios valandoms užrakins jų duomenų bazę, nes ji bandė sukurti ataskaitą bosui, kuris norėjo jo stulpelių.

Dabar žaidimas yra daug kitoks. „Hadoop“ yra populiarus įrankis, skirtas organizuoti serverių lentynas ir stelažus, o „NoSQL“ duomenų bazės yra populiarus įrankis duomenims saugoti šiose lentynose. Šis mechanizmas gali būti daug galingesnis nei sena pavienė mašina, tačiau jie toli gražu nėra taip nušlifuoti kaip seni duomenų bazių serveriai. Nors SQL gali būti sudėtinga, JOIN užklausos rašymas SQL duomenų bazėms dažnai buvo daug paprastesnis nei informacijos rinkimas iš dešimčių mašinų ir jos sudarymas į vieną nuoseklų atsakymą. „Hadoop“ darbai yra parašyti „Java“, o tam reikia dar vieno rafinuotumo lygio. Įrankiai, skirti kovoti su dideliais duomenimis, tik pradeda naudoti šią paskirstytą skaičiavimo galią taip, kad būtų šiek tiek lengviau naudoti.

Daugelis didžiųjų duomenų įrankių taip pat dirba su „NoSQL“ duomenų saugyklomis. Tai yra lankstesni nei tradicinės reliacinės duomenų bazės, tačiau lankstumas nėra toks didelis nukrypimas nuo praeities kaip Hadoopas. „NoSQL“ užklausos gali būti paprastesnės, nes duomenų bazės dizainas neskatina sudėtingos lentelių struktūros, lemiančios sudėtingą darbą su SQL. Pagrindinis rūpestis yra tai, kad programinė įranga turi numatyti galimybę, kad ne kiekvienoje eilutėje bus duomenys apie kiekvieną stulpelį.

Didžiausias iššūkis gali būti susidoroti su lūkesčiais, kuriuos sukėlė pagrindinis filmas „Piniginis kamuolys“. Visi bosai tai matė ir sugavo žinią, kad dėl protingos statistikos mažo biudžeto komanda gali tapti „World Series“ nugalėtoja. Nesvarbu, kad Ouklando lengvoji atletika „Moneyball“ epochoje niekada nelaimėjo „World Series“. Tai yra Michaelo Lewiso prozos magija. Visi viršininkai galvoja: „Galbūt, jei galėsiu gauti gerą statistiką, Holivudas pasisamdys Bradą Pittą, kuris vaidins mane filmo versijoje“.

Nė viena šios kolekcijos programinė įranga nepriartins Brado Pitto paprašyti savo agento jūsų „Hadoop“ darbo filmo versijos scenarijaus kopijos. Tai turi kilti iš jūsų ar kitų žmonių, dirbančių projekte. Suprasti duomenis ir rasti tinkamą užduotiną klausimą dažnai yra daug sudėtingiau nei greitai paleisti „Hadoop“ darbą. Tai tikrai kažką sako, nes šios priemonės yra tik pusė darbo.

Norėdamas gauti pažadą lauke, atsisiunčiau keletą didžiųjų duomenų įrankių, sumaišiau duomenis, tada žiūrėjau į atsakymus į Einšteino lygio įžvalgas. Informacija buvo iš žurnalo failų į svetainę, kurioje parduodamos kai kurios mano knygos (wayner.org), ir aš ieškojau idėjos, kas ir kodėl parduodama. Taigi išpakavau programinę įrangą ir uždaviau klausimus.

 

Didžiųjų duomenų įrankiai: „Jaspersoft BI Suite“

„Jaspersoft“ paketas yra vienas iš atvirojo kodo lyderių, kuriančių ataskaitas iš duomenų bazių stulpelių. Programinė įranga yra gerai nušlifuota ir jau įdiegta daugelyje įmonių, paverčiant SQL lenteles PDF rinkmenomis, kurias visi gali nagrinėti posėdžiuose.

Bendrovė šokinėja į didžiųjų duomenų traukinį, o tai reiškia, kad reikia pridėti programinės įrangos sluoksnį, kad ataskaita generuojanti programinė įranga būtų prijungta prie vietų, kur saugomi didieji duomenys. „JasperReports Server“ dabar siūlo programinę įrangą duomenims išsiurbti iš daugelio pagrindinių saugojimo platformų, įskaitant „MongoDB“, „Cassandra“, „Redis“, „Riak“, „CouchDB“ ir „Neo4j“. „Hadoop“ taip pat gerai atstovaujama, o „JasperReports“ teikia „Hive“ jungtį, kad pasiektų „HBase“ vidų.

Šios pastangos atrodo dar tik pradedamos - daugelis dokumentacijos wiki puslapių yra tušti, o įrankiai nėra visiškai integruoti. Pavyzdžiui, vaizdinių užklausų dizaineris dar neveikia su „Cassandra“ CQL. Šiuos klausimus turite įvesti ranka.

Kai gausite duomenis iš šių šaltinių, „Jaspersoft“ serveris juos suformuos iki interaktyvių lentelių ir diagramų. Ataskaitos gali būti gana sudėtingi interaktyvūs įrankiai, leidžiantys gilintis į įvairius kampus. Jei reikia, galite paprašyti vis daugiau informacijos.

Tai yra gerai išvystytas programinės įrangos pasaulio kampelis, o „Jaspersoft“ plečiasi, palengvindamas šių sudėtingų ataskaitų naudojimą su naujesniais duomenų šaltiniais. „Jaspersoft“ nesiūlo ypač naujų duomenų peržiūros būdų, o tik sudėtingesnių būdų pasiekti naujose vietose saugomus duomenis. Man tai pasirodė stebėtinai naudinga. Apibendrinant mano duomenis pakako suprasti, kas ir kada lankosi svetainėje.

 

Didžiųjų duomenų įrankiai: „Pentaho Business Analytics“

„Pentaho“ yra dar viena programinės įrangos platforma, kuri prasidėjo kaip ataskaitas kuriantis variklis; tai, kaip ir „JasperSoft“, išsišakoja į didelius duomenis, palengvindama informacijos įsisavinimą iš naujų šaltinių. Galite prijungti „Pentaho“ įrankį prie daugelio populiariausių „NoSQL“ duomenų bazių, tokių kaip „MongoDB“ ir „Cassandra“. Sujungę duomenų bazes, galite vilkti stulpelius į rodinius ir ataskaitas taip, tarsi informacija būtų gauta iš SQL duomenų bazių.

Manau, kad klasikinės rūšiavimo ir sijojimo lentelės yra labai naudingos norint suprasti, kas daugiausia laiko praleido mano svetainėje. Paprasčiausiai surūšiavus pagal IP adresą žurnalo failuose paaiškėjo, ką daro didieji vartotojai.

„Pentaho“ taip pat teikia programinę įrangą HDFS failų duomenims ir „HBase“ duomenims traukti iš „Hadoop“ grupių. Vienas iš įdomesnių įrankių yra grafinė programavimo sąsaja, žinoma kaip „Kettle“ arba „Pentaho Data Integration“. Jame yra daugybė įmontuotų modulių, kuriuos galite nuvilkti ant paveikslėlio, tada juos sujungti. Pentaho į tai visiškai integravo „Hadoop“ ir kitus šaltinius, todėl galite parašyti savo kodą ir išsiųsti jį vykdyti klasteryje.

 

Didžiųjų duomenų įrankiai: „Karmasphere Studio“ ir analitikas

Daugelis didžiųjų duomenų įrankių pradėjo veikti ne kaip ataskaitų teikimo priemonės. Pavyzdžiui, „Karmasphere Studio“ yra papildinių rinkinys, sukurtas „Eclipse“ viršuje. Tai specializuota IDE, leidžianti lengviau kurti ir valdyti „Hadoop“ darbo vietas.

Aš pradėjau konfigūruoti „Hadoop“ darbą naudodamas šį kūrėjo įrankį, turėjau retą džiaugsmo jausmą. „Hadoop“ darbo gyvenime yra daugybė etapų, o „Karmasphere“ įrankiai nurodo kiekvieną žingsnį, rodydami dalinius rezultatus. Spėju, kad derintojai visada leido mums pažvelgti į mechanizmą, kai jis dirba, tačiau „Karmasphere Studio“ daro šiek tiek geriau: nustatant darbo eigą, įrankiai kiekviename žingsnyje rodo bandymo duomenų būseną. Jūs matote, kaip atrodys laikini duomenys, kai jie bus suskirstyti, išanalizuoti, tada sumažinti.

„Karmasphere“ taip pat platina įrankį, vadinamą „Karmasphere Analyst“, kuris yra skirtas supaprastinti visų „Hadoop“ grupės duomenų arimo procesą. Jame yra daug naudingų statybinių blokų, skirtų programuoti gerą „Hadoop“ darbą, pavyzdžiui, paprogramės, skirtos išpakuoti „ZIP“ žurnalo failus. Tada jis sujungia juos ir parametruoja „Hive“ skambučius, kad būtų sukurta išvesties lentelė.

 

Didžiųjų duomenų įrankiai: „Talend Open Studio“

„Talend“ taip pat siūlo „Eclipse“ pagrįstą IDE, skirtą duomenų apdorojimo užduotims sujungti su „Hadoop“. Jos įrankiai yra skirti padėti integruoti duomenis, duomenų kokybę ir valdyti duomenis - visi su šiomis užduotimis suderinti paprogramės.

„Talend Studio“ leidžia jums sukurti savo darbus vilkdami ir numeskite mažas piktogramas ant drobės. Jei norite gauti RSS sklaidos kanalą, „Talend“ komponentas paims RSS ir prireikus pridės tarpinį serverį. Yra dešimtys komponentų, skirtų informacijai rinkti, ir dar dešimtys dalykų, pavyzdžiui, „neryškios rungtynės“. Tada galite pateikti rezultatus.

Vizualiai sujungus blokus, gali būti paprasta, kai pajusite, ką komponentai iš tikrųjų daro ir ko nedaro. Tai man buvo lengviau suprasti, kai pradėjau žiūrėti į už drobės surenkamą šaltinio kodą. „Talend“ leidžia tai pamatyti, ir aš manau, kad tai idealus kompromisas. Vizualinis programavimas gali atrodyti kaip aukštas tikslas, tačiau pastebėjau, kad piktogramos niekada negali pateikti mechanizmo pakankamai išsamiai, kad būtų galima suprasti, kas vyksta. Man reikia šaltinio kodo.

„Talend“ taip pat prižiūri „TalendForge“ - atvirojo kodo plėtinių kolekciją, kuri palengvina darbą su įmonės produktais. Atrodo, kad dauguma įrankių yra filtrai ar bibliotekos, susiejančios „Talend“ programinę įrangą su kitais pagrindiniais produktais, tokiais kaip „Salesforce.com“ ir „SugarCRM“. Galite susisiųsti informaciją iš šių sistemų į savo projektus, supaprastindami integraciją.

 

Didžiųjų duomenų įrankiai: „Skytree Server“

Ne visi įrankiai sukurti taip, kad būtų lengviau sujungti kodą su vaizdiniais mechanizmais. „Skytree“ siūlo daugybę sudėtingesnių mašininio mokymosi algoritmų. Viskas, ko reikia, yra įvesti tinkamą komandą į komandinę eilutę.

„Skytree“ labiau orientuota į žarnas nei į blizgančią GUI. „Skytree Server“ yra optimizuotas paleisti daugelį klasikinių mašininio mokymosi algoritmų jūsų duomenims, naudojant įmonės teiginius, kurie gali būti 10 000 kartų greitesni nei kiti paketai. Jis gali ieškoti jūsų duomenyse ieškodamas matematiškai panašių elementų grupių, tada apversdamas tai nustatys pašalinius parametrus, kurie gali būti problemos, galimybės ar abu. Algoritmai gali būti tikslesni nei žmonės, ir jie gali ieškoti didelių duomenų kiekių, ieškodami šiek tiek neįprastų įrašų. Tai gali būti sukčiavimas - arba ypač geras klientas, kuris išleis ir išleis.

Nemokama programinės įrangos versija siūlo tuos pačius algoritmus kaip ir patentuota versija, tačiau ji apsiriboja 100 000 eilučių duomenų rinkiniais. To turėtų pakakti norint nustatyti, ar programinė įranga gerai atitinka.

 

Didžiųjų duomenų įrankiai: „Tableau Desktop“ ir „Server“

„Tableau Desktop“ yra vizualizavimo įrankis, leidžiantis lengvai pažvelgti į savo duomenis naujais būdais, paskui juos supjaustyti ir žiūrėti kitaip. Jūs netgi galite sumaišyti duomenis su kitais duomenimis ir juos ištirti dar viena šviesa. Įrankis yra optimizuotas, kad galėtumėte pateikti visus duomenų stulpelius ir leisti juos sumaišyti prieš įdėdami juos į vieną iš dešimčių pateiktų grafinių šablonų.

„Tableau“ programinė įranga „Hadoop“ pradėjo naudoti prieš kelias versijas, o dabar su „Hadoop“ galite elgtis „taip pat, kaip ir su bet kokiu duomenų ryšiu“. „Tableau“ remiasi „Hive“, kad struktūrizuotų užklausas, tada stengiasi talpinti atmintyje tiek informacijos, kad įrankis būtų interaktyvus. Nors daugelis kitų ataskaitų teikimo įrankių yra pagrįsti tradicija generuoti ataskaitas neprisijungus, „Tableau“ nori pasiūlyti interaktyvų mechanizmą, kad galėtumėte vėl ir vėl supjaustyti duomenis. Talpykla padeda išspręsti kai kurias „Hadoop“ sankaupos delsas.

Programinė įranga yra gerai nugludinta ir estetiška. Dažnai pastebėjau, kad duomenis perskirstau tik tam, kad juos pamatyčiau kitame grafike, nors nebuvo daug ko naujo išmokti pereinant nuo skritulinės diagramos prie juostos diagramos ir už jos ribų. Programinės įrangos komandoje aiškiai yra keletas meninių talentų turinčių žmonių.

 

Didžiųjų duomenų įrankiai: „Splunk“

„Splunk“ šiek tiek skiriasi nuo kitų variantų. Tai nėra tiksliai ataskaitas generuojantis įrankis ar dirbtinio intelekto rinkinys, nors didžioji to dalis pasiekiama kelyje. Tai sukuria jūsų duomenų rodyklę, tarsi duomenys būtų knyga ar teksto blokas. Taip, duomenų bazės taip pat kuria indeksus, tačiau „Splunk“ požiūris yra daug artimesnis teksto paieškos procesui.

Šis indeksavimas yra stebėtinai lankstus. „Splunk“ jau yra pritaikytas mano konkrečiai programai, suprasdamas žurnalo failus, ir tai juos įsiurbė. Jis taip pat parduodamas daugybe skirtingų sprendimų paketų, įskaitant vieną „Microsoft Exchange“ serverio stebėjimui ir kitą žiniatinklio atakų aptikimą. Indeksas padeda koreliuoti duomenis pagal šiuos ir kelis kitus įprastus serverio scenarijus.