2021-04-09 08:42:54 +0200 +0200

Prskavčí blog

Jan 28, 2011

Zend Framework a NoSQL pro ukládání logů ve webových aplikací, díl druhý o MongoDb

Jak už jsem psal v minulém díle o CouchDb není žádný problém v použití dokumentových databází na logy. Výhodou je že se nemusíte starat o schema, což se u aplikace tohoto druhu opravdu hodí.

Pro napojení Zend Frameworku na logování do MongoDb musíte mít nainstalovanou MongoDb extenzi do PHP. Bez ní se bohužel neobejdete. Log writer si vytvoříte snadno pomocí extenze Zend_Log_Writer_Abstract a provedete drobné úpravy pro práci s MongoDb jak obsahuje ukázka.

a tímto jste vlastně hotovy. Celý kód najdete na githubu. V ukázce je ještě samozřejmě upravený controller pro zobrazování a obsahuje možnost vytvářet testovací data.

MongoDb můžete nainstalovat lokálně nebo použít hosting mongohq.com, kde základní databáze, která k testování stačí je zdarma. Potom se mi docela hodila utilita na Macu Mongohub, která poskytuje trochu konfortnější konzoli než webová konzole obsahující lokální instalaci. Na hostingu MongoHQ mají pěknou webovou administrační konzoli.

V PHP se kromě vlastní extenze dá ještě dobře použít pro Zend Framework knihovna Shanty Mongo, která zjednodušuje práci s Mongo Db na maximum.

Pokud budete chtít dělat složitější dotazy do MongoDb hodí se SQL to Mongo Mapping Chart.

Případné další tipy se nebojte napsat do komentářů.