add persist methods which return data as dict