Newsletter sign-up
View all newsletters

Enterprise Java Newsletter
Stay up to date on the latest tutorials and Java community news posted on JavaWorld

Sponsored Links

Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs

Why Netflix is embracing Python over Java

In a polyglot world, Netflix engineers choose Python for key tasks

  • Print
  • Feedback

Page 2 of 2

Netflix also employs Python to transform applications into deployable Amazon Machine Images with a tool called Aminator. The tool attaches a foundation image to a running EC2 instance, preps it, installs packages into the image, and turns the resultant image into a complete Netflix application. "Simple in concept and execution, but absolutely critical to our success," Rapoport wrote. "Pre-staging images and avoiding post-launch configuration really helps when launching hundreds or thousands of instances."

Netflix has created a slew of Python-based modules for managing and maintaining its Cassandra clusters. The modules use REST APIs to communicate with other Netflix tools for such tasks as managing instances within AWS as well as within Cassandra. Rapoport says "these activities include creating clusters using Asgard, tracking our inventory with Edda, monitoring Eureka to make sure clusters are visible to clients, managing Cassandra repairs and compactions, and doing software upgrades."

What's more, the company's Cassandra squad uses a Python package called JenkinsAPI to for configuring jobs and gleaning monitoring and maintenance jobs in Jenkins, Pycassa for access operational data stored in Cassandra, Boto for communicating with AWS services like S3 storage, and Paramiko to create an SSH connection to instances without having to create subprocesses.

Netflix's list of Python tools doesn't end there. The company's data science and engineering teams use a RESTful Web service called Sting designed to slice and dice large in-memory datasets and produce useful visualizations of the data. "Our data science teams use Sting to analyze and iterate against the results of Hive queries on our big data platform. "While a Hive query may take hours to complete, once the initial dataset is loaded in Sting, additional iterations using OLAP-style operations enjoy sub-second response times," according to Rapaport.

This story, "Why Netflix is embracing Python over Java," was originally published at InfoWorld.com. Get the first word on what the important tech news really means with the InfoWorld Tech Watch blog. For the latest developments in business technology news, follow InfoWorld.com on Twitter.


  • Print
  • Feedback