Scala-Programmierung bei eBay angekommen

Hartmut Schlosser

Wie gut ist eine Programmiersprache in der Industrie verankert? Damit Sprach-Communities diese Frage positiv für ihre Sprache  beantworten können, sind Fallstudien prominenter Unternehmen eine begehrte Quelle. Die Scala-Programmiersprache kann nun auf einen weiteren solchen Use Case zurückgreifen: eBay nutzt Scala im Zusammenhang mit einem Hadoop Cluster.

Alex Cozzi von eBay präsentierte bei der San Francisco Scala User Group die Arbeiten seines Teams bei eBay. Laut Cozzi setzte sich bei eBay vor vier Jahren die Erkenntnis durch, dass für das Überleben der Wandel hin zu einem echten Technologie-Unternehmen zu vollziehen sei. Das Business sei heute nun viel stärker Technologie-getrieben als vor vier Jahren, Cozzi selbst arbeitete an dem ersten großen Hadoop Cluster.

Mit Scala fing man 2010 an. Interessant sind die Gründe für diese Sprachenwahl. Cozzi nennt einerseits die Notwendigkeit, nebenläufige Prozesse zu programmieren, wofür „traditionelle“ Programmiersprachen nicht sonderlich gut geeignet seien.

We need to go parallel, we need to go distributed.

Andererseits ging es in Cozzis Team darum, die technologische Speerspitze des Unternehmens zu bilden. Hier verbot sich also der Rückgriff auf alteingesessene Sprachen und Frameworks. Angesagt waren stattdessen MapReduce mit Hadoop und Scala.

Nicht nur der Spaß am Neuen (und hier lässt sich gut Twitter-Ingenieur Alex Payne zitieren: „Spaß ist ein unterschätzter Faktor für den Erfolg einer Sprache in einem Unternehmen“), sondern auch rationale Gründe sprachen für die Kombination dieser Komponenten. MapReduce, das von der funktionalen Sprache Lisp kommt, versprach besonders gut mit einer anderen funktionalen Sprache zu harmonisieren. Die starke Typisierung Scalas passte zudem gut zu den Enterprise-Anforderungen des sicheren, Compiler-unterstützten  Programmierens (gerade mit Hadoop sei es wichtig, aufgrund der kurzen Durchlaufzyklen die Anwendung beim ersten Mal korrekt zu schreiben). Als weiteren Trumpf nennt Cozzi die gute Interoperabilität mit Java.

Wo die Kombination Hadoop & Scala gut, wo weniger gut funktionierte („chaining MapReduce Jobs is still a pain in Scala“), beschreibt Cozzi in seiner Session:

Neben eBay nutzen übrigens auch Größen wie Twitter, Linkedin, Foursquare, Amazon, Netflix, Xerox, Sony und Siemans bereits Scala in gewissen Teilprojekten. Sind das für Sie Indizien, dass Spring-Legende Rod Johnson mit seiner Einschätzung richtig liegt: Im Jahr 2018 werde Scala die führende „neue Sprache“ und das „biggest thing since Java“ sein?

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Hartmut Schlosser ist Redakteur und Online-Koordinator bei Software & Support Media. Seine Spezialgebiete liegen bei Java-Enterprise-Technologien, JavaFX, Eclipse und DevOps. Vor seiner Tätigkeit bei S & S Media studierte er Musik, Informatik, französische Philologie und Ethnologie.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.