add new memory data engine func