Splitting and caching the data