Using this app to look at my data, it definitely pings off cell towers, not GPS. With this in mind, I posit that Apple may have the iPhone (and 3G iPad) keep track of cell towers to aid in speeding up its Assisted-GPS, which uses cell towers to triangulate a smaller search area for the GPS satellite. The device would be able to provide location results to the user much more quickly if it had an index of nearby towers.
This would also explain why this data is included in the iPhone backup. It would be inefficient to rebuild the database from scratch if you had to restore your phone.
And to pre-empt the argument of why doesn't Apple include a pre-made database:
Databases take up drive space. The method of logging towers near you makes the data relevant to you, and excludes a lot data that would be largely useless to you.
Addendum: Of course this still results in a database that takes up space, but it wouldn't be nearly as large. The point is that you have a database of relevant data.
- Also, Apple doesn't have to maintain updates to carrier databases when new towers are added. Instead, your iPhone just maps a new nearby tower itself.
Lastly, I haven't seen anyone provide any evidence that this data is transmitted back to Apple. So if this data only exists on your device and its backup file, what's the big deal? Especially since it is probably saving you time when you willingly tell the world where you are via geo-tagged tweets, Foursquare check-ins, and Instagram updates. Never mind that the Camera app geo-tags every photo you take in an instant.