To je skvělá otázka, nad kterou jsem dost přemýšlel. Shrnu své ponaučení:
-
Lucene/Solr můžete snadno použít místo MongoDB pro téměř všechny situace, ale ne naopak. Zde to shrnuje příspěvek Granta Ingersolla.
-
Zdá se, že MongoDB atd. slouží účelu, kde není vyžadováno vyhledávání a/nebo fasetování. Zdá se, že je to jednodušší a pravděpodobně snazší přechod pro programátory, kteří se detoxikují ze světa RDBMS. Pokud na to není člověk zvyklý, Lucene &Solr mají strmější křivku učení.
-
Není mnoho příkladů použití Lucene/Solr jako datového úložiště, ale Guardian udělal určitý pokrok a shrnul to do vynikajícího slide-decku, ale i oni jsou nezávazní zcela naskočit do rozjetého vlaku Solr a „prozkoumat“ kombinaci Solr. s CouchDB.
-
Nakonec nabídnu naše zkušenosti, bohužel toho o obchodním případu moc prozradit nemohu. Pracujeme na rozsahu několika TB dat, což je aplikace téměř v reálném čase. Po prozkoumání různých kombinací jsem se rozhodl zůstat u Solra. Zatím nelituji (6 měsíců a stále se to počítá) a nevidím důvod přecházet na jiné.
Shrnutí:pokud nemáte požadavek na vyhledávání, Mongo nabízí jednoduchý a výkonný přístup. Pokud je však pro vaši nabídku klíčové vyhledávání, pravděpodobně bude lepší držet se jedné technologie (Solr/Lucene) a optimalizovat ji sakra – méně pohyblivých součástí.
Moje 2 centy, doufám, že to pomohlo.