Netflix is the best-known multimedia content platform in the world that aims to position itself as an alternative to the worrying piracy of series and movies, offering flat-rate access to all its contents without a limit for a very competitive price. For 3 weeks, this platform is now available in Spain where we can access its complete library of series and movies for less than 10 euros per month, however, do we know how this platform works for servers?
Netflix is not a new platform but has been in the market since 1997. Since not long ago, those responsible for it began to open up to more services with which to offer their content to different countries in the world (each country with an own catalog), currently reaching more than 50 countries around the world.
The company, since its inception, has always been very transparent in its operation. Although a complete guide-summary with all the technical aspects of its operation has not been published, it has been providing information every so often, whenever the opportunity arose, about how the platform was built. The Scalescale portal has decided to collect all this information to be able to know, in a single glance, most aspects of its operation.
The first thing that strikes us is that practically all software that uses the platform is free software. Among others, the most used applications in the backend are Java, MySQL, Gluster, Apache Tomcat, Hive, Chukwa, Cassandra and Hadoop.
As for the codecs used for the video, Netflix does not use a single format, but it has to encode each video according to the device that will play it. Therefore, the main codecs used by the platform are:
- Video – VC-1, H.264 (AVC), VC-1, H.263 and H.265 (HEVC)
- Audio – WMA, Dolby Digital, Dolby Digital Plus, AAC and Ogg Vorbis
Amazon, the heart of Netflix
All Netflix servers are located in the Amazon data center. There the company has EC2 servers used for everything related to computing, for example, to compile data, manage databases and, above all, encode the original videos with different audio and video codecs.
Although all computing is done from the dedicated Amazon EC2 servers, the original video files (provided directly by film producers and studios) are stored securely on the Amazon S3 storage servers. Each of the original films encodes more than 50 times in order to send the format that best suits the device and the user’s Internet connection. As of today, Netflix storage exceeds 1 petabyte and continues to grow day by day, title by title.
As for the CDN, Netflix has the support of large ISPs with more than 100,000 subscribers, who provide a cache server that guarantees a high bandwidth to their customers, necessary to offer their services without problems, at the same time that reduces the traffic generated, thus avoiding saturating the lines with the high traffic that Netflix generates around the world. Within this section, the platform used is a FreeBSD operating system, the free web server Nginx and Bird as a routing daemon for Internet access.
Neural networks, a key point of Netflix
One of the best qualities of Netflix is its recommendation system. This system is composed of many algorithms, although the two most important are Restricted Boltzmann Machines (RBM) and a variant of Matrix Factorization, also known as SVD ++. These two algorithms, quite complex to understand because they function as neural networks, work in parallel to offer users the best recommendation system seen so far.
Netflix also has a website on Github where it explains the use and collaboration in all types of free projects.
What do you think about the operation of Netflix? What is more and what you like least about this platform?