Mycket populär tjej
Nästa komponent som är byggd internt på Facebook är Cassandra. Detta är ett omtalat och mycket populärt verktyg, i praktiken en distribuerad, kolumnbaserad databas som till stora delar påminner om Googles Bigtable. I Facebooks fall används den för att hantera mailfunktionen.

Ytterligare en specialare är Scribe. Med så många händelser som sker på Facebook är det inte lätt att hålla reda på allting – att logga vem som gjort vad och när de gjorde det kräver ett ruskigt snabbt system, och det är just vad Scribe är.

För bakomliggande analys använder man sig av Hadoop, en motor med öppen källkod som fungerar som Mapreduce och är mer än väl lämpad för att hantera stora datamängder. I juli 2011 var det inte mindre än 30 petabyte i klustret – en ökning med 50 procent från året innan. Facebook har dessutom byggt tillägget Hive för att det ska gå att köra sql mot Hadoop, så att tjänsten blir lättare att använda.

I en jättelik miljö är det snarare regel än undantag att många olika programmeringsspråk används. I fallet Facebook finns bland annat nämnda php, erlang, java och C++. För att kunna kommunicera mellan dem har man byggt definitionsspråket Thrift, så att man slipper enas om ett språk.

Facebook har släppt källkoden fri för nära nog alla sina egenutvecklade verktyg och anpassningar. Allt det som nämns här ovan finns att ladda ner fritt, och mycket av det används också av andra stora webbplatser, som Yahoo, Twitter och Digg. Förbättringsarbetet är dessutom evigt på Facebook. De har en speciell grupp som ständigt letar upp flaskhalsarna i systemet, som de sedan med alla till buds stående medel försöker få bort.


Kan knäcka Facebook
Alla tror inte på Facebooks sätt att lösa de tekniska problemen. En av de mer uttalat kritiska är Michael Stonebraker på databasutvecklaren Vertica. Enligt honom kommer Facebooks teknikval att knäcka företaget.


Michael Stonebraker, teknisk chef, Vertica.
– Problemet ligger i att MySQL tar upp för mycket resurser, säger han. Facebook kommer att få skriva om alltihop. Och det kommer att ske snart. Cassandra, fortsätter Michael Stonebraker, är bra för vissa funktioner. Men att offra acid-konceptet generellt är en hemsk idé.

Det är dock inte alla bjässar som använder specialteknik till allt. Det ser man om man tittar på datamängder internt på stora företag. Datalager har i många år varit samlingspunkten för all information på företag. Så fortsätter det att vara, men vissa saker har förändrats.


Bjässarna dominerar
Här, liksom i så många andra företagsfall, är det en handfull giganter som dominerar. Öppen källkod och låga priser är inte lika viktigt som pålitlig support. SAP, Oracle, IBM och Microsoft är de allomfattande spelarna medan Teradata är det stora specialistföretaget. Vertica är en liten uppstickare.

Auktionsplatsen Ebay använder de vanliga leverantörerna till sina datalager, som är ett par av världens största. Redan för något år sedan gick de upp i petabyteklassen i sina båda huvudsystem. I dag tar dessa upp ett dussintal petabyte i datorhallarna.
Det första är uppbyggt som ett traditionellt datalager. Med ett 72-noders Teradatakluster kan de hantera kopiösa mängder information effektivt. Hundratals källor matar den stora besten med värden av alla de slag.

Resultatet i form av tvättade data presenteras sedan till tiotusentals användare på olika sätt. Sammantaget handlar det om flera miljoner frågor varje dag.

Vid sidan av det här har de också ett lager för loggar från webb och nätverk. För det är EMC Greenplum leverantör. Här är volymerna ännu större än i Teradatasystemet. Totalt adderas hundratals miljarder rader varje dag. Det motsvarar mellan 50 och 100 terabyte dagligen.

I det här fallet är det inte många användare som är intresserade av informationen. I stället används delar av resultatet som källa till det andra systemet. Logglagret fungerar alltså mer som ett slags ”försystem”.

Att de traditionella bolagen fortfarande hänger med bevisar att vanliga databaser inte på något sätt är passé, inte ens på toppnivåerna. För lejonparten av organisationer är de mer än nog. Det är bara när behoven är väldigt speciella som de extrema varianterna kommer till pass, och precis som Gartner säger är det inte bara volym det handlar om.


Verktygen sprider sig
Men det är ändå sannolikt att de olika verktygen från big data kommer att leta sig ner till vanliga företag, i takt med att det blir enklare att använda dem. Till exempel har Hadoop funnit många kunder, framför allt då som ett anpassat etl-verktyg för väldigt stora datamängder. Att använda traditionella program, i stil med IBM Datastage eller Microsoft SSIS, kan vara svårt och långsamt.


Skräddarsy din egen lösning

Ska du bygga ett eget system för att hantera stora datavolymer i snabb takt finns det saker att dra lärdom av. Först och främst finns det ingen patenterad standardlösning – det gäller att du anpassar dina val till dina exakta behov.

Vidare ska du inte välja en enda lösning. Bryt ner de olika delarna och välj det bästa för varje komponent. På det sättet slipper du trycka in system i skor som inte passar. Vidare kan du börja tänka på skalbarhet direkt. Det kan kännas dumt att fundera på hur du ska köpa in nya servrar när ni ännu inte har volymerna, men tänker du inte rätt från början kan det bli kostsamt att göra om.
Men om du vet säkert att ni, liksom de allra flesta företag, inte kommer att nå upp i toppklassen kan du luta dig tillbaka. För även om datavolymerna knappast kommer sjunka blir det inget problem. Både hård- och mjukvara direkt från hyllan kommer att kunna hantera informationen. Det är bara när det blir gigantiska datavolymer som du behöver oroa dig.




Illustration: Jonas Englund