Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 39 reacties

Het zijn gouden tijden voor techneuten. Iedereen met veel voldoende kennis en vaardigheden, genoeg ambitie en niet te veel scrupules kan een prachtige internet-onderneming van de grond trekken. Voor wie groot denkt, is een standaard serverpark echter niet toereikend. Bedrijven als Google, Twitter en Facebook bewaren en bewerken enorme hoeveelheden gegevens. Zij gebruiken daarvoor meestal een parallel platform als Hadoop.

Hadoop is een opensourceproject van de Apache Foundation. Het is ontwikkeld voor distributed computing en biedt onder meer een eigen bestandssysteem dat het mogelijk maakt om gegevens gedistribueerd over een netwerk op te slaan. Ook zijn er subprojecten voor het verwerken van data, zoals Hive en MapReduce, en er is een tool voor het uitvoeren van parallelle bewerkingen die Pig is genoemd. Hadoop maakt gebruik van Java en wordt onder meer ontwikkeld door medewerkers van Facebook, Yahoo, LinkedIn en Twitter.

Net voor de jaarwisseling verscheen versie 1.0, maar begin vorig jaar won het platform al de eerste prijs bij de MediaGuardian Innovation Awards. De jury legde daarbij vooral de nadruk op het belang voor innovatieve bedrijven als Twitter en Facebook.

Hadoop-logo

Wat is Hadoop?

De eerste code voor Hadoop werd meer dan tien jaar geleden geschreven door Doug Cutting. Hij werkte destijds aan twee projecten voor een opensource zoekmachine op basis van Java: Nutch verzorgde het crawler-gedeelte, Lucene de indexering en search-afhandeling. Toen Google in 2004 op de Usenix-conferentie een paper over het MapReduce-algoritme publiceerde, gebruikte Cutting dat om de schaalbaarheid van Lucene te verbeteren. Het resultaat was Hadoop, dat inmiddels, net als Lucene en Nutch, is ondergebracht bij de Apache Software Foundation (ASF), waar Cutting op dit moment voorzitter van is.

Hadoop is het platform voor de internetondernemer die in het groot denkt. Wie aan de volgende Google, Twitter of Facebook werkt, heeft heel veel verwerkingskracht, geheugen en opslag nodig - veel meer dan een batterij grote servers je kan bieden. Gelukkig hebben de meeste internetdiensten genoeg aan horizontale schaalbaarheid. Dat wil zeggen dat de prestaties en de capaciteit min of meer lineair toenemen met het aantal servers dat je neerzet. Daardoor kan commodity hardware worden gebruikt: kleine, goedkope systemen die makkelijk en snel vervangen kunnen worden.

Zo gebruikt Google in zijn datacenters losse moederborden en harddisks, die in zelf ontworpen rekken worden geschoven. Als je kijkt naar de omvang van Googles infrastructuur - naar verluidt heeft het bedrijf met ongeveer een miljoen systemen twee procent van alle servers ter wereld in bezit - dan betaalt die eigen ontwikkeling zich dubbel en dwars terug. Andere grootverbruikers zijn bedrijven als Akamai, Amazon, Intel, Microsoft en Rackspace, al is hun infrastructuur een orde van grootte kleiner.

Google-technologie 

Niet voor niets hebben de ontwikkelaars van Hadoop zich laten leiden door dezelfde technologieën die ook aan de basis van Google stonden: MapReduce en het Google File System. Die eerste is een methode om parallelle problemen over een heterogene cluster te verdelen. Voor de liefhebbers: MapReduce lijkt op een gedistribueerde, functionele vorm van backtracking en recursie.

GFS is het bijbehorende, gedistribueerde bestandssysteem. Bestanden worden in stukken geknipt en over verschillende systemen verdeeld. Door die stukken ook nog eens te kopiëren wordt voor redundancy gezorgd, en bovendien kan een bestand zo geparallelliseerd worden opgevraagd.

Google File System

Location awareness

Logo Nutch Search EngineHoewel Hadoop in eerste instantie is ontwikkeld voor de Nutch/Lucene-zoekmachine, is het een algemeen raamwerk voor het beheer van een netwerk van nodes en het daarmee uitvoeren van gedistribueerde opdrachten. Om de infrastructuur zowel robuust als efficiënt te maken, moet de software weten welke nodes zich in welke rekken bevinden en welke nodes daar netwerktechnisch bij in de buurt zijn.

