Sådan fungerer Googles datacentre

På konferencen Google I/O åbnede Google døren til sit maskinrum og fortalte om hardware- og software-infrastrukturen i sine mange datacentre, der driver verdens største søgemaskine.

Artikel top billede

Det sker ikke så ofte, at Google fortæller om, hvordan verdens største søgemaskine egentlig fungerer.

Hvordan infrastrukturen er skruet sammen i de mange datacentre, der trækker et væld af netbaserede applikationer som Google Earth, Google Apps og andre har hidtil stået hen i det lidt uvisse for udenforstående.

Men på konferencen Google I/O i forrige uge, løftede Jeff Dean fra Googles System Infrastructure Group lidt af sløret.

Et af designkriterierne bag Googles datacentre er at anvende rimeligt enkelt og billigt hardware og i stedet bruge penge og ressourcer på at udvikle fejltolerant software.

"Vi mener, det er bedre at have dobbelt så meget hardware, som ikke er så pålideligt, som at have halvt så meget, som er mere pålideligt. Pålideligheden skal skabes via software. Hvis man har 10.000 maskiner kørende, så er der noget, som vil dø hver dag," sagde Jeff Dean ifølge CNet.

Mens mange udviklere stadig er ved at vænne sig til tanken om parallelprogrammering på flerkerne-processorer, er det noget som Google er i fuld gang med. Ja, det er en nødvendighed for at kunne få ordentlig performance.

Søgegiganten har bygget sin teknologi på en arkitektur, der spænder over tusindvis af computere, så på den vis har Google allerede taget springet til parallel-programmering.

"Vi kan rigtig, rigtig godt lide multikerne maskiner. For os ligner multikerne maskiner en masse små maskiner som er rigtigt godt forbundne. De er relativt nemme for os at anvende," siger Jeff Dean.

Centralt i software-infrastrukturen er den hellige treenighed Google File System, BigTable og MapReduce.

Sådan virker Google File System

Google har sig fra virksomhedens spæde begyndelse koncentreret sig om, hvordan man effektivt lagrer store mængder data, og hvordan man kan foretage lynhurtige søgninger i de enorme datamængder.

Google-grundlæggerne var udstyret med gode ideer, viden om søgealgoritmer og ikke så mange penge for snart ti år siden.

I stedet for at gå til en af de store storageleverandører og købe state-of-the-art storageteknologi, valgte selskabet at udvikle deres eget storagesystem baseret på, hvad amerikanere kalder "dirt cheap commodities."

Det var billige hverdagscomputere udstyret med Linux og samlet i et såkaldt cluster, en hel klynge af computere.

"Google vurderede, at de kunne gøre det bedre selv. Google burde egentlig gå ind i storagebranchen. Det er ligesom dengang, CERN fandt ud af, at det ikke kunne betale sig at købe supercomputere, men bedre kunne betale sig at opbygge sin egen supercomputer af billige Linux-maskiner i megaclustre," siger IDC's storageanalytiker Claus Egge.

Larry Page og Sergey Brin skrev selv softwaren, der gemmer, søger og fremfinder information fra klyngelageret. En tidlig version af softwaren blev kaldt BigFiles, hvilket senere blev til Google File System (GFS).

En grundlæggende design­filosofi i Google File System er, at enhver komponent - software eller hardware - vil fejle på et tidspunkt. Vil fejle, ikke kan fejle.

Derfor er det så vigtigt at udvikle fejltolerant software.

"Komponentfejl er normen, ikke undtagelsen. Vi har set problemer forårsaget af applika­tionsfejl, operativsystem-fejl, menneskelige fejl og nedbrud i diske, memory, netværk og strømforsyninger. Derfor er konstant overvågning, fejlfinding, fejltolerance og automatisk recovery integreret i systemet," skriver Google-arkitekterne Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung i deres whitepaper om GFS. (pdf)

Til bords med BigTable

For at få noget struktur på de mange data som gemmes i GFS, anvender Google BigTable.

Kommercielle databaser fra virksomheder som Oracle og IBM blev ikke anset som velegnede til Googles formål.
"De kan ikke operere i den målestok som Google har brug for, og hvis de gjorde, så ville de blive for dyre," sagde Jeff Dean på Google I/O ifølge CNet.

Derfor byggede Google sit eget distribuerede storage system.

BigTable, som Google begyndte at designe i 2004, anvendes i mere end 70 Google projekter, deriblandt Google Maps, Google Earth, Blogger, Google Print, Orkut. BigTable anvendes også i Googles kerne-søgeindeks.

Ifølge Jeff Dean håndterer den største instans af BigTable omkring 6 petabytes data som er spredt ud over tusindvis af maskiner.

For at kunne finde rundt i de mange data på de tusindvis af servere, har Google udviklet MapReduce.

MapReduce - stadig vigtigere for Google

Google betegner MapReduce som "en programmeringsmodel og en tilhørende implementering for processering og generering af store datasæt"

Første version af MapReduce blev begyndt af Google i 2003.

MapReduce anvendes til mange forskellige søgerelaterede funktioner. Eksempelvis til at finde ud af hvor mange gange et specifikt ord optræder i Google's søgeindeks; det kan give en liste over websider, hvor et ord optræder og kan liste alle websider som linker til et bestemt website.

"Med MapReduce kan Google relativt hurtigt bygge et indeks, der viser hvilke websider der indeholder "new," "york," og "restaurants". "Man bliver nødt til at gennemløbe tusindvis af maskiner for at få det afsluttet i rimelig tid," siger Jeff Dean.

MapReduce anvendes i stigende grad internt i Google. I august 2004 kørte det 29.000 jobs. Det tal var steget til 2,2 millioner i september 2007. I løbet af den periode er gennemsnitstiden for et job faldet fra 634 sekunder til 395 sekunder, mens output fra MapReduce tasks er steget fra 193 terabytes til 14.018 terabytes, fortæller Jeff Dean.

Som med GFS er det vigtigt at MapReduce er fejltolerant og kan overleve maskinnedbrud.

Ifølge en præsentation fra 2004 formåede MapReduce at afslutte et job på et cluster med 1800 maskiner, hvoraf de 1600 maskiner gik ned.

Annonce

Annonceindlæg fra Jysk IT

Sikkerhed skal være en del af driften

Skal virksomheder stå stærkere mod angreb og kunne udvikle sig, skal sikkerhed, drift og forretning tænkes sammen. Det er tanken bag Jysk IT’s ambition om at skabe en “sikker fremtid” for kunderne.

Navnenyt fra it-Danmark

Elbek & Vejrup A/S har pr. 15. august 2026 ansat Anne-Sofie Andreasen som Project Manager i Projekt & Service. Hun skal især beskæftige sig med ledelse og koordinering af projekter og serviceopgaver. Hun kommer fra en stilling som konsulent med fokus på digitale løsninger hos XFLow. Hun er uddannet cand.it. i IT, Kommunikation og Organisation. Hun har tidligere beskæftiget sig med analyse, udvikling, test og implementering af løsninger samt udarbejdelse af brugervejledninger. Nyt job

Anne-Sofie Andreasen

Elbek & Vejrup A/S

Netip A/S har pr. 11. august 2026 ansat Emil Kristoffersen som IT-Supporterelev ved netIP's kontor i Thisted. Han er uddannet Fisker, - Emil har dermed valgt et karriereskifte. Nyt job

Emil Kristoffersen

Netip A/S

Softwarevirksomheden Idura, som udvikler løsninger til digital identifikation og autentifikation, har pr. 1. september 2026 ansat Maria Juliane Friedrichsen, 47 år,  som Office Manager. Hun skal især beskæftige sig med at holde overblik og sikre, at alt på kontoret kører, som det skal. Hun kommer fra en stilling som Office Manager hos Kontorhotellet H2M. Hun er uddannet professionsbachelor i ernæring og sundhed og har en korrekturlæseruddannelse. Hun har tidligere beskæftiget sig med korrekturlæsning og den daglige drift af kontorer. Nyt job

Maria Juliane Friedrichsen

Softwarevirksomheden Idura, som udvikler løsninger til digital identifikation og autentifikation,

Softwarevirksomheden Idura, som udvikler løsninger til digital identifikation og autentifikation, har pr. 1. august 2026 ansat Maria Binger, 44 år,  som CFO. Hun skal især beskæftige sig med den finansielle styring i takt med Iduras vækst i Danmark og internationalt med fokus på blandt andet forecasting. Hun kommer fra en stilling som Director Business Finance hos Danelec. Hun er uddannet cand.merc.aud. fra Copenhagen Business School. Hun har tidligere beskæftiget sig med finance hos Agillic, Cobham SATCOM og Saxo Bank. Nyt job

Maria Binger

Softwarevirksomheden Idura, som udvikler løsninger til digital identifikation og autentifikation,