Innholdsfortegnelse:
- Hvordan startet Hadoop?
- Hva er så viktig med Hadoop?
- Hva leses skjemaet på?
- Hva er Hive?
- Hva slags data analyserer Hadoop?
- Kan du gi et virkelig eksempel på Hadoop?
- Er Hadoop allerede foreldet eller bare morfert?
Hva er Hadoop? Det er en gul lekeelefant. Ikke det du forventet? Hva med dette: Doug Cutting - medskaper av dette open source-programvareprosjektet - lånte navnet fra sønnen hans som tilfeldigvis kalte leketøyselefanten Hadoop. I et nøtteskall er Hadoop et programvarerammeverk utviklet av Apache Software Foundation som brukes til å utvikle datakrevende, distribuert databehandling. Og det er en nøkkelkomponent i et annet buzzword-lesere kan aldri se ut til å få nok av: big data. Her er syv ting du bør vite om denne unike, fritt lisensierte programvaren.
Hvordan startet Hadoop?
For tolv år siden bygde Google en plattform for å manipulere de enorme datamengdene den samlet inn. Som selskapet ofte gjør, gjorde Google designen tilgjengelig for allmennheten i form av to artikler: Google File System og MapReduce.
Samtidig jobbet Doug Cutting og Mike Cafarella på Nutch, en ny søkemotor. De to slet også med hvordan de skulle håndtere store datamengder. Da fikk de to forskerne blikk på Googles papirer. Det heldige krysset endret alt ved å introdusere Cutting og Cafarella for et bedre filsystem og en måte å holde oversikt over dataene, og til slutt førte til opprettelsen av Hadoop.
Hva er så viktig med Hadoop?
I dag er det enklere enn noen gang å samle inn data. Å ha alle disse dataene gir mange muligheter, men det er også utfordringer:- Massive datamengder krever nye behandlingsmetoder.
- Dataene som blir fanget er i et ustrukturert format.
Deretter måtte de takle ustrukturerte data eller data i formater som standard relasjonsdatabasesystemer ikke var i stand til å håndtere. Cutting og Cafarella designet Hadoop for å jobbe med alle typer data: strukturerte, ustrukturerte, bilder, lydfiler, til og med tekst. Denne hvitboken fra Cloudera (Hadoop integrator) forklarer hvorfor dette er viktig:
-
"Ved å gjøre alle dataene dine brukbare, ikke bare hva som er i databasene dine, lar Hadoop deg avdekke skjulte forhold og avslører svar som alltid har vært utenfor rekkevidde. Du kan begynne å ta flere beslutninger basert på harde data, i stedet for å kaste seg, og se på komplette datasett, ikke bare prøver og sammendrag. "
Hva leses skjemaet på?
Som nevnt tidligere, er en av fordelene med Hadoop dens evne til å håndtere ustrukturerte data. På en måte er det "å sparke boksen nedover veien." Etter hvert trenger dataene en slags struktur for å analysere dem.
Det er der skjema på lest spiller inn. Skjema ved lest er sammensmelting av hvilket format dataene er i, hvor du finner dataene (husk at dataene er spredt mellom flere servere), og hva som skal gjøres for dataene - ikke en enkel oppgave. Det har blitt sagt at å manipulere data i et Hadoop-system krever ferdighetene til en forretningsanalytiker, en statistiker og en Java-programmerer. Dessverre er det ikke mange mennesker med de kvalifikasjonene.
Hva er Hive?
Hvis Hadoop skulle lykkes, måtte arbeidet med dataene forenkles. Så åpen kildemengden begynte å jobbe og opprettet Hive:-
"Hive gir en mekanisme for å projisere strukturen på disse dataene og spørre om dataene ved å bruke et SQL-aktig språk kalt HiveQL. Samtidig gjør dette språket også at tradisjonelle kart / reduserer programmerere kan plugge inn sine tilpassede kartleggere og reduksjonsmaskiner når det er upraktisk eller ineffektiv til å uttrykke denne logikken i HiveQL. "
Hive muliggjør det beste fra begge verdener: databasepersonell som er kjent med SQL-kommandoer, kan manipulere dataene, og utviklere som er kjent med skjemaet på leseprosessen, kan fremdeles lage tilpassede spørsmål.
Hva slags data analyserer Hadoop?
Webanalyse er det første som kommer opp i tankene, å analysere nettlogger og webtrafikk for å optimalisere nettsteder. Facebook, for eksempel, er definitivt i nettanalyse, og bruker Hadoop til å sortere gjennom terabytene med data selskapet samler inn.
Bedrifter bruker Hadoop-klynger for å utføre risikoanalyse, svindelavdekking og kundebase-segmentering. Hjelpeselskaper bruker Hadoop for å analysere sensordata fra deres elektriske nett, slik at de kan optimalisere produksjonen av elektrisitet. Et større selskap som Target, 3M og Medtronics bruker Hadoop for å optimalisere produktdistribusjon, forretningsrisikovurderinger og kundebase-segmentering.
Universiteter er investert i Hadoop også. Brad Rubin, førsteamanuensis ved University of St. Thomas Graduate Programs in Software, nevnte at Hadoop-ekspertisen hans hjelper til med å sortere gjennom store mengder data samlet av forskergrupper ved universitetet.
Kan du gi et virkelig eksempel på Hadoop?
Et av de bedre kjente eksemplene er TimesMachine. New York Times har en samling av helsides avis-TIFF-bilder, tilhørende metadata og artikkeltekst fra 1851 til og med 1922 som tilsvarer terabyte med data. Derek Gottfrid, NYT, bruker et EC2 / S3 / Hadoop-system og spesialisert kode, :-
"Innlagt 405 000 veldig store TIFF-bilder, 3, 3 millioner artikler i SGML og 405 000 xml filer som kartlegger artikler til rektangulære regioner i TIFF-ene. Disse dataene ble konvertert til en mer nettvennlig 810 000 PNG-bilder (miniatyrbilder og fullbilder) og 405 000 JavaScript-filer. "
Ved å bruke servere i skyen Amazon Web Services nevnte Gottfrid at de var i stand til å behandle alle dataene som kreves for TimesMachine på mindre enn 36 timer.
Er Hadoop allerede foreldet eller bare morfert?
Hadoop har eksistert i over et tiår nå. Det har mange som sier at det er foreldet. En ekspert, Dr. David Rico, har sagt at "IT-produkter er kortvarige. I hundeår er Googles produkter omtrent 70, mens Hadoop er 56."
Det kan være en viss sannhet til hva Rico sier. Det ser ut til at Hadoop gjennomgår en større overhaling. For å lære mer om det, inviterte Rubin meg til et Twin Cities Hadoop-brukergruppemøte, og temaet for diskusjonen var Introduction to YARN:
-
"Apache Hadoop 2 inkluderer en ny MapReduce-motor, som har en rekke fordeler i forhold til forrige implementering, inkludert bedre skalerbarhet og ressursutnyttelse. Den nye implementeringen er bygget på et generelt ressursstyringssystem for å kjøre distribuerte applikasjoner kalt YARN."