Deze vorm van location awareness zorgt ervoor dat redundante stukken data over verschillende rekken kunnen worden verspreid, zodat gegevens beschikbaar blijven als de stroomvoorziening of een netwerkswitch uitvalt. Tegelijkertijd wil je de worker nodes gegevens laten bewerken die zich al op hetzelfde systeem bevinden of anders op een data node die op dezelfde switch is aangesloten. De informatie over de onderlinge onafhankelijkheid van nodes is dus van belang voor het opslaggedeelte, terwijl de nabijheid belangrijk is bij het uitvoeren van de opdrachten.

Hadoop gebruikt daarvoor verschillende soorten nodes. Er is minstens één master node of NameNode. Deze fungeert als ingang voor het file system, dat uit een heleboel DataNodes bestaat. De JobTracker is verantwoordelijk voor de distributie van opdrachten over de compute nodes oftewel de TaskTrackers. Meestal zijn de data nodes met een compute node gecombineerd in één worker node. De nodes communiceren ten slotte met elkaar via rpc over ssh-verbindingen.

Multi-node Hadoop cluster

Bestandssysteem HDFS

Hadoop omvat ook het Hadoop Distributed File System, dat bestanden in blokken van 64MB over de data-nodes verdeelt. Snapshots en backups van de cluster kunnen worden gemaakt door de indextabellen van de master node naar een Checkpoint of Backup-node te schrijven.

Met Federation kan een uitgevallen master-node worden opgevangen. Deze recente uitbreiding van HDFS creëert een aantal alternatieve ingangen voor het file system. Met deze extra NameNodes is een veelbesproken single-point-of-failure verholpen. Checkpoints doen hetzelfde voor de JobTracker, zodat niet al het werk verloren is als die crasht.

Om gegevens voor een bewerking op te vragen en de uitkomsten daarna weer terug te sturen, vragen clients eerst bij de NameNode op waar bepaalde gegevens zich in het bestandssysteem bevinden. De informatie zelf wordt vervolgens rechtstreeks met de DataNodes uitgewisseld.

Er kunnen overigens ook virtuele bestandssystemen worden gebruikt. Andere toegangsmogelijkheden zijn ftp en http.

Hadoop-Apache HDFS structuur

Andere bestandssystemen

Hadoop kan ook overweg met andere gedistribueerde bestandssystemen dan HDFS: de scheduler is in principe onafhankelijk van het onderliggende file system. De software bevat een api om drivers voor alternatieve bestandssystemen te kunnen ontwikkelen. Wel is het voor de prestaties en efficiëntie van belang dat een dergelijk alternatief bestandssysteem location awareness ondersteunt.

Een van die alternatieven is CloudStore, een in C++ geschreven pakket dat vergelijkbare functionaliteit biedt. Hadoop kan ook worden gekoppeld met Amazon S3. Andere ondersteunde bestandssystemen zijn IBM's General Parallel File System, Ibrix Fusion van HP, en MapR.

Big Data

Hadoop schaalt op tot duizenden nodes en tientallen petabytes aan data. Voor dergelijke omgevingen, waarin de hoeveelheid informatie zo groot wordt dat deze niet meer op de traditionele manier te behappen is, wordt de term Big Data gebruikt. Al die gegevens kunnen niet meer in een (relationele) database worden opgeslagen; ze vereisen systemen en toolsets die parallel en horizontaal enorm schaalbaar zijn. Toepassingen liggen in de wetenschap en in de zakelijke en financiële wereld, maar vooral aan de achterkant van die grote, wereldwijde internetportals.

Inmiddels is er dan ook een hele zwik uitbreidingen voor Hadoop/HDFS beschikbaar, zoals:

  • Cassandra: gedistribueerde database met replicatie;
  • Chukwa: log-analyse;
  • Dumbo: een Python-api;
  • Hama: Bulk Synchronous Parallel-library voor grootschalige parallelle, wetenschappelijke berekeningen;
  • HBase: gedistribueerde database, vergelijkbaar met Google's Bigtable; ook geschikt voor het schrijven van records, in tegenstelling tot het voor lezen geoptimaliseerde HDFS;
  • Hive: datawarehousing, analyses en query's met behulp van een eigen sql-taal;
  • Hypertable: een gedistribueerde database die in C++ is geschreven;
  • Mahout: aanbevelingen, groeperen, classificeren en datamining;
  • Pig: data-analyse met behulp van een eigen specificatie-taal en
  • Zookeeper: configuratie-management voor clusters.

