Bedrijven krijgen steeds meer data te verwerken. Op een gegeven moment wordt het heel moeilijk om die hoeveelheden beheerbaar te houden, en juist daar komt Hadoop van pas. “Hadoop erkent dat data en het verwerken daarvan niet van elkaar gescheiden kunnen worden. Daarom pusht Hadoop het verwerken naar de data in plaats van andersom”, zegt Bisciglia.

Afgeschreven machines

Om dat goed uit te leggen gaat hij wat dieper in op de principes achter Hadoop. “Een file wordt opgedeeld in een aantal stukken, en elk stuk komt op zeker drie machines te staan. Op die manier kan er gerust een machine uitvallen. Dan wordt alles weer verdeeld over de rest van de pc’s. Het systeem zelf geeft geen krimp.”

Het machinepark kan dus bestaan uit afgeschreven pc’s. Daarbovenop heb je nog twee speciale machines, waarvoor volgens Bisciglia meestal wat betere hardware wordt gebruikt. De een is bedoeld om de storage te organiseren en vanuit de andere worden de bewerkingen gecoördineerd. Die bewerkingen zelf worden uitgevoerd op de storagemachines, waarna de data die terugkomt bij elkaar wordt gevoegd op de beheermachine.

Extreem schaalbaar

“Het grote voordeel van zo’n systeem is dat het extreem schaalbaar is. Wil je van 10 TB naar 20 TB? Dan voeg je gewoon machines toe. Draait het met 1 GB, dan draait het ook met 100 TB. Probeer dat maar eens met een database”, zegt Bisciglia.

Het geeft een voorbeeld. “Stel je hebt een Oracle database van 5 TB. Laten we zeggen dat die een miljoen dollar kost. Na een half jaar is die vol en moet je data weg gaan gooien. Als je Hadoop toevoegt aan de infrastructuur hoeft dat niet. Dan kun je de database halveren en de rest van de data gooi je in Hadoop. Van die data worden samenvattingen gemaakt, die weer in de database worden gezet. Zo houd je de data beschikbaar en analyseerbaar, terwijl Hadoop vele malen goedkoper is per TB dan zo’n database.” De samenvattingen van Hadoop zijn veel dieper dan de resultaten uit de database. Ze zijn namelijk gebaseerd op de laatste jaren in plaats van alleen op het laatste half jaar.

Opengesperde muil van bits

Hadoop is geen volledige vervanging van de database. “Het verwerken van de data in Hadoop kost iets meer tijd, van twee minuten tot twee uur”, zegt Bisciglia. “Hadoop kan niet wat een database kan, maar de database is weer veel minder schaalbaar. Hadoop is een opengesperde muil van bits”, zo omschrijft Bisciglia Hadoop. “Je stopt er alles in en je kunt er alles weer uithalen, in elke vorm die je wilt.”

Voor de analyse is een speciale taal ontwikkeld, Hive, die veel lijkt op SQL. Analysten kunnen daarmee vrij snel aan de slag als ze SQL gewend zijn. Voor ontwikkelaars is Pig gemaakt, dat erg lijkt op Python. “Door Hive en Pig kan er makkelijk worden gewerkt met Hadoop. Je kunt met Hadoop ook veel beter kijken naar grote hoeveelheden data en er de eigenaardigheden in isoleren. Zo is het heel geschikt voor analyse van bijvoorbeeld klimaatverandering.” Maar ook binnen bedrijven zijn er volgens Bisciglia genoeg taken voor Hadoop te verzinnen.

Implementatie

Alleen was het inzetten van Hadoop tot voor kort een geweldige klus. “Er moeten zo’n 300 parameters worden gezet”, vertelt Bisciglia. Cloudera heeft dat nu makkelijker gemaakt door er een RPM van te maken. “Daardoor ziet het er uit als gewone software, in een formaat dat de systeembeheerder kent.” Eerst moeten een paar vragen over het systeem worden beantwoord en daarna wordt een configfile aangemaakt.

Nadat die vragen zijn beantwoord komt de configfile in een geheime directory van de repository te staan. Die directory heeft een naam van 160 willekeurige bits. “Daar kan alleen iemand bij als je hem die bits geeft”, zegt Bisciglia. “Die configfile kun je daarna nog aanpassen.” Dat moet natuurlijk als je bijvoorbeeld machines toevoegt aan je systeem, wat juist het grote voordeel is van Hadoop. “Heb je veel data, dan schaalt dit systeem”, zo sluit Bisciglia af.

Bron: Techworld