who in there right mind would want to download a 20mb sitemap... and how is your sitemap so big, create seperate pages for them if its that big.
Google actually requests that you keep their version below 10MB. After that, you'll need to set up a sitemap file that points to each of the other sitemaps.
Likely because it's all for the same domain... the "sitemap index" file is an XML file that lists two or more other sitemap files... One file to submit which tells them which other files to request. Just like the sitemaps themselves list many pages of the website.
If you use something like gsitecrawler it will automatically make the sitemaps around 40,000 urls in size and create a sitemap index. I always upload the sitemap-index.xml.gz version to save me bandwidth and who knows Google may prefer the compressed version as it saves them time? At the same time I make a urllist.txt.gz for Yahoo Cheers, Dave