Multiple dimensional search, use complex data structure so speed up seach and update, and fullfil the requirement