No, that title isn’t a typo. Today, the little master, Sachin Tendulkar scored 200 runs in an ODI, the first time that has happened. That’s cricket in case you were wondering.
Cricket is played all round the world most of the year round, which means there are often games happening while you are sitting at your desk at work – or maybe you don’t have Sky Sports and have to follow the scores online even when at home.
So what do most people do? You sit there working while one of your browser tabs is open on http://www.cricinfo.com updating you with the scores. There are other sites too, but from my experience CricInfo’s ball by ball approach gives me the most information.
This is fine when England play Bangladesh, or even for an Ashes match against the old foe Australia for most of the game. However, when it gets to a crucial part of the game – which happened a number of times in the classic 2005 Ashes series or when India play Pakistan (both having a huge number of supporters) – CricInfo and many other websites grind to a halt. In fact, due to CricInfo’s multi server caching setup sometimes the page reloads and has gone back in time!
That’s just not cricket!
Back to today’s game, India are playing South Africa in a 50 over game, two of the top sides in world cricket. Being English I didn’t have CricInfo open for this game, but when, on Twitter, I heard noises that Tendulkar was doing something a bit special I opened CricInfo and saw he was on 193, 1 run from the record and 7 runs from a milestone 200!
I clicked on ‘Full Scorecard’ to see more details of the innings, it took a while to load and when it came up it said he was on 139! I went back and no, he was on 196. The live page then updated and he was on 198, it updated again and he was on 196. It got to the point where he was on 199 needing just 1 run and about 2 overs to go and nothing happened. Cricket fans all over the world were madly clicking refresh, but every time it reloaded it was the same.
I went back to Twitter, searched on #cricket and all was revealed, probably within a couple of seconds of the actual event happening.
So what is the problem here? I wanted to see the rich, ball by ball, information on CricInfo, but the service could not cope. Twitter, and other similar services are designed to cope with this kind of load. CricInfo and other sports sites are not, but could they be?
The Real-time Web
There are certainly a lot of things they could do to help that don’t involve buying more servers and more bandwidth. CricInfo’s page reloads a 25k frame every 20 seconds – a ball is bowled roughly every 40 seconds in a cricket match. How much data on that page changes with each ball? 250 bytes maybe or a bit more at the end of each over, let’s be generous and call it 512 bytes, ie 1/50th of the whole page reloading. Can you see where I am going here?
The Real-time Web is a term banded about regarding lots of things these days, to me it means live data. That means you see new data when it happens, not the next time you check, not the next time the browser checks for you – that isn’t real-time.
It may be better than old style search engines that had to spend hours or days crawling the web to find new content before it was available in a search, but it still isn’t real-time until you are updated automatically.
When were you when Tendulkar scored 200? Unfortunately, I was a few minutes behind!