Milan Kryl

Kryl Blog - RSS

MapReduce - paralelní výpočty odolné proti výpadkům

24. 10. 2004 - 22:24

Google zveřejnil popis výpočetního modelu MapReduce (pdf), který již od února 2003 experimentálně využívá. Kromě automatického paralelního zpracování přináší i zvýšenou odolnost proti chybám.

Výhody pro programátora

Vytvořený programátorský model je knihovna napsaná v jazyku C++. Je inspirován LISPem a jeho operacemi map a reduce. Předpokládá, že bude běžet nad systémem Google File System (GFS). Za to, že se programátor smíří pouze se dvěma operacemi dostane hned několik výhod:

  • transparentní paralelní zpracování
  • odstínění od distribuovaných problémů
  • jednodušší kód celého programu

Příklady použití MapReduce

Omezením na tyto dvě operace přitom není omezen algoritmicky. Za pomoci dané knihovny jde řešit široké spektrum algoritmů. např.:

  • distribuovaný grep
  • analýza logů - četnost URL na které bylo přistupováno
  • distribuované třídění
  • invertovaný index - pro dokumenty vrátí dvojice (slovo; seznam dokumentů, kde bylo obsaženo)

Technické pozadí Googlu

Dokument také seznamuje čtenáře o technickém zázemí, které Google používá pro své služby:

  • využívají se clustery - stovky až tisíce počítačů spojených pomocí přepínaného (switchovaného) ethernetu
  • počítače typicky 2 procesorové x68 s nainstalovaným linuxem a 2-4 GB paměti
  • síťové spojení na 100Mbit a nebo 1Gbit
  • jako úložný prostor jsou použity levné lokální IDE disky (2x160GB) na jednotlivých počítačích
  • na počítačích běží distribuovaný souborový systém, který zajišťuje replikaci a spolehlivost na nespolehlivém hardware
  • uživatelé přidávají jednotlivé úlohy do plánovače, který je potom spouští na clusteru

Určitě stojí za podrobnější pročtení

Čtenář se seznámí s problémy, které nastaly při implementaci. Dozví se zajímavá technická vylepšení a nahlédne pod pokličku technologie, která je momentálně používána i pro zpracovávání nasbíraných dat do indexu vyhledávače Google. Pokud jsem vás nalákal, tak neváhejte a pusťte se do čtení.

Související:

 

Tip: Nevíte čím obdarovat nejbližší? Nechte je napsat Ježíškovi.