introduce cached datastore extension