For those with their ears close to the news coming from the tech world, you may have heard about a curious milestone being achieved on YouTube at the beginning of December this year.
There was a post on YouTube’s Google Plus account on the 1st December 2014 regarding the ‘Gangnam Style’ music video from the South Korean rapper Psy. You know the one, where he does that bizarre dance in a variety of inconvenient places with South Korean girls in close proximity. I’m still waiting for a ‘Gangnam Style’ dance on ‘Strictly Come Dancing’ and it gets ‘a 10 from Len’ myself.
But what prompted YouTube to post ‘Gangnam Style has been viewed so many times we had to upgrade…’ on Google Plus?
Well, we all know the aforementioned video went viral on its release making news headlines around the world. Since then the traffic leveled off but the views have continued to steadily pile up to this day. Its total views on YouTube in the first week from December topped 2,147,483,647 views.
So, is that number a particular problem? It’s only a simple integer value after all.
The word ‘Integer’ comes from the Latin for ‘whole’ abbreviated to ‘Int’ in digital development and is used extensively within all programming languages. It is a number that can be written without a fractional component, for example the number could be, ‘20’, ‘4’ or ‘-299’. If fractional components are included like ‘4.6’ or ‘-299.043’, the number is then termed as a ‘Double’ or a ‘Float’. There is a difference between those two as well, but I’ll save you from that particular piece of technical babble.
Anyway, for any piece of data or value, it must occupy a portion of the computer’s available Random Access Memory (RAM). As the number gets larger, it requires more RAM. Seems obvious right? The largest number that can be represented by a 32bit computer system is 2,147,483,647. That’s 2 to the power of 32, halved to allow an equal number of negative integers, minus one spot, which is used to represent zero.
Did Psy’s ‘Gangnam Style’ break YouTube as it would appear the 32bit system used by YouTube wasn’t enough to satisfy the world’s demand for watching crazy dance moves that many Dad’s have attempted to mimic since (or perhaps even before it was released)?
It was actually noted by Google’s engineers that it would overflow the 32bit limit when the video hit over 2 billion views back in May. So, where did YouTube go from there?
The fix was as simple as changing the memory space allocated to that data point from 32-bit to 64-bit. It’s a relatively small change but the memory footprint is doubled. So, what’s the 64-bit limit I hear you ask?
Well, it’s 9,223,372,036,854,775,808, a whopping value. 64-bit integers are already in use for calculations involving many trillions of currency transactions or to represent astronomical distances and 64-bit has been around since the mid 70’s. It’s going to take awhile to reach anywhere near the limit for a 64-bit integer, or is it?
It’s worth mentioning that the total views of the video didn’t actually break YouTube’s code base or the Internet in any meaningful sense and nor did Kim Kardashian for that matter. What is most remarkable about this is that the number loosely correlates with a quantity of people. Strictly speaking, it’s a play count on a video. The number is only implied as some people would have viewed the video more than once but it is still a huge number nonetheless. So it’s an interesting problem rather than a computational problem, nor is it an example of an internet meme or viral content spiraling out of control. It is rather that we have just seen a population of active users overflowing the previously accepted limits of mathematics in computing.
The release of Mac OS 10.7 and iOS 7 introduced 64-bit processing to the Apple’s hardware and mobile platforms, one year before ‘Gangnam Style’ was released in July 2012. It’s not the height of the total number, so much the overall mass of YouTube’s user base that necessitated the need to upgrade to 64-bit.
Thinking further on about single technical platforms where a large number of people interact with it, Facebook would be a prime example and yes, it does use the 32-bit system but Facebook still has a way to go with 1.35 billion users to exhaust it’s 32-bit range of available ID numbers for each user.
But as the world’s population continues to swell and more Internet users from the emerging world markets such as China and India become online permanently, what happens then? The number of people in the world already exceeds the limits of 32-bit integers, thrice over. It currently stands at around 7.125 billion people. What’s more is that a good portion of that population are going to be in procession of or have access to a wide combination of smartphones, laptops, tablets and other wearable technologies.
‘Big Data’ is a buzzword we hear often now, the term is used to represent the study of data sets that are too large to be processed using conventional techniques and no, that doesn’t mean just opening it in Excel. Excel can only open a data set with a pitiful maximum of 1,048,576 rows anyway (that’s 2 to the power of 20). But maybe these conventions need to change now and evolve since the number of people who engage with technology is no longer a 32-bit matter.
How soon would it be for the problem to become a 128-bit or a 256-bit matter and for that data to be processed at a quantum level? We may need to be installing more RAM and needing faster processing power earlier than we first originally thought.
Excerpts from Wired, http://www.wired.co.uk
For those that wish to add to the running view total, click the following link: https://www.youtube.com/watch?v=9bZkp7q19f0
Thinking of all the time we spent watching the said video, we could have built the Empire State Building 20 times, built London’s Olympic Park twice, built Stonehedge five times, built the Burj Khalifa six times, built the Great Pyramid four times and rewritten Wikipedia 1.5 times.