I have no idea if this would qualify, but I took a different, rather singular approach. Curious and gracious in advance for any and all feedback. My main question is whether this response goes into enough depth with regards to all the content types that Google Map stores, as I chose to focus uniquely on image storage (but am sure to state that clearly before I began):
Clarifying questions:
- global map or US/sectional map? Assume global
- storage on a single end-user device? Yes
- consider compression in storage? Ignore compression [IMPORTANT ASSUMPTION here]
- satellite, map, street views, or all 3? Assume map
- storage of each map layer or a single layer? Assume most granular map layer
- image storage format is standard JPEG? Sure
For simplicity sake, and because we can easily extrapolate by scaling up at a later point, we will target the most granular map layer on Google Maps. We will therefore ignore all metadata (business/POI/GPS/etc- related data) and focus on the imaging aspect of Google Maps.
A simple formula therefore surfaces with 2 main factors: (photo size / photo) * (# photos)
Assuming no overlap in photos and that each individual photo is stored uncompressed, we can equate the most granular layer of Google Maps to a patchwork of individual high-res JPEGs which take up ~0.5 Mb of storage on average.
Since we’ve already assumed factor 1 to be equal to 0.5Mb, we will focus on estimating the total number of individual photos required for the entire surface area of the globe at the most granular Google Maps layer.
We begin by leveraging our own knowledge of Google Maps. We can estimate that the most granular map layer can fit ~10 average sized US houses back-to-back in one single photo. Assuming the average length of a US house is 30 feet, we estimate the corresponding real-world length of a Google Map photo to be 300 feet at the most granular layer. Assuming square photos, we have 300 ft x300 ft.
Next, we want to divide the surface area of the Earth by this area to see how many individual photos are required.
Recalling that the surface area of a circle is: pir^2 and the surface area of a sphere is simply this multiplied by a factor of ‘4’, we have: 4pir^2. I recall the diameter of the Earth being approximately 8k miles, so the radius therefore being half that, or 4k miles. If you don’t know the radius or diameter of the Earth, you can also estimate this if you know the circumference (~25k miles). The formula for circumference is 2pir, so r = 25k/(2pi) = 12.5k/pi = 4k
Back to our equation, so plugging the value for the radius into the equation yields:
4pir^2 = 43.14(4000 miles^2) = 12*(16 M miles^2) = 192 M miles^2 = 200 M miles^2 (rounding up for simplicity’s sake).
Lastly, we must divide this value of Earth’s surface area by the Earth’s surface area present in one Google Map photo. However, we calculated Earth’s surface area above in square miles but we calculated the photo’s surface area in square feet. We can roughly convert the latter to square miles by squaring the fraction for which 300 feet comprises a single mile (5280 ft). In other words, 300/5280 reduces to approximately 1/X. What is X?
If 30010 = 3000, 30020 = 6000 and 30015 = 4500, one more split should get us closes to our value. Can choose 17 or 18, but will choose: 30018 = 5400. Therefore, we see that 300 feet is approximately 1/18 of a mile. Squaring this (18*18) yields 324. We can round this down to 300 for simplicity sake.
Therefore, we estimate that one most-granular-level photo in Google Maps represents 1/300 of a square mile.
The final step is to divide the surface area of the Earth by the surface area of a single photo, or:
200 M miles^2 / 1/300 miles^2 / photo => 200 M * 300 photos = 60 Billion photos.
Using our assumption that each photo takes on average 0.5 Mb of storage space, this is 30 Billion Mb. Dividing by 1000 for Gb and by another 1000 for the answer in Tb, we arrive at approximately 30,000 Tb or 30 Pb.
A gut check against this value reveals it to be significantly high, although we have chosen to ignore a critical component here: compression. Also, we are talking about storing high-quality photos of the entire surface of the Earth at the most granular level available in Google Maps, so this may not be all that unrealistic given that it’s uncompressed.
If we wanted to extrapolate outwards to include all layers (assume 20 layers total from the farthest zoomed out to this one, the most granular), I would determine at which layer it is necessary to have multiple images. Example, at the most zoomed-out layer, you have a single image of the Earth seen from space. How many “zooms” does it take to get to where multiple images start being required? I would assume at the third zoom, or layer 17 if we were analyzing layer 1 in the above example. Assuming each layer is an equal distance “zoomed out” from the next, you may be able to extrapolate with a simple formula using the storage size of a single photo to the storage size of all photos at the most granular layer which we did above. Not 100% sure at this point however if it would be linear.