Aan de slag

Installatie

Hadoop is gepubliceerd onder de Apache-licentie. Voor de installatie zijn Java versie 1.6 en ssh nodig. Hoewel meestal Linux wordt gebruikt, kan Hadoop met Cygwin ook onder Windows worden gedraaid. Voor productiesystemen wordt dat echter afgeraden. Hadoop is ook werkend te krijgen onder BSD, OpenSolaris en OS/X.

Hadoop kan in drie verschillende modes draaien: Standalone, Pseudo-Distributed voor het draaien van een compleet netwerk op een enkel systeem, en Fully Distributed voor een volledig gedistribueerd cluster. Installatie en configuratie van de eerste twee is eenvoudig: een kwestie van de software neerzetten en wat xml-bestanden aanmaken.

De clustersetup is ingewikkelder. Daarvoor moet om te beginnen op elke node de Hadoop-stack worden geïnstalleerd. Daarnaast zijn er veel configuratiemogelijkheden. Ten slotte moet natuurlijk een lijst met adressen en rack-nummers van de slave nodes worden aangemaakt. Een dergelijke installatie heeft meer voeten in de aarde dan een testopstelling, maar is toch niet overdreven ingewikkeld; ook voor een gevorderde hobbyist is het prima te doen.

MapReduce

De waarde van de cluster zit natuurlijk in de bewerkingen op de gegevens die zich op het gedistribueerde bestandssysteem bevinden. Die bewerkingen worden vastgelegd in twee Java functies: Map en Reduce. De eerste voert een opdracht uit op alle data-blokken op een systeem, en dat tegelijkertijd op alle worker nodes. De JobTracker op de master node verzamelt vervolgens de deelresultaten van de TaskTrackers op de afzonderlijke nodes, terwijl de Reduce-functie die verwerkt tot een eindresultaat.

Hoewel het Hadoop-framework in Java is geschreven, is dat niet per definitie ook het geval voor de Map- en Reduce-functies. De slave nodes kunnen ook C++-functies of shell-commando's uitvoeren, respectievelijk met pipes en streaming. Verder is er een plug-in voor Eclipse beschikbaar, die zowel in Linux- als in Windows-omgevingen bruikbaar is.

Van start

Om snel van start te gaan, kun je de Hadoop Demo VM van Cloudera proberen; dat is een VMware-image met daarop CentOS, Hadoop, Hive en Pig. Een andere mogelijkheid is de OpenSolaris Hadoop LiveCD van Sun. Deze image is nog steeds te downloaden, ook al wordt OpenSolaris al tijden niet meer door Sun-eigenaar Oracle onderhouden. Hadoop heeft verder nog op de Sun Cloud gedraaid, maar ook die is niet meer beschikbaar.

Voor een eerste productiesysteem lijkt de Hadoop-dienst van Amazon een goede keus. Amazon Elastic MapReduce is gebaseerd op EC2 en S3, waarmee de volledige flexibiliteit en schaalbaarheid van een cloudoplossing beschikbaar is. Bovendien voorkom je hiermee de afstand tussen de compute nodes en de data nodes die ontstaat als een eigen Hadoop-systeem wordt gecombineerd met alleen S3-opslag. In dat geval is het dus beter om de complete dienst af te nemen.

Hadoop-leveranciers

Voor grotere systemen is een eigen infrastructuur natuurlijk goedkoper. Cloudera's Distribution Including Apache Hadoop biedt kant-en-klare installatiepakketten voor Debian/Ubuntu, RHEL/CentOS/Fedora en SuSE. Ook MapR levert distributies voor RHEL/CentOS en Ubuntu en werkt hierbij samen met EMC, dat deze software stack weer onder de naam Greenplum HD Enterprise Edition verkoopt.

