Les coulisses techniques de Deezer Le Big Data au service des recommandations

Deezer ne fait pas que stocker des fichiers sons, il conserve aussi 1 To de logs chaque jour. Ces données permettent de calculer les royalties des artistes, de remonter des chiffres pour les reporting des maisons de disques, ou réaliser des analyses en interne. Ce Big Data sert également à établir les "tops", les classements des morceaux les plus écoutés, et les recommandations pour les radios thématiques personnalisées. Ce que Deezer appelle le "mix".

Deezer fait appel, pour cela, à une souche Hadoop pour le stockage et la gestion des ressources, et au gestionnaire de processus Spark pour accélérer l'analyse de données. Des environnements qui reposent sur 45 machines équipées de la distribution Linux Cloudera. Deezer utilise aussi Elasticsearch, un moteur de recherche open source en mode distribué. 14 serveurs lui sont dédiés. "Si NetApp et Ceph sont utilisés pour le stockage brut des médias et des logs, nous greffons à cette infrastructure le cluster Hadoop pour la distribution des contenus", résume Aurélien Hérault. La cellule Big Data de Deezer a été créée dès 2010.

La délicate gestion des DRM

Se pose aussi la question de la sécurisation des données et de la gestion des DRM (Digital Rights Management, ou Gestion des droits numériques) pour éviter le piratage. "C'est la règle de jeu du streaming", souligne Aurélien Hérault.

Une solution de DRM développée en interne

Deezer a développé en interne une solution de DRM avec un système d'encodage et des clés pour que le "player" puisse lire les fichiers identifiés comme légaux. De leur côté, les maisons de disques posent un tatouage numérique (ou "watermarkent") leurs fichiers afin de connaître l'origine de la plateforme en cas de fuite. " Elles ne nous imposent pas de solutions technologiques. Nous sommes seulement soumis à une obligation de moyens", explique-t-on chez Deezer.

Enfin, Deezer utilise la technologie de fingerprinting qui consiste à créer une empreinte acoustique à partir d'un signal audio. Ce qui permet d'identifier des morceaux identiques, de repérer une séquence dans un podcast ou d'associer des informations à un fichier son.

Serveurs / Streaming