Make more powerful, cache with sqlite.
Implement cache test case.