Photobox Amazon RedShift Maxime Mézin Data Foundation Manager
Présentation de Photobox Leader Européen du tirage et du livre photo 25 millions de clients 17 pays, dernière ouverture il y a 6 mois en Australie Stockage de milliards de photos
Problématique Des traitements de rafraichissement du datawarehouse trop longs 8h en temps normal Jusqu à 12h en période de Noël Une limitation en termes de stockage 5 To actuellement avec uniquement les données de vente du site Nécessité de remplacer le hardware Acquisition d un environnement de développement à un prix élevé Nécessite un contrat administration distante (DBA externe) Problème de modèle de licence pour connecter notre outil de reporting
En continuant comme ça Remplacement du hardware 100 K Achat de nouvelles licences 100 K Implique l augmentation du coût de support Toujours pas de flexibilité Augmentation des coûts en CAPEX et OPEX Pour une une performance équivalente
Les besoins pour le futur Croiser l ensemble des sources de données de l entreprise afin d améliorer : La satisfaction client Le ciblage CRM Le reporting Affiner le reporting au niveau le plus fin : la photo
Le Big Data Face aux contraintes actuelles et besoins futurs nous nous sommes lancés dans les technologies Big Data open source : Création d un cluster Hadoop sur Amazon EC2 avec whirr et mesos Développement en Clojure / Cascalog pour le traitement des données Utilisation de Hive + Hbase Après 6 mois nous avons constaté que : Le paramétrage du cluster prenaient du temps Que nous avions pris peu de temps pour travailler sur les données Nous avions besoin de temps pour former les ressources internes
Proof Of Concept Amazon Redshift Deux points forts à retenir: Le prix La performance «Big Data» en SQL L objectif était de tester les points suivants : Temps de chargement des données Evaluation du nombre de nœuds nécessaires Flexibilité : temps de passage de 1 à N nœuds Performance sur une simulation d alimentation quotidienne Fonctions d agrégation disponibles
Résultats du POC Chargement : 4 jours pour extraire les données côté Photobox Entre 5 et 50 minutes pour charger les données dans Amazon Redshift Performances : Count(*) impossible à lancer sur la table photos sur le slave Mysql 3 secondes sur Amazon Redshift Fonctions : Quasiment équivalente (ex: manque le pivot/unpivot) Flexibilité : Passage de 1 à 8 nœuds en 6h Création d un environnement de dev en quelques minutes
Déploiement Amazon Redshift avec 1 ETP Annonce Amazon Redshift le 28/11/2012 Demande d accès le 10/12 Premier accès fin décembre Fin de la Beta 15 février Passage en prod mi-mars 8 instances réservées sur 3 ans en Mai 2013 + 3 mai 2014
Architecture Actuelle
Intégration d Amazon EMR dans le Workflow Amazon Elastic Map Reduce (EMR) est utilisé comme un ETL via Le processus est donc le suivant : Lancement d Amazon EMR Installation de Sqoop Chargement des données de la base MySQL sur hdfs Copie des données de HDFS vers Amazon S3 Chargement des données de Amazon S3 vers Amazon Redshift Paramètres : Nombre d instances Degré de parallélisme La clef de partitionnement
Performance Avant / Après L alimentation quotidienne du datawarehouse se fait en 2 étapes Récupération des données sur une base slave du site Calcul des agrégats AVANT Chargement : 1h 30 Agrégation : 6 h APRES Chargement : 1h (limitation DB slave) Agrégation : 40 min (9 fois plus rapide)
Performance Temps de traitement observé en fonction du nombre de nœuds 120 100 80 Perf (min) 60 40 20 Perf (min) 0 2 4 8 5 To avant (données + index), 500 Go sur Amazon Redshift!
Coût: avant / après Avant Opex : 70 k Support Licence : 30 k External DBA : 40 k Capex : 20 k / an (amorti) Total : 90 k Avec Amazon Redshift Opex : Amazon Redshift + EMR = 17 k$ = 13 k => 7 x moins cher Pourquoi la région US East? Initialement le service n était pas disponible dans les autres régions Pas de contrainte de latence (90 ms US East vs 30 ms EU)
Sécurité VPN / VPC et ou Firewall SSH Cryptage Légal : Safe Harbor Act la Sphère de sécurité (Safe Harbor) permet à une entreprise américaine de certifier qu'elle respecte la législation de l'espace économique européen (EEE) afin d'obtenir l'autorisation de transférer des données personnelles de l'eee vers les Etats-Unis.
Fail over Upload hebdomadaire Amazon Redshift => Amazon S3 Réplication Amazon S3 inter région Amazon S3 US => Amazon S3 EU
Conclusion Plus de fiabilité Un budget divisé par 7 Des performances a minima 10 fois meilleures Une capacité de stockage multipliée par 32 Une scalabilité simplifiée
Témoignage proposé par Retrouvons-nous sur le stand 47 Espace Grande Arche Paris La Défense