move data layer outside webapp