Abstract-In this paper, we develop a content caching and flowlevel BS-user association framework in a network environment with the spatial variation of content popularity. Because the studied content caching and BS-user association functions are tightly intertwined with each other, and their decision time scales can be very different in practice, our design considers the time-scale separation of these network functions to tackle and develop the BS-user association and content caching policies. Specifically, we propose an optimal BS-user association algorithm, namely OptUA, operating in the short time scale for a given content caching solution, and a greedy content caching algorithm, namely GCC, operating in the long time scale. The GCC algorithm exploits the submodularity characteristics of the objective function which ensures that the GCC algorithm achieves a constant fraction of the optimal performance for most feasible caching sets. Via extensive numerical studies in heterogeneous cellular networks, we demonstrate that proposed OptUA and GCC algorithms outperform other algorithms which do not consider spatial variations of content popularity in terms of average end-to-end delay per content request and average system load per content at each BS.