Deze bedrijven leveren allemaal professionele ondersteuning, net als Hortonworks en traditionele leveranciers als Google, HP, IBM, Oracle en SGI. De laatste twee werken weer samen met Cloudera. Daarnaast zijn er nog diverse leveranciers die zich hebben gespecialiseerd in bepaalde toepassingen of specifieke markten.

Inspiratie

Inspiratie

De twee grootste gebruikers van Hadoop zijn Facebook en Yahoo. De eerste gebruikt een cluster met tientallen petabytes aan data onder andere voor het draaien van analyses. Yahoo gebruikt Hadoop voor de indexering voor zijn search engine. Daarnaast levert dit bedrijf de meeste code en is het ook nog eens voormalige werkgever van Cutting. Er zijn echter talloze andere bekende namen op de lijst van Hadoop-gebruikers; zij zetten het platform onder meer in voor data-analyse en log-processing, zoekmachines en beeldbewerking. IBM gebruikt het voor zijn Blue Cloud-dienst, LinkedIn zoekt ermee naar People You May Know, en Twitter zet het in voor de opslag en de verwerking van tweets. Ook de talloze Wikipedia-linkjes in dit artikel worden trouwens met behulp van een Hadoop-systeem uitgeleverd.

Ten slotte nog een laatste alternatief voor wie met Hadoop aan de slag wil gaan: Sector/Sphere. Waar HDFS de bestanden ophakt in blokken, werkt dit platform met de complete, originele files. Bovendien is Sector gemaakt voor wan-verbindingen. Daarvoor is een eigen netwerkprotocol op basis van udp ontwikkeld: UDT. Sector/Sphere is geschreven in C++ en is beschikbaar voor Linux en Windows. De parallelle engine van Sphere lijkt flexibeler dan die MapReduce, en is volgens de ontwikkelaars ook nog eens twee tot vier keer sneller dan Hadoop.


Door Aad Offerman

- Freelancer

Aad Offerman is al meer dan tien jaar actief als vakjournalist, technologie-auteur, bladenmaker en New Media-specialist in de Nederlandse ict-markt. Hij is afgestudeerd in de Technische Informatica aan de TU Delft, waar hij zich heeft gespecialiseerd in Computer Architectuur en Digitale Techniek. Daarnaast hoopt hij volgend jaar als psycholoog af te studeren aan de Universiteit Leiden, waar hij zich specialiseert in theoretische en klinische psychologie.

Reacties (39)

Reactiefilter:-139039+128+28+32
Moderatie-faq Wijzig weergave
Wat mij steeds weer opvalt als ik naar Hadoop en andere soort gelijke oplossingen kijk is de grote afwezigheid van Google. Ze hebben zeer veel gedaan met het MapReduce algoritme en hebben de wereld laten zien dat je naar vrijwel oneindige grote kan schalen. Maar ik zie eigenlijk vrijwel nooit commits van uit de Google organisatie nog zie je dat zij ook maar iets loslaten over hoe zij hun systemen in het echt draaien. Theorie dat wel maar eigenlijk nooit een praktijk voorbeeld. Nu snap ik dat wel het nu eenmaal hun core business en als andere dat zelfde kunnen doen dan verliezen ze veel van hun concurrentie positie maar toch het is en blijft jammer.

Ook denk ik dat als iemand echt groot denkt hij/zij niet noodzakelijkerwijs met een Hadoop achtig platform aan de slag hoeft te gaan om te beginnen. Het belangrijkste is een goede setup maken waarbij er rekening gehouden wordt met het idee dat in de toekomst een overstap naar een andere backend nodig kan zijn. Op die manier kun je om te beginnen met een beperkt budget en beperkte kennis een goed systeem bouwen dat ondanks een aantal beperkingen flink op geschaald kan worden. Kijk naar Facebook ondanks al hun werk aan het Cassandra platform draait een zeer groot deel van de site nog steeds op MySQL en is het in hele erg veel opzichten toch echt nog steeds een MySQL gebaseerde site dus groeien tot een redelijk groot gebruikers aantal is best goed mogelijk.

Als je realistisch bent dan kun je niet zeer snel groeien van een kleine website naar een miljoen bezoekers per dag laat staan de honderden miljoenen per dag die bedrijven als Facebook en Twitter voorbij zien komen. De truck is dus simpel weg groeien van af een simpele basis die met het vervangen van de backend in het achterhoofd is gebouwd.

