MongoDB jako alternativa k IBM Notes úložišti

Při vývoji aplikací, častěji v poslední době narážíme na požadavky zobrazovaní data ve formě souhrnů, přehledů, filtrů, čili klasického portálového náhledu ve formě tabulek a grafů. Ačkoliv takové přehledy lze v Xpages nagenerovat přímo z Notes dokumentů a pohledů, je tato funkcionalita poměrně složitá na programování a zároveň ani rychlost zpracování dat není nijak závratná.

M2

Proto pro tyto účely používáme databázi MongoDB, která má velmi podobné vlastnosti jako Notes databáze, ale je výrazně rychlejší a pro dotazy a filtry různého druhu, lépe připravená. Jedná se také o dokumentově orientovanou databázi, která nevyžaduje striktní schéma a je připravená pro velké objemy dat, včetně vložených souborů. Data v databázi jsou uložená v JSON formátu, což umožňuje ukládat u jednoho dokumentu i přidružené dokumenty, čímž se stávají operace rychlejší. MongoDB je tak i v mnoha případech rychlejší než klasické SQL databáze. Zde je příklad dotazu na data v MongoDB z Java třídy XPages aplikace.

M3

Pro účely naších aplikací v XPages jsme si vytvořili převodní můstek, který „pumpuje“ data z Notes databází do MongoDB v pravidelných intervalech. Výhodou tohoto přístupu je i to, že v MongoDB mohou být data z několika Notes databází a tím je pak možné dělat jednoduše dotazy přes několik aplikací, což je jinak dost složité v Notes.

Samozřejmě na data v MongoDB lze přistupovat nejen z Notes, ale i z jiných webových aplikací, jako je Java či PHP, takže pokud někdo nemá Notes nebo potřebuje z nějakých důvodů převést aplikace jinam, MongoDB je alternativou, která stojí za zvážení. Zvláště, když tato databáze podporuje i replikace a je zdarma.

 

M4

Posted in: