The thread has drifted a bit before I could give my 2 cents, as for why people use some prefixes in some instances, but not in others. (The question as to why a kilogram and not a gram is the basic unit was best answered with the difficulty of making a precise gram as brass cylinder in Paris when the base units were decided upon. I think that sounds plausible.)
My WAG, based on my memories of high school chemistry, biology, physics, astronomy, and popular science books: in some areas, like biochemistry, you use nano- and micrometers because things are always the same size, and it’s easy to picture them, if you know the size of a normal cell is this many nano - or mycrometers, then a virus is a lot smaller than that, etc.
But in Astronomy, giving distances in kilometers is better than in Giga and Mega, because distances vary wildly.
As for kiloliters and similar: where would you use this? In everyday life, you buy a liter of milk; and I doubt scientists often use megaliters.
Lastly, while I learned the correct prefixes, I found simplest to use was the base 10 expression, esp. when doing calculations. I guess that’s why my teachers preferred it, too. So when a newspaper says sth. is a hundred thousand kilometers, everybody can write down the base 10 for that, but not everybody knows right away how many zeroes a Giga or Peta has. (Even with computers: you know that 1.44 MB is very small today, 14 GB is okay, 144 GB is big enough for video files. But how many zeroes does it have in Bytes?)
And expressing things in base 10 avoids the confusion that always happens when untrained translaters mistranslate English Billions to European (German) Billions (it’s Milliarden, and a german Billion is more than a Milliarde.)