Skip to main content

A Giant called Google...



    Wondering what you will be reading in this post today and what is "Google Giant"! Well, I was working on a simple project a couple of months back and that is the time when I was amazed and by the size of data that Google Maps servers might be having! As most of the readers (developers and enthusiast included) would know or might have noticed, Google maps are rendered by stitching small images together. You must have observed this on quite a number of occasions, when you see grey tiles when you have a slow internet connection in particular. It takes time for the images or tiles as we call them to be displayed.

    Let us try and estimate what could be the size of the Google Maps data! Before proceeding, let's make a few assumptions and considerations.
1. Let's consider the Google Street View maps only.
2. The zoom level that is considered for the calculations is 21 - the max zoom level allowed on Google Maps API.
3. All the numbers are just an estimate and not actual values.

    Google maps zoom level goes from 0 to 21, displaying 1 image at zoom level 0 and 4,398,046,511,104 (about 4 trillion i.e. 4x10^12) image or tiles at zoom level 21. 4,398,046,511,104 tiles at zoom level 21 represent the entire world surface which is about 510.072 million sq km (196.940 million sq mi). Lets say, about 70.9% of the world is water and 29.1% is land, which would mean about 3,118,214,976,373 tiles would all be blue in color. About 30% of the land area is under forest cover, which means about 383,949,460,419 tiles would be green in color. The remaining 895,882,074,312 will have multiple colors depending upon what part of the land is part of these tiles. If the numbers have gotten too large, let's tabulate them.

Sr. No. No. of tiles Color of tiles
1 3,118,214,976,373 Blue
2 383,949,460,419 Green
3 895,882,074,312 Multicolored

    Now that we have a clear picture of the number of tiles and the colors they would have, let's try and estimate the size of these tiles. Each tile or image is 256x256 pixels and each blue and green color tile/ image would then be around 4KB each. This means that the total size in KB of all the green and blue colored tiles/ images would be about 14,008,657,747,168KB; that's about 13,046.5TB. This is huge and still there are about 0.8 trillion tiles left whose size needs to be calculated.

    Let us go ahead and do that as well. Since these remaining tiles are multicolored, the size of each tile ranges in between 13 to 17KB. For our calculations, let's assume that the size of each of the multicolored tile is about 15KB. That would mean that the total size of these tiles is about 13,438,231,114,680KB; that's about 12,515TB.

    That means; if my math is not wrong; the size of all the Google Map tiles for Google Map Street View at zoom level 21 alone is about 25,500TB.
 
    This 25K TB space is required to save tiles only for one type of Google Map at the highest zoom. There are tiles at other zoom levels and also tiles of other map types - Satellite Map and the Terrain Map. The labels that appear in the Hybrid map type is also a separate layer on top of the Satellite map. That means about 25K TB more for the satellite map at zoom level 21 and about the same for hybrid map at the same zoom level. Plus about a 15K TB for the labels layer in hybrid map. If the approximation is to believed, Google has around 100 thousand TB space for the maximum zoom level of all the map types.

    Yes, it seems comical to attempt such a calculation where every step of the way requires an approximation. That's why in the end I end up with a such a wide chasm of error. And, of course, this rough analysis does not cover area distortion introduced by mapping the globe's points onto a two dimensional surface. But, there you have it - the story of "Google - A Giant".

Comments

  1. Replies
    1. I loved them too...I had those in mind, but when I actually put them in ink today, I too came to appreciate them all the more...:)

      Delete
    2. I can die ...happy to know that eternity exist! thank's Google

      Delete
    3. Excelent investment. Do you have considerer include at your job BI since an aplication GIS. Today exist the option BI include GIS but not GIS include BI.

      I wait that very soon you reach your Master

      Member GIS Linkedin

      Delete
  2. Exept... Google probably reuses the same blue and green tiles for all water and forests. So, this means the 13,046.5TB calculation you made is actually just 8KB. The total number of storage then drops to about half. =)

    ReplyDelete
    Replies
    1. What you are saying is quite possible Alex. Bu I still think there would be several copies of the same blue or green image that would be rendered. But yes. The size would definitely be diminished.

      Delete

Post a Comment

Please leave your comments here...

Recommended for You

Playing with the markers and info window bubbles...

    In the last few posts, we have seen some marker examples and some information window examples. Now, lets do something interesting combining these two things. Just writing that "This is an info window" in the information bubble is not very interesting! And I know this...Have gone through the same phase!     So, today we will do something interesting! We will display the latitude- longitude co-ordinates of the point that the user clicks on the map! Doing this is not at all complex! Copy paste the following code and you will see for yourself a map coming to life!     The output of the above code looks as seen in the result section above! If you have any queries regarding the above code please comment on the blog post or feel free to contact me at my mail ID .

jQuery Mobile's Next Big Step

Spatial Unlimited changes to The UI Dev After being hosted on blogger 😣 for the last 6 years 📆, this page has finally been moved to Github.io This means a few things for you, dear reader! You will be redirected to the new page shortly! ⏩ ⏩ ⏩ Once crapy HTML is now better looking Markdown ! 😍 😍 The entire blog is a Github repo ! 😍 😍 Spatial Unlimited is now The UI Dev 😍 😍

Merry Christmas

    Hello everyone! Its been a long time since I last wrote. Got real busy with some exciting projects and exciting opportunities. It has been a crazy and really exciting and knowledgeable journey this year. Hope you all had a great year and are looking forward to the holiday season! I wanted to take this opportunity to wish you all a very happy Christmas!     As you all relish the goodies, decorate every nook and corner of your home and enjoy the get-togethers... May the joy and festivities continue to radiate in your lives, long after Christmas is gone! Stay safe, enjoy the holidays and get refreshed to join me on an enriching journey in the new year! I'll make sure that I write consistently and write about new things I learn.     Signing off for the holiday season!

Celebrating 200K visitors!

    I’m so excited that I have finally reached this milestone. 200K blog hits! Yes, we have crossed 200K visits.     I never thought when I started this blog in November, 2010 that I would have much to offer that people would appreciate so much. But today with more than 200,000 page views, more than 500 followers and several Likes and +1s the response to this blog has been nothing short of amazing. Now I have the added responsibility of contributing better code samples and better articles.     At the end, I would  like to thank all visitors and members for making this blog successful. I am so happy to have readers such as you. Thank you all who have been reading. If you are a regular reader, or if you just dropped by today, do comment and tell me what you liked about the blog!

Custom markers...

    We have now seen numerous examples of markers and info-windows in Google Maps API v3. We will now see a last example where-in we will replace the customary marker icon with an icon of our choice! In the example that follows, I have shown 5 beaches in Goa along the Konkan coastal strip! These are nothing but markers, just with a different icon! Lets have a look at the following code!     The output of the above code looks as seen in the result section above. This is a simple code that goes here! If you have any queries or doubts or suggestions regarding this example you can comment on the same or feel free to drop me a mail ! In the meantime...Happy Mapping!