Spuul streams Indian movies and television shows to viewers over the web and generates revenue from paid subscriptions and advertising. It launched the Spuul website in 2012, followed by smart TV and mobile applications for streaming content. “The idea is that you can watch the same content on any device,” says Michael Smith Jr, Chief Product Officer. “If you’re interrupted you can simply pick up from where you left off.” Spuul gives viewers the option of watching the service free or paying for a subscription without advertisements. The company, headquartered in Singapore, has 20 employees, including eight IT workers.
Spuul began in 2010 and operated its video service on the cloud from the beginning. The company needed a cost-effective infrastructure that could stream high-resolution video to users in several countries and scale based on the number of movies or TV shows streamed to users. The company also wanted to capture and store a range of data types for different areas of the business. The accounting team uses information about the number of users watching a particular video, their location, and device type to make correct payments to Spuul’s 50-plus content partners. The content team analyzes the data to drive decisions about purchasing and promoting video libraries. Spuul’s chief product officer wanted to be able to check the health of the entire business quickly from a single location.
“We effectively needed the entire business to run on a single dashboard,” says Smith. “We needed to capture and analyze data volumes which were climbing by between 1GB and 1.5GB per month without purchasing expensive servers or storage systems.”
Why Amazon Web Services
Several members of the IT team were already familiar with Amazon Web Services (AWS) from previous roles, and its availability in the region were were an advantage for Spuul. The company also liked the self-service capabilities delivered through the AWS management tool and ability to manage and configure the AWS Cloud environment remotely. Netflix’s presence on AWS was also a factor in convincing the company to run its services in the AWS Cloud. “We’re looking to emulate Netflix in the way we build our service and how we run our company,” says Smith.
Spuul also considered where AWS had data centers and edge locations for content delivery. “We live and die by the quality of the video we stream to our users,” says Smith Jr. “Our tests and analyses found that network latency levels when watching movies and television programs delivered using Amazon CloudFront were more than acceptable — particularly for users in our high-growth markets such as India and the United States.”
CloudFront delivers video content globally with low latency
Spuul developed its content management system, applications and website in the AWS Cloud in just over two months. The Spuul website is a Ruby on Rails application that runs on four Amazon Elastic Compute Cloud (Amazon EC2) instances during normal periods. Spuul uses Auto Scaling to scale from four medium-size instances to 20 or more during high demand. “The scalability maintains performance and ensures user loyalty as we build our portfolio of offerings,” says Smith.
As demonstrated in Figure 1 below, content producers send files to Spuul, which are stored in an Amazon Simple Storage Service (Amazon S3) bucket. Spuul sends the files to Brightcove Zencoder, (a cloud-based, video-encoding service provider), to transcode the content for online viewing. Once the file is transcoded, it’s sent to another Amazon S3 bucket and then to Amazon CloudFront. Amazon CloudFront operates as a content delivery network (CDN) for caching all images and video assets. Additionally, Amazon CloudFront acts as a distribution network for segmented files that a media player can integrate and send to users as an online movie or TV show viewable by mobile devices or set-top boxes. “We’ve found that CloudFront had works well for the segmented delivery of files,” comments Smith.
Figure 1. Spuul Architecture on AWS
Real-time data analysis
Capturing, storing and analyzing significant data volumes is integral to Spuul’s business model. A MySQL database on Amazon Relational Database Service (Amazon RDS) stores core information about Spuul’s users and movies. Amazon DynamoDB logs real-time data about video choices, viewing time and device type. Spuul collates the data in Amazon Elastic MapReduce (Amazon EMR) for processing and uploads it to an Amazon Redshift data warehouse for analysis, reporting and presentation using Spuul’s internal dashboards. The Redshift data warehouse holds about 30GB of data which between one and 1.5 GB of data per month.
Smith also rented software from the AWS Marketplace, including Aspera Server high-speed file transfer software and the TIBCO Jaspersoft. “We feel it’s better to rent a service rather than buy the product,” he says. “If we rent, we don’t usually have to deal with maintenance and support. We just pay for what we use and switch it off when we don’t need it. “This keeps our costs down and means we don’t need a lot of administrators keeping servers running and updating software.”
As the IT team built its video streaming service, they made onsite visits to AWS for help from AWS technical and product staff before the launch of the Spuul website. “As we’ve grown in complexity and usage, AWS has been very good about bringing technical people through to help us with our issues,” says Smith. “In return, we’ve provided insights that they’ve used to update the Amazon CloudFront. I don’t find that level of interaction with other vendors in this market.”
“AWS enabled us to quickly launch and run new products,” says Smith Jr. “On AWS, we’re able to take movie files from India and make them available to users anywhere in the world for viewing within minutes, which is really important in allowing us to deliver our television service.” The availability and performance of the AWS Cloud also meets Spuul’s needs. “We’re a 24x7 service operating in a global marketplace and AWS gives us everything we need to stay up and running, says Smith. “We’re also saving thousands of dollars by not purchasing additional servers and storage equipment.”
The ease with which Spuul can manage and automate a range of business and technical processes on AWS means that the small company needs only one administrator to manage its infrastructure. This allows other team members to focus on identifying and entering new markets and seizing new business opportunities. Additionally, the security features built into the AWS infrastructure complements the security features of its encoding product, which runs in the AWS Cloud. “This helps limit the extent to which valuable studio content is pirated,” says Smith.
Using Amazon Redshift with Jaspersoft from the AWS Marketplace allows Spuul can capture the data it needs for different business needs. “This combination of tools enables us to create reports quickly and easily, instead of having our technology team customize code to pull data from multiple sources so we can create a particular report,” says Smith. “We can create reports in seconds using real-time data, which allows us to make very quick decisions about our business, including fine-tuning our mix of content, identifying, and exploiting opportunities across different countries and segments. “For example, I can quickly see how many minutes of content people in Pakistan watched yesterday, how much they paid for it, or who viewed content on iOS or Android devices last night. We can identify trends as soon as they appear.”