SQL Analytics actually uses several layers of caching. Some documentation about the different layers can be found here in the documentation.
There are two primary layers that users will experience.
1) The first is that the actual data results of specific queries are stored in memory for subsequent query runs. So if you run the same query twice, it won't have to recompute at all.
2) The second type is delta caching, which is where actual copies of the files that are read from data storage are created on the local SSD's on the endpoint clusters. Then when those files are needed in subsequent queries the cached files on the SSD's are accessed rather than going back and pulling the data from the source again. With this level of caching, you are actually making a copy of the data you are querying on the SSD's of the cluster.