Technologien von Retail Rocket

Seit im Jahr 2012 die erste Code-Zeile geschrieben wurde, arbeitet das Entwicklungs- und Datenwissenschaftsteam leidenschaftlich daran, die Welt des E-Commerce zu verändern und vollkommen zu personalisieren.

Hier ein paar Zahlen zu Retail Rocket:
• Mehr als 80 Server (hauptsächlich in Deutschland).
• Mehr als 100 Millionen individuelle Benutzer (einzelne Cookies) werden pro Monat verarbeitet.
• Mehr als 1000 Online-Shops vertrauen Retail Rocket weltweit.
• Mehr als 450000 externe Anfragen pro Minute (durchschnittlich).
• 45 Jahre in Summe wurden an Erfahrung.

Datenwissenschaftlicher Ansatz

Bei Retail Rocket dreht sich alles um die Erkennung der Bedürfnisse von Besuchern eines Online-Shops durch die Analyse ihres Verhaltens und von Produktdatenbanken. Die Generierung von personalisierten Echtzeit-Empfehlungen erfordert alle modernen grundlegenden Ansätze und Algorithmen, darunter:

 
  • Inhaltsfilterung.
  • Kollaboratives Filtern.
  • Vorhersageanalyse auf Basis von maschinellem Lernen und Markov-Ketten.
  • Bayes'sche Statistiken.
  • Echtzeit-Hybrid-Personalisierungsalgorithmen.

… und vieles mehr.



 
Roman Zykov, leitender Datenwissenschaftler bei Retail Rocket, auf der jährlichen Konferenz RecSys 2016 an der MIT University (Boston)
Aktivität in der Gemeinschaft der Datenwissenschaft

Unser Entwicklungsteam ist in der Gemeinschaft der Datenwissenschaft mit zahlreichen Veröffentlichungen und Awards bei Datenwissenschaftswettbewerben sowie Reden bei angesehenen Branchenevents sehr aktiv.

img

 

 

spark
Analyse-Cluster

Für das maschinelle Lernen verwenden wir das Spark Framework auf Grundlage einer Hadoop Yarn Plattform, einem Cluster-System, das die funktionale Programmiersprache Scala verwendet. Für Hadoop-Komponenten verwenden wir für die Datenübertragung Apache Flume, Mahout Machine Learning und Oozie Scheduler.

Das Team von Retail Rocket unterstützt eine GitHub-Datenbank mit zahlreichen interessanten Projekten: Simple A/B-testing engine in JavaScript, Spark MultiTool Library for Scala, Hadoop cluster deploying scripts using Puppet.

iis8
Frontend

Fast alles, was sich ein Benutzer ansieht, wird von IIS-Webservern verarbeitet. Der Code wird geschrieben in C #, Asp.Net MVC. Wir verwenden folgende Datenbanken: Redis, MongoDB, PostgreSQL.

Wenn wir Interaktionen zwischen verteilten Komponenten ausführen müssen, beispielsweise für die Berechnung des Benutzersegments basierend auf dem User Agent (Zielgruppenprofilerstellung), verwenden wir Thrift. Und zum Aufbauen von Datenströmen von den Online-Shops zu verschiedenen Untersystemen verwenden wir das bereits erwähnte Werkzeug Flume transport.

git
Entwicklungsprozess

Wir sind Verfechter der Methodik der kontinuierlichen Bereitstellung, um unseren Kunden die bestmögliche Effizienz zu bieten (Aktuell arbeiten wir mit über 1000 Shops zusammen).

Hierfür verwenden wir eine Kette an Technologien: Git + GitLab + TeamCity mit automatisierten Einheitsprüfungen (mehr als 1200 Anfang 2017), Abnahmeprüfungen und Verfahren zur Code-Überprüfung.