The new chess set-up at office.
Cool, ain’t it?
With a wonderful year coming to an end, we at Althea celebrated Christmas and bid farewell to 2012 on a joyous note. Thanks to Praveen and Sam for organizing the “treasure hunt” which had all of us trying to be Sherlock, hunting for hidden notes, which would be our ticket to a box of delicacies. Trust me, the spirit in some of us put even the likes of Indian Jones to shame. Special thanks to Paul for sending us a delicious cake for Christmas(Center picture in collage). In midst of all this, to spice things up even further, Secret Santa was organised at office . All genres of gifts, from Chocolates to Cycling gloves, Wristwatches to a game of Othello were delivered secretly by the respective Stealth-Santas. Looks like our intern, Abhishek couldn’t have picked a better time to join us at office.
In summary, the Christmas tree glowed in all of its beauty, jingles were played, cakes were cut and gifts were exchanged as we welcomed the new year with all spirit and joy. Looking forward to 2013 with high aspirations as ever, here’s wishing you guys a fantastic year ahead!
Folks @ Althea.
There was a painter’s odd hack table gathering dust in our office. With winter at its peak, it only looked fit for firewood.
But, I went and asked our amazingly resourceful man-friday, Mr.Gangaram whether it can be turned into a respectable chess table for us amateurs at Althea. In his usual smiling and assured manner, he said that something can be done. I would check with him once in a while, but didn’t realise until a few days later that he was silently working with the table on the terrace, square by square, blacks afters whites after blacks to perfection.
And this is what he created in just a week, in his break times, while taking care of a dozen other things we go to him for!
And the games begin.
Occupied as we were, celebrating Deepavali at Althea, little did we know that it could get even better. Yes, we had Smita joining us for the celebrations at Office! As often said, when it comes to catching up with friends to celebrate, the more the merrier
We have been thinking of sharing some of our platform experiences with the developer community for a while and the announcement of AWS EC2 Spotathon 2012 provided just the right push to start it off. Watch this space for updates on how the Shufflr platform uses EC2 spot instances to its advantage in various subsystems and use cases.
Over 4 million users across 170 countries discover online videos of their interest every day on Shufflr’s iPad, iPhone, Android, Windows8 and Facebook apps.
Shufflr takes the ‘Daily Fix’ approach for delivering a personalised discovery experience to its users – with an algorithmic combination of various signals such as the users’ social graphs, hot topics / buzzing videos / celebrity activity on the web, popular content sources, live events etc.
The Shufflr platform on AWS comprises of many independently scalable services such as user signup, authentication, authorisation, online video indexing, algorithmic filtering and classification of videos based on meta-data, making & tracking social graph connections, social data fetching, personalisation algorithms per-user and per-group, creating and delivering activity streams, developer APIs for apps etc. The platform services communicate with each other over well defined API contracts and SLAs.
Shufflr platform services that are of non-realtime, offline data-fetch / compute nature have flexible SLAs and are prime candidates for cost optimization with AWS EC2 spot instances (though the overall cost of is planned & managed as a function of reserved, on-demand and spot instances). Some such spot-instance friendly services in Shufflr are, social graph data fetchers, video indexers and filters, background (asynchronous) tasks, test (staging / pre-production) environments etc.
While it is typical to think of spot instances purely as cost savers, we see it as a reminder for asking sound architectural questions such as:
And we find that, a probably-not-so-obvious aspect of spot instances is that it lends to two conceptually different use cases:
The latter use case helps us innovate better due to our thinking on the lines of:
“These instances cost less and we have budgeted for the worst-case of on-demand pricing. So, let’s see if we can infer any more patterns by fetching and mining a bit more social data / compute a few more iterations to improve recommendation accuracy.”
Shufflr’s service oriented architecture lends itself to applying independent cloud deployment / configuration strategies and scaling up/down individual sub-systems as required. We will outline some examples of our spot usages in this context.
Yes, we like drawing them by hand and sticking them in the aisle for all to see.
(To illustrate the workers running in parallel, we need to get a better composite screenshot. We hope to post an update soon.)
Just this year, we have seen 75% cost savings till date over 51000 spot instance hours (normalised to m1.small equivalents, across various spot instance types we’ve used in multiple availability zones). This is only one slice of our AWS platform costs but, as they say, every thousand$ counts
These cost savings came about with a combination of experiments on our bidding strategy. Initially (there weren’t many AZs and regions), we used to bid for spots with in our main AZ (us-east-1c) at on-demand prices. In general we would obtain the instances at about 1/3rd that price. Sometimes we would notice that, the spot prices were shooting higher than on-demand in our AZ, while other AZs continued to give lower prices (notably, us-east-1e).
We slightly altered the strategy to move across AZs when our bid wouldn’t succeed at on-demand pricing for a given timeout duration. That gave us a fairly good hold on the spot costs.
Of late, the ability to bid in the lowest cost AZ has reduced the guess-work because of AWS spot pricing historic data and current price APIs. Someday, we will rig up the perfect price bidding strategy algorithm (and use the same to pick winning stocks in the stock market .
While scaling down spots, our auto-scale strategies (a) turn down only those spots that are about to complete an instance hour and (b) utilise a spot-instance as long as possible for the current hour, before terminating.
There are certain job queues in the Shufflr platform which are serviced by background workers, even though the nature of those jobs are different from typical relaxed-latency jobs in other subsystems. These job queues are meant for asynchronous processing of elements in the web request chain (so that our app servers – Nginx+Passenger+Rails – are free to service the next web requests). Such asynchronous processing has stricter latency bounds in our use case and hence needs a very health ratio of workers to jobs, to provide predictable throughput, even during user load spikes beyond the upper control limit. To maintain such a ratio and complete servicing these job queues in the shortest possible duration, an array of spots with workers are launched in parallel.
We have been using spot instances since a long while and we are very glad with the cost savings as well as the spot-friendly elements we have built (and continue to build) into our platform architecture. As soon as we can get some free cycles, we would love to share these with the open source community.
As the festive celebrations kicked off at Althea, we had some wonderful effort at office to deck it up ethnically for the occasion, courtesy Sarala. After prayers were offered to the Almighty, delicious Kadubu prasadam (Fried sweet dumplings) were feasted upon by all of us to our hearts content. This year around, we at Althea also resolved to celebrate a brighter, calmer (read less-noisy) and environment-friendly Deepavali.
Wishing all of you a very happy, prosperous, bright and safe Deepavali. Fiat Lux.
The time is bright & sweet with the joy of deepAvaLi (yes, that’s how it is said here in Bangalore, while our brethren from around the country also say ‘divAli’ and ‘dIwAli’).
We celebrate it as a five day festival of prosperity, joy, lights, victory and love.
Happy deepAvaLi to all of you from the folks @ Althea
At the times when we are away from hacking code, its become a common practice at Althea to turn to the chessboard, unleash strategies and battle it out, to emerge as the regicide. With the team striking a good balance between work and play, “chilling at the workplace” sure makes a lot sense at Althea.