Het enige probleem dat ik met Hadoop en vergelijkbare oplossingen heb is dat het zo ver weg staat van de "standaard" oplossingen die iedereen kent dat ondersteuning en ontwikkeling me simpel weg veel te veel geld gaat kosten. Als ik zo'n systeem bouw moet ik er minimaal 15 jaar mee kunnen werken zonder dat ik over vervanging na wil hoeven denken. Schalen doet het wel maar wie kan het ondersteunen en er voor ontwikkelen? Natuurlijk zijn er wel mensen maar de markt is beperkt en dus zijn de kosten hoog. Het is als het verschil tussen Java en C++ ik kan zonder enig probleem een heel blik Java developers open trekken en ze met tientallen tegelijk aannemen, maar C++ developers zijn een stuk moeilijker te vinden en kosten om die reden simpel weg een stuk meer. Zeker als ik op zoek ben naar goede developers en niet naar mensen die al wel eens C++ geschreven hebben op school of voor het een of andere hobby projectje.
Ik zou dan ook zeker om te beginnen nooit met Hadoop of iets dergelijks aan de slag gaan simpel weg omdat ik de kosten zeker in het begin onder controle wil houden en later altijd als nog kan overstappen naar een platform dat beter schaalt maar meer geld gaat kosten.
Je moet niet vergeten dat Hadoop eigenlijk vooral wordt gebruikt voor offline processing. Voor zover ik weet is het daar ook niet in eerste instantie voor bedoeld. Als er gezegd wordt dat Twitter Hadoop gebruikt, gaat dat vooral om de analytics zoals trending topics uitrekenen (ja ook storage, maar dat is minder essentieel). Typisch iets dat niet hoeft te gebeuren wanneer een bezoeker op een link klikt, maar iets dat als proces op de achtergrond draait en af en toe updates produceert. Hetzelfde geldt voor zoekindexen bouwen, dat is ook een achtergrond proces. Dus of je er iets mee moet hangt ook af van de vraag: heb jij dergelijk grote data problemen dat je tegen schaal problemen aanloopt (dus het helpt niet meer om meer machines neer te zetten)? dan is hadoop je vriend.
Google gebruikt Map reduce voor zijn Cafeine database (de Google zoek machine). Deze database wordt geschat op zo'n 200 PetaByte :-)
Met Federation kan een uitgevallen master node worden opgevangen. Deze recente uitbreiding van HDFS creëert een aantal alternatieve ingangen voor het file system. Met deze extra NameNodes is een veelbesproken single-point-of-failure verholpen
Dit klopt niet helemaal. HDFS Federation verzorgd een sharding concept voor je namenode namespace. Dit houdt in dat je je namenode metadata over verschillende servers kan verspreiden, en dus beter schaalt. Als er dan een namenode uitvalt wordt een deel van je data niet beschikbaar.

Met Hadoop HA heb je dus een Backup Node die i.c.m. een shared filesysteem / fencing. Een beetje ala de Red Hat Cluster Suite. Dit lost de namenode SPOF op, en niet Federation zoals het artikel doet vermoeden.

