I am working on a file archive tool, written in go, to add random file access to .tar.gz of arbitrary size while maintaining compatibility as a valid .tar.gz.
The idea is to embed in gzip metadata the tar file index, and compress the gzip using small chunks of 1MB, whose offsets are also indexed in the metadata.
Since the indexes are written in metadata fields, it is invisible for normal linear decompression.