The big question of course, is why Apple is storing this information. I don’t have a definitive answer, but my little-birdie-informed understanding is that consolidated.db acts as a cache for location data, and that historical data should be getting culled but isn’t, either due to a bug or, more likely, an oversight. I.e. someone wrote the code to cache location data but never wrote code to cull non-recent entries from the cache, so that a database that’s meant to serve as a cache of your recent location data is instead a persistent log of your location history. I’d wager this gets fixed in the next iOS update.
In case you don’t already know, Security researchers have revealed that iPhone tracks user’s location and stores it in a secret hidden file which is replicated to the computer once it’s synchronized with the device.
The file contains data about your latitude and longitude along with the timestamp. This information can be easily accessed by jailbreaking the phone, unfortunately, on the computer even without that. Moreover, the file is not encrypted and can be read by just anyone using a simple app.
Apple is yet to comment on this issue. If it really is a bug, Apple is likely going to fix it in the next iOS update. Temporarily, so you can use untrackerd App, it is available on Cydia to prevent your iPhone from recording all your locations.