1. Cache je implementována na úrovni slov, v určitých případech ke zrychlení dojde. Pokud třeba máte server o PDA, a každý hledá text PDA xxxxx, tak potom se bude PDA tahat z cache a vyhledávat se bude jen druhé slovo. Nicméně samotný proces vyhledávání je již tak rychlý, že cache je tam spíše jako temporary tabulka, která mimo jiné cachuje, ale hlavně se z ní tahaj přímo výsledky a nikoli jednotlivá slova.
3. Ano je možné navrhnout jej, aby se data ukládala efektivněji. Nicméně se zvýší zátěž databázového serveru a ne PHP serveru. Zatímco já ukládám slovo jedním SQL dotazem, ostatní řešení potřebují minimálně 2 SQL dotazy. Navíc jak říkám, výkonově je mé řešení lepší, protože nevzniká fragmentace a data jsou do databáze ukládány sekvenčně. Z mých zkušeností je lepší řešení než tady něco sečíst a pozměnit raději to všechno naházet na hromadu a pak jednou za čas přepočítat tabulku.