Projekt „Nový hledač“
Minihledač - Podmínky pro programátora

Zadání
- stahování a parsování WWW stránek
- vytvoření a zpracování databáze
- generování odpovědní WWW stránky
Práce s položkami databáze je jednoduchá.
Problémem je extrémní velikost databáze – miliardy instancí položek a celková velikost databáze v terrabytech.
Cílem je odezva minhledače na dotaz při hledání do 10ti sekund, při maximálním počtu paralelních uživatelů = 10.

Preferované prostředky
Programovací jazyk: C++.
Operační systém: Linux.
Webový systém: Apache.
Databáze: Hadoop.

Požadavky, vítáno
Schopnost stahovat a parsovat WWW stránky.
Rutina v kombinaci C++, Linux.
Praxe v databázích, pokud možno ve velmi velkých databázích.
Znalost či praxe v Hadoop, nebo schopnost a ochota se tuto databázi rychle naučit.
Schopnost generovat jednoduchou WWW stránku.

Možnost rozdělení na 2 programátory
Vývoj je možno rozdělit na dvě části, které provedou dva programátoři:
- stahování a parsování WWW stránek
- zpracování databáze a odpovídání

Způsob řešení
Nechci řešení "pro zákazníka na klíč".
Celou analytiku včetně procesů, struktury databáze a oken udělám.

Časy programování
Základní část (1.3.-31.5.2011).
Stahování: 1 měsíc.
Zpracování: 1 měsíc.
Odpovídání: 1 měsíc.
Celkem: 3 měsíce.
Optimalizace databáze - volitelná (1.6.-31.7.2011)
2 měsíce.


Výsledky
Pokud bude odezva minihledače po základní části pod 10 sekund, vývoj končí úspěšně.
Optimalizace se provede jen za podmínky, že po skončení základní části bude odezva minihledače 10-20 sekund.
Pokud bude odezva minihledače po základní části nad 20 sekund, nebo po skončení optimalizace nad 10 sekund, vývoj končí neúspěšně.

Cenová nabídka viz další dokument.