Aboute the speed there is the webscale kmeans paper: http://www.eecs.tufts.edu/~dsculley/papers/fastkmeans.pdf