Om wat meer achtergrond info te geven: De HDFS metadata wordt in de namenode metadata opgeslagen. Je kan dit zien als de metadata van een filesysteem (wat het eigenlijk ook is - de namenode namespace heeft de metadata van HDFS). In de namenode metadata staat exact welke datanode welk HDFS block heeft en welk bestandje op HDFS in welk HDFS block staat. Elk bestandje gebruikt pakweg 150 bytes (volgens de HDFS guru's, niet zo snel een bron bij de hand) in de namenode namespace, en aangezien dit allemaal in memory staat heb je bij 500 miljoen files flink wat geheugen nodig (pakweg 80GB aan heap space).

Hier komt HDFS Federation om de hoek kijken - door je namespace metadata over verschillende namenodes te verdelen c.q. sharden kan je je namenode namespace en dus je Hadoop cluster beter opschalen naar hele grote getallen. Op een gegeven moment ga je gewoon tegen de heap space limitaties aanlopen van de namenode.

Lang verhaal kort: Federation heeft wel eens waar niet echt een spof maar een deel van je cluster gaat nogsteeds offline bij een namenode die uitvalt. Hadoop HA is de enige echte oplossing voor de namenode SPOF.

Voor de mensen die ermee willen spelen. CDH4 Beta 1 is sinds een paar dagen uit een heeft alle toeters en bellen aan boord die ik hierboven heb beschreven.
Met de cloudera manager is het mogelijk om in één keer een compleet Hadoop cluster uit te rollen. Ik heb dit zelf gebruikt in een project en moet zeggen dat het erg fijn werkt. De installatie van het cluster verloopt via een duidelijke webinterface. Ook het toevoegen van extra nodes kan via deze webinterface.

Zie: http://www.cloudera.com/products-services/tools/
Ik begrijp niet helemaal wat je punt is. Er zijn inmiddels overal diensten rondom hadoop als paddestoelen uit de grond aan het schieten, dit is er inderdaad een van. Cloudera is misschien wel de meest profilerende (=goede marketing) hadoop service verlener, het is lang niet de enige. Het rijtje aan Hadoop gerelateerde service verleners is niet niet klein: Amazon en Microsoft (!) voor platforms, Datastax, Splunk en ik kan nog wel even doorgaan aan hele rijen leveranciers van eigen Hadoop distributies (zoals Cloudera doet)
Overigens: onder "Internet-raamwerk voor de grote jongens" zouden wel heel wat meer technologien genoemd mogen worden. O.A. Mark Logic en Lexis Nexis hebben ook wat ijzers in het vuur die qua performance totaal niet onder doen voor Hadoop (sterker nog: uit tests die wij hebben gedaan was de maturity van die tooling groter). De community achter Hadoop is groter, ja dat is waar.
Grappig dat je MarkLogic noemt. Ze hebben vorig jaar versie 5 uitgebracht met heel veel nieuwe functionaliteit én een connector voor Hadoop. Daarbij verzorgt (als ik me niet al te zeer vergis) Hadoop de procesflow, terwijl MarkLogic voor de storage en (een deel van) het feitelijke werk gebruikt kan worden.
Interessant artikel!
Watson, die computer van IBM die Jeopardy won, draait volgens mij ook Hadoop :)

Overigens lijkt me zo'n cluster wel lastiger debuggen als b.v. een hoge load hebt. Je kan minder makkelijk problemen isoleren en optimaliseren. Maar je kan er aan de andere kant wel heel makkelijk er een paar nodes bijzetten.
Yup, op SUSE Linux Enterprise: http://en.wikipedia.org/wiki/Watson_(computer)#Software

Talen onder andere Java, C++ en Prolog :D
Ik heb tot nu toe tweemaal met Hadoop mogen spelen; eenmaal voor een grote Nederlandse webshop en eenmaal met een Nederlandse handelswebsite. In beide gevallen Hadoop losgelaten op de access logs, en daar kun je best wel veel info uit krijgen.

Zie bijv. ook een blogpost van mijn collega die veel met Hadoop etc doet, laat zien wat je met een bakkes aan Twitter data kunt.

Nog een opmerking: Programmeren voor Hadoop is op zich goed te doen, maar in Java is het nogal 'code-intensief' - voor elke Map of Reduce mag je een interface implementeren en nog meer van dat boilerplate inkloppen.

Voor Scala is er nu het Scoobi framework, waarmee je met weinig code en functionele statements complexe Hadoop map-reduce jobs kunt bouwen. Als je veel met Hadoop doet is het zeker iets om naar te kijken.
Interessant artikel :) Zou wel graag meer van dit soort artikelen willen zien.
Ja inderdaad! Meer nerd artikelen over nerd software! Al die nieuwe video kaarten en nieuwe quad cpu's voor telefoons ken ik nu wel. Meer meer meer!
Hadoop is niet voor Nerds. Hadoop is geen nerd software.
met Hadoop kan je zeer snel zeer grote databestanden minen. Er is bv een storage leverancier die gebuikt Hadoop om trending in fouten te analyseren.
Juist, maar de hr afdeling verzint die oplossing niet.... dit is vrij serieuze software, niet voor het gemiddelde mkb inzetbaar en voor a technische mensen niet te bevatten. Voor ons wel. Wij zijn nerds. Dus Hadoop is voor nerds.
Wij gebruiken het ook voor onze website en we zijn qua grootte toch echt een mkb. Dat iets geschikt is voor de grote jongens maakt het nog niet ineens ongeschikt voor de kleinere :+
Toevallig op techdays ook naar een presentatie geweest die vooral over Hadoop ging. Mocht je dus wat meer informatie willen moet je even zoeken naar de presentatie van Gert Drapers - Big Data Big Deal.

Erg interessante materie. Jammer dat ik nog niet in het vakgebied opereer waar het eventueel in te zetten is.
Naar mijn idee is dit artikel volledig (op pagina 4 en 5 na) op deze presentatie gebaseerd. Misschien te ver gedacht, maar de opbouw en informatie van de eerste drie pagina's komt zo goed als exact overeen inclusief de illustraties.

Helaas worden in dit artikel geen benchmarks gegeven in vergelijking met Microsoft Sql Server Parallel Data Warehouse of Oracle Data Warehousing. Deze (hard- en software)oplossingen gebruiken SQL dus voor het gros van programmeurs toegankelijk en direct bruikbaar.

Daarnaast is naar mijn idee Big Data, Hadoop, MapReduce vooral een nieuwe (marketing) term voor Full Text Search, alleen dan op commodity hardware.

Edit: 'Sql' aan tweede paragraaf toegevoegd en 'commodity hardware' aan derde.
Edit 2: Naar aanleiding van reactie van Wilbert de Vries strike-though toegevoegd.

[Reactie gewijzigd door Dronefang op 22 februari 2012 09:50]

Dat lijkt me onmogelijk aangezien dit artikel al voor Techdays is geschreven :)
Bedankt voor de informatie, ik heb mijn reactie op jouw info aangepast.
Tweakers was zover ik weet aanwezig op de TechDays, dus ik vermoed hetzelfde. Opbouw is inderdaad zo goed als identiek.

Binnenkort dus een special over Windows Azure :+
Ik kreeg als Expert Panellid al we(e)k(en) voor TechDays een mailtje of ik input wilde leveren voor een Hadoop artikel, dus het is waarschijnlijk toeval of Microsoft heeft de presentatie geleend van Tweakers ;)

PS: ik weet geen snars van Hadoop, niet mijn vakgebied zegmaar :+
Uitstekend geschreven artikel!

Ik ben zelf een tijdje bezig geweest om te kijken naar de mogelijkheden van Hadoop, maar kwam al snel tot de conclusie dat het veel te groot is voor onze situatie...

Geinige is wel dat EMC onlangs de Greenplum oplossing wilde aanbieden voor een ander probleem waar we mee worstelen, maar dat is niet doorgegaan...

Hoe dan ook: Leuk stuk, en ik hoop dat je er nog wat meer gaat schrijven! :)
Hadoop is geen wondermiddel omdat Facebook en Yahoo het gebruiken.
Zie het meer als een kant en klare tool om BigTable achtige zaken op een flexibelere manier te verwerken en beheren.
Hadoop heeft het voordeel dat je eenvoudig je analyses kan wijzigen maar
als je heel veel data moet verwerken en bijna altijd hetzelfde ermee moet doen dan zijn er oplossingen die vele malen efficienter werken dan Hadoop.

Ook kunnen de kosten van een Hadoop cluster in een Amazon cloud nogal uit de klauwen lopen omdat je waarschijnlijk nogal veel data aan het verslepen bent. En daar rekent Amazon je ook graag nog even op af.
Zeer interessant artikel. Kunnen we hier meer naar krijgen?

Ik denk dat er veel Tweakers.net-bezoekers naar een hoger level getild willen worden. :-)
Wat is 'veel voldoende kennis'?

En eerste alinea suggereert dat je een prachtig internetbedrijf uit de grond kan trekken, maar dat je daarvoor wel een groot serverpark nodig hebt. Een serverpark is nog altijd een middel, en geen doel op zich ;-)

Op dit item kan niet meer gereageerd worden.



Microsoft Windows 10 Home NL Apple iPhone 6s Star Wars: Battlefront (2015) Samsung Galaxy S6 Edge Apple Watch Project CARS Nest Learning Thermostat Besturingssystemen

© 1998 - 2015 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True