A picture a day: Flickr’s storage growth16 Oct 2006
Just how many pictures does Flickr receive every day? I found a way to estimate the # of images that they add to their database, and another way to get average (original) file sizes for those images. The result? Their storage growth, i.e. their upload bandwidth, and the growth rate of their storage system (how many days to reach a terabyte?)
Number of photos per hour
You see here that weekends, Sundays specifically, are the most busy days for uploads. You can see peaks of almost 68.000 pictures an hour (almost 20 pictures a second). Peaks are around 22h CET (or 1 PM PDT – in California). The lowest rates (still around 20.000 photos/hour) are 12h apart: 10h CET (1 AM PDT).
The average inflow of pictures is: 38.400 photos/hour. That is around 10 photos/second, 920.000 photos/day.
Average photo size
And how big are those pictures? I have found a way to estimate average filesize (and maximum, while I’m at it). It’s not perfect, but quite accurate. How? That’s classified. I could tell you, but then I’d have to … Anyway: these are the numbers:
On average, a picture uploaded to Flickr is 555.2 KB big. They receive files up to 7.3 MB (what number of megapixels would that be?) and quite a lot of 3MB images. My Canon 350D makes 8 megapixel images (3456 x 2304 pixels) that are between 2 and 4 MB large. But the ones I send to Flickr (after Picasa processing) are typically smaller: 1200 x 800 (300 – 600KB) or 1024 x 683 (200 – 400KB).
What happens if we multiply both numbers?
38.400 pictures/hour x 555,2 KB/pic = 21,3 GB/hour = 5,9MB/sec or 47,3 Mbps. Storagewise, this is 15,3 terabyte/month of new pictures. Thank God storage prices are dropping.
Five years ago, a server with a few hundred gigabytes of storage – one of many needed to handle uploads of member photographs – would have cost Flickr about $250,000. Today, Mr Butterfield says, “you can get a terabyte of storage for about $5,000”. (via ft.com)
Peak bandwidth usage: let’s take 60.000 pictures/hour x 3MB/pic: 180GB/hour = 50 MB/sec or 400 Mbps. This is probably still peanuts compared to their outgoing bandwidth.