+4 votes
191 views
Post and review answers and feedback to answers in the comments section of this post.
asked in Estimation by (560 points)
edited by | 191 views

3 Answers

+1 vote

First clarify if the question is referring to individual computers or servers or both. Also does a tables count as a computer?

Breaking down the personal computer first
Approach: Number of employees x person computer per employee

Ask if they will tell me number of employees. If not them ask for Google’s revenue last year – I will assume 100 billion if no info is given. Then get to a revenue per employee number — to estimate that assume 200k average cost per employee and Google gets a 10x return per employee so 2 million revenue per employee.

so 2 billion / 2 million = 50k employees
total personal computers = 50k x 1.1 (assume spares and test devices account for .1 additional per employee) = 55k computers

——

if addressing servers

I’d break this down into google used servers for core applications and services and google cloud servers used by other companies

approach 1:( total data on available on the internet + total data unique to google (maps & youtube ) x terabytes per server = total servers needed x redundancy factor = total servers globally

Step #1 – internet achieve servers
Estimating total internet size:
Lets break websites into 3 sizes
Small: assumed size 100 mb (blogs, simple small business websites, etc)
Medium: assumed size 10 gb (corporate sites, medium e-commerce sites, etc)
Large: assumed 5 tb (nytimes, yelp, etc)

Lets assume there there are 1 billion sites and the distribution looks like (70% small, 25% medium, 5% large)
Small = 700 million small sites or 70,000,000,000 MB (70 PB)
Medium = 250 million medium sites or 2,500,000,000 GB (2.5 EB)
Large = 5 million large sites or 25,000,000 TB (25 EB)
total ~27.6 EB

Assume 5 TB per server

Step #1 = 27,600 TB / 5 TB = 5320 (round to 5000 for simple math) to servers to store internet’s data

Step #2 — google unique data servers
Going to just estimate a number for the sake of being lazy but would follow a patter like miles mapped X photo per mile. Youtube minutes of video uploaded per person (break into professional and amateur) X (MB per minute for each bit rate of video stored)
Assumed 5 EB for google maps and 10 EB for youtube
Step 2 = 15,000 TB / 5 TB 3000 servers

Step #3 – total servers

5000 internet achieve + 3000 google unique data 8000 servers

Step #4 – redundancy

Lets assume each of these servers are backed locally 5x so 40,000 servers in each datacenter

Assumed they have this data in data enters in 15 regions around the globe

40,000 x 15 = 600,000 servers

answered by (34 points)
+1
I would love to understand this answer a little more. What does internet achieve mean? Why would Google archive the whole internet in its servers? Its crawling websites for search and it creates an index for everything that it crawls but why would it store/duplicate everything in its own servers?
0
There is an error in the calculation. If the large sites are 5% of 1Billion, that means that there are 50Million large sites. Using this logic number of servers seem pretty high. What can be a better estimation here
0 votes

I think this question is referring to the total number of computers that are being used for hosting purposes at Google.

To calculate this number, I will need total size of world data currently stored at Google. And hard drive size of each computer. I can assume that each computer can store 5TB.

I’m struggling with coming up with a way to estimate the total amount of data that exists on the Google servers. Any ideas?

answered by (216 points)
0 votes

Clarification questions:
By computer you mean the servers that google use to provide its services to users and enterprises?
It could also mean the Computers employees use to work (laptops/desktops). Google has ~ 80,000 employees

Assumptions:
One way is to think in terms of investments. 1 server that Google uses probably costs average $1,000/server. Some more/some less.
I don’t know how much Google invests in compute/server, but I know investments in network infrastructure was 10b$/3 years (3b$/year). This is much more than compute I assume as it involves also physical infra like laying fiber.
Let’s assume investments in compute is around 500M/$. Considering Google’s revenues of 100B/year, this would represent 500/100 000= 0.005 = 0.5% of revenues which might be reasonable.

500M$/1000$ = 500,000 servers/year

I don’t know for sure what the life of a server is, but network equipment is 3-5 years before being depreciated. I assume server less so I will assume 3 years before it becomes obsolete or depreciated.

Google is growing so is the number of severs acquired to serve its users.
I assume 30% YoY revenue growth. Let’s assume server’s acquisition is also growing at the same pace (keeping the 0.5% of revenues in server investments).

Equation:
Let’s say in the past 3 years google acquire = 500,000 (current year) + 0.7 x 500,000 (previous year) + 0.7 x 0.7 x 500,000 (previous/previous year) = 1,095,000 Servers.

There is still some servers from the 4th prior years that have not yet obsolete/depreciated. 500,000 x 0.7^3 = 170,000.

So this would give us around 1,2 million servers!!!

Sanity Check:
How many users google has? I know there are 7 services with over 1 billion monthly active users (Search, Gmail, Android, YouTube, Google Plus, Google Maps and Chrome. The other many Google services probably account for additional 3 billion users.
So Google probably serves around 10 billion users monthly.
10 billion users in 1 million servers -> 10,000 user / server

Makes sense?

answered by (13 points)

Please log in or register to answer this question.

Privacy - Cookies - Terms - Contact