optimizing a image extraction process
This is my Problem Statement: 

I built a system that extracts top few relevant images, given a URL, by using the keywords associated with it. However, this takes more than 10 seconds, so my next step is optimizing this. 

My Approach to optimize it:

Is to crawl the web or use freebase/dbpedia and store in key-value storage like redIS or risk,  and have the **key** as a set of keywords and the **value** as the list of links/to/images, and query this database when I want to extract images. As this will be stored in Cache, I'm expecting this to happening in "flashing-speed". Of course, there are going to be complications in getting images from this data-store, the number of images that I need to rank with respect to certain keywords, is reduced, etc. 

Do you think this approach will work ? Could there be any other approach to the same problem?
I'm using **Python** for the whole process and I'm planning to use redis/cassandra/riak for it. 
optimizing a image extraction process
===

This is my Problem Statement: 

I built a system that extracts top few relevant images, given a URL, by using the keywords associated with it. However, this takes more than 10 seconds, so my next step is optimizing this. 

My Approach to optimize it:

Is to crawl the web or use freebase/dbpedia and store in key-value storage like redIS or risk,  and have the **key** as a set of keywords and the **value** as the list of links/to/images, and query this database when I want to extract images. As this will be stored in Cache, I'm expecting this to happening in "flashing-speed". Of course, there are going to be complications in getting images from this data-store, the number of images that I need to rank with respect to certain keywords, is reduced, etc. 

Do you think this approach will work ? Could there be any other approach to the same problem?
I'm using **Python** for the whole process and I'm planning to use redis/cassandra/riak for it. 