amadeus et big data · _ la technologie amadeus est moteur d’innovation pour l’industrie du...
TRANSCRIPT
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
s an
d s
ub
sid
iari
es
Amadeus et Big Data
Analyse en temps réel sur plus de 2 milliards de transactions par jour
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
san
d s
ub
sid
iari
es
_ La technologie Amadeus est moteur d’innovation pour l’industrie du voyage
_ Nous sommes présents dans plus de 190 pays et employons plus de 15000 personnes dans le
monde
_ Nos solutions améliorent le voyage de milliards de personnes par an
_ Nous travaillons avec nos clients, partenaires et d’autres acteurs de l’industrie pour améliorer la
performance et modeler le futur du voyage
595+ millions de réservations en 2016 avec la plateforme de distribution Amadeus
1.3 milliard de passagers aériens en 2016 avec les solutions Amadeus et Navitaire
1 des 15 meilleures sociétés informatiquesForbes 2017 global rankings
Amadeus en quelques mots
3
6eme année consécutive dans le DJSI Leader
mondial dans le secteur Software & Services dans le Dow Jones Sustainability Index en 2017
SSP (Search, Shopping and Pricing)
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
san
d s
ub
sid
iari
es
4
Contexte fonctionnel• Recherche de solutions de voyage• Proposition de recommandations d’achat• Calcul de prix de vols
Contexte technique• Plateforme scalable, performante et robuste• Technologies: C, C++, Java, RDBMS
Nombres et performances• Temps de réponse dans l’ordre des millisecondes• 1 milliard de recherche par jour• Croissance exponentielle du trafic
SSP (Search, Shopping and Pricing) en pratique
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
san
d s
ub
sid
iari
es
5
SSP BOX
OUT
IN
SSP BOX
Logs fonctionnels17000 tps, 10KB, ~15TB/jFacteur de sampling: 8%, ~1.2TB/j
Logs techniques25000 tps, 1KB, ~2TB/j
Logs d’optimisation
Autres logs
• Recherche de NCE à JFK du 20/03 au 30/03 pour 3 personnes
• NCE -> CDG -> JFK 1ere class, 500E
• NCE -> AMS-> JFKEconomy class, 250E
• …
Besoins fonctionnels
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
san
d s
ub
sid
iari
es
6
RAW DB
Monitoring en temps réel
Exploration des données brutes
Computation de statistiques
Computation de modèles, BI, data
science
SSP BOX
Besoins techniques
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
s an
d s
ub
sid
iari
es
7
• Scalabilité horizontale• Processing batch et/ou temps réel• Haute disponibilité• Tolérance aux pannes
Avant Après
RDBMS
KV-stores NAS
Multithreadprocessing
POSIX queuesIPC
crontab
SHM
• Ecosystème Hadoop• Lambda Architecture• Changement de culture
Implémentation de la Lambda Architecture
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
s an
d s
ub
sid
iari
es
2.
Implémentation de la lambda architecture: batch leg (>=15’)
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
s an
d s
ub
sid
iari
es
9
SSP BOX
SSP BOX
SSP BOX
SSP BOX
SSP BOX
SSP BOX
…
Kafka Connect
NFS mount
RAW data (JSON, YAML, EDIFACT, CSV,
protobuf, avro…)
RAW DBpartitioned by hour
Data Preparation FW
Schema repo (avsc)
Exploration des données brutes
Implémentation de la lambda architecture: batch leg (>=15’)
10
RAW DBpartitioned by hour
Report scheduler
KPIs
Reports repo
Dat
a Fe
ed
er
Dat
a p
ub
lish
er
RDBMS
MongoDB
CouchBase
Elastic Search
To customer
Computation de modèles, BI, data
science
Computation de statistiques
Implémentation de la lambda architecture: streaming leg (<=1’)
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
s an
d s
ub
sid
iari
es
11
SSP BOX
SSP BOX
SSP BOX
SSP BOX
SSP BOX
SSP BOX
…
StreamingReporter
CouchBase
Elastic Search
Kafka Connect
Monitoring en temps réel
Reports repo
Stratégies d’implémentation et retours d’expérience
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
s an
d s
ub
sid
iari
es
3.
PDD: Prototype Driven Development
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
s an
d s
ub
sid
iari
es
13
• Ce sont des technologies complexes et jeunes:• Intégration de boîtes noires• Incompatibilité entre technologies
• Try, fail, retry, fail, retry, success vs. Design, implement, fail, re-design, implement, …
• Scaler par force brute vs. Over-architecturing et over-engineering
• Implémenter/refactoriser en FW vs. Créer un FW/implementer
• On est dans le monde du NoSQL: le data model n’est pas indépendant de l’application, mais évolue avec.
Penser aux opérateurs
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
s an
d s
ub
sid
iari
es
14
• Tu viens de découvrir que mon application va être déployée en PRD
• Définis max 5/6 frameworks et oblige tes développeurs à les utiliser
• Définis un seul point d’entrée pour toute application: OOZIE!
• Définis des conventions de nommage• Topic == Bucket == Répertoire == …
• Protège ton application des pannes
• Pense à monitorer tes applications (async log4j -> Kafka -> Kafka Connect-> Elastic Search -> Kibana)
© A
mad
eus
IT G
rou
p a
nd
its
affi
liate
s an
d s
ub
sid
iari
es
Let’s shape the future of travel
together!