1. A computer implemented method for storing a dataset of image tiles comprising one or more processors to implement the following steps of: (a) determining a number of zoom levels; (b) accessing a cluster file, the cluster file including a first subset of the zoom levels; (c) accessing the image tiles, each of the image tiles having a tile zoom level and a tile location; (d) for each of the image tiles, computing a cluster name based on the tile zoom level and the location; (e) for each of the image tiles, if the cluster file has a name that matches the computed cluster name, (i) computing an image tile pointer for the image tile associated with the computed cluster name; (ii) storing the image tile pointer in a fixed length index in the cluster file; and (iii) storing the image tile associated with the computed cluster name in the cluster file according to the image tile pointer; and (f) for each of the image tiles, if the cluster file has a name that does not match the computed cluster name, (i) determining an other subset of the zoom levels, the other subset not including the zoom levels of the first subset; (ii) creating a new cluster file, the new cluster file having a new cluster file index of fixed length, the fixed length based on the other subset of zoom levels, the new cluster file associated with the tile location; (iii) computing an image tile pointer for the image tile associated with the computed cluster name based on the tile zoom level and the tile location; (iv) storing the image tile pointer in the new cluster file index in the new cluster file; and (v) storing the image tile associated with the computed cluster name in the new cluster file according to the image tile pointer.