add cache to optimize query of properties

@hmunfru