SlideShare une entreprise Scribd logo
1  sur  13
APIs + temps réel = ?
Il était une fois…
API + TEMPS RÉEL = <3 ?
« Je planifie
mon voyage théorique »
UN BESOIN CENTRAL : LE TEMPS RÉEL
« Je réalise mon voyage sans
encombres »
• VS •
Un voyage sans perturbation reste possible
Mais on veut toujours vérifier…
API + TEMPS RÉEL = <3 ?
Besoin de bousculer tout ou partie de l’offre
PAS SI VITE !
VOUS AVEZ DIT TEMPS RÉEL ?
Besoin d’adapter un « mobile »
Tempête de neige de la veille Travaux de maintenance
Avance / Retard Panne de matériel
API + TEMPS RÉEL = <3 ?
API NAVITIA
Plan de transport
théorique
CE QUE L’ON PLANIFIE
Plan de transport
partiellement
redéfini
CE QUE L’ON PRÉVOIT
Modifications en
temps réel du
parcours d’un train
CE QUE L’ON CONSTATE
MISE À JOUR
TOUTES LES NUITS
MISE À JOUR
DANS LA JOURNÉE
PLUSIEURS FOIS
MISE À JOUR
PLUSIEURS FOIS
PAR SECONDES
API + TEMPS RÉEL = <3 ?
DES PROBLÉMATIQUES DE FLUX
A B C
D
E
API + TEMPS RÉEL = <3 ?
(Presque trop facile sauf que)
Plus il y a de perturbations
Plus il y a de consultations
Ce qui signifie…
OK. ON COMPREND LES FLUX.
IL NE RESTE PLUS QU’À LES INTÉGRER
API + TEMPS RÉEL = <3 ?
API NAVITIA
API + TEMPS RÉEL = <3 ?
RÉ-UTILISATEURS DE L’API
ALIMENTATION
HORAIRES
RÉCONCILIATION
DONNÉES
THÉORIQUES
DONNÉES
REDÉFINIES
Moteur de calcul
API NAVITIA
API + TEMPS RÉEL = <3 ?
RÉ-UTILISATEURS DE L’API
ALIMENTATION
HORAIRES
FLUX FIL DE L’EAU
Moteur de calcul
STOCKAGEQUEUING INTERPRÉTATION
API NAVITIA
API + TEMPS RÉEL = <3 ?
RÉ-UTILISATEURS DE L’API
ALIMENTATION
HORAIRES
RÉCONCILIATION
DONNÉES
THÉORIQUES
DONNÉES
REDÉFINIES
FLUX FIL DE L’EAU
Moteur de calcul
STOCKAGEINTERPRÉTATIONQUEUING
« Cache intelligent »
L’INTÉRÊT ?
API + TEMPS RÉEL = <3 ?
•
Désynchronisation
entre les flux et la consultation
•
Performance
•
Simplicité d’intégration dans les média
Navitia sait supprimer un train en temps réel
sur api.sncf.com
ET MAINTENANT ?
Navitia saura rapidement proposer des itinéraires
tirant parti de l’avance / retard
Navitia présentera ensuite plus d’information
(des messages, la valeur des retards)
et ce, sur tous les services
Navitia saura proposer des itinéraires qui intégrent
des détournements
API + TEMPS RÉEL = <3 ?
APIs + temps réel = ?
Merci.
#kinou
Tant que ça marche…
#XL
Rabbitmq, zmq, flask, BOOST, gcc,
pypy, C++11, généricité, Hateoas…
ok, mais j’veux pas faire de front
#stifoon
Tu vois, le monde se divise en deux catégories:
ceux qui font rouler des trains et ceux qui
présentent des tranches.
Dans Navitia, on creuses des tranches

Contenu connexe

En vedette

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 

En vedette (20)

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 

Meetup OpenTransport "gestion du temps réel dans l'API SNCF"

  • 1. APIs + temps réel = ?
  • 2. Il était une fois… API + TEMPS RÉEL = <3 ?
  • 3. « Je planifie mon voyage théorique » UN BESOIN CENTRAL : LE TEMPS RÉEL « Je réalise mon voyage sans encombres » • VS • Un voyage sans perturbation reste possible Mais on veut toujours vérifier… API + TEMPS RÉEL = <3 ?
  • 4. Besoin de bousculer tout ou partie de l’offre PAS SI VITE ! VOUS AVEZ DIT TEMPS RÉEL ? Besoin d’adapter un « mobile » Tempête de neige de la veille Travaux de maintenance Avance / Retard Panne de matériel API + TEMPS RÉEL = <3 ?
  • 5. API NAVITIA Plan de transport théorique CE QUE L’ON PLANIFIE Plan de transport partiellement redéfini CE QUE L’ON PRÉVOIT Modifications en temps réel du parcours d’un train CE QUE L’ON CONSTATE MISE À JOUR TOUTES LES NUITS MISE À JOUR DANS LA JOURNÉE PLUSIEURS FOIS MISE À JOUR PLUSIEURS FOIS PAR SECONDES API + TEMPS RÉEL = <3 ?
  • 6. DES PROBLÉMATIQUES DE FLUX A B C D E API + TEMPS RÉEL = <3 ?
  • 7. (Presque trop facile sauf que) Plus il y a de perturbations Plus il y a de consultations Ce qui signifie… OK. ON COMPREND LES FLUX. IL NE RESTE PLUS QU’À LES INTÉGRER API + TEMPS RÉEL = <3 ?
  • 8. API NAVITIA API + TEMPS RÉEL = <3 ? RÉ-UTILISATEURS DE L’API ALIMENTATION HORAIRES RÉCONCILIATION DONNÉES THÉORIQUES DONNÉES REDÉFINIES Moteur de calcul
  • 9. API NAVITIA API + TEMPS RÉEL = <3 ? RÉ-UTILISATEURS DE L’API ALIMENTATION HORAIRES FLUX FIL DE L’EAU Moteur de calcul STOCKAGEQUEUING INTERPRÉTATION
  • 10. API NAVITIA API + TEMPS RÉEL = <3 ? RÉ-UTILISATEURS DE L’API ALIMENTATION HORAIRES RÉCONCILIATION DONNÉES THÉORIQUES DONNÉES REDÉFINIES FLUX FIL DE L’EAU Moteur de calcul STOCKAGEINTERPRÉTATIONQUEUING
  • 11. « Cache intelligent » L’INTÉRÊT ? API + TEMPS RÉEL = <3 ? • Désynchronisation entre les flux et la consultation • Performance • Simplicité d’intégration dans les média
  • 12. Navitia sait supprimer un train en temps réel sur api.sncf.com ET MAINTENANT ? Navitia saura rapidement proposer des itinéraires tirant parti de l’avance / retard Navitia présentera ensuite plus d’information (des messages, la valeur des retards) et ce, sur tous les services Navitia saura proposer des itinéraires qui intégrent des détournements API + TEMPS RÉEL = <3 ?
  • 13. APIs + temps réel = ? Merci. #kinou Tant que ça marche… #XL Rabbitmq, zmq, flask, BOOST, gcc, pypy, C++11, généricité, Hateoas… ok, mais j’veux pas faire de front #stifoon Tu vois, le monde se divise en deux catégories: ceux qui font rouler des trains et ceux qui présentent des tranches. Dans Navitia, on creuses des tranches

Notes de l'éditeur

  1. CONTEXTE > Navitia, SIV Itinéraires Horaires Recherche de proximités Framework / Boite à outil pour fournir IV dans des contextes divers, par des acteurs non familiers avec la mobilité http://ophtalmos.fr HomeNow Motorise navio et SNCF (Mais aussi petit à petit TISSEO) Multi-modal, ici on ne parlera que du TC
  2. Mise en openSource il y a 1 an et demi (avril 2014) Du monde intéressé ? Faisons un workshop ! (juin 2014) Et puis le premier meet-up openTransport le 20/06/2014 ANNIVERSAIRE
  3. Conception / achat du voyage : théorique (GTFS du STIF) Juste avant et pendant le trajet : besoin de valider le trajet, de vérifier quand je pars et quand j’arriverais 70% de voyageur avec smartphone dans les transports (explorer.transdev.com) On veut vérifier, pour cela on veut des itinéraires en temps réel > Peut-être pas dans l’urbain, mais sur son trajet longue distance savoir que son arrêt de bus est déplacé > Pour pouvoir aller le chercher à 300m Se rassurer avec la carte de la position des véhicules (à la Uber) La vrai vie est perturbée on doit s’adapter en temps réel > le Temps réel doit être intégré dans le moteur de calcul
  4. Plusieurs significations pour le voyageur et le transporteur Mais aussi mouvements sociaux, des ruptures de caténaires
  5. Quelques exemples Des flux sur l’ensemble du périmètre de données vs des flux sur un jour donné, ou sur un sous-ensemble du réseau (mais souvent, les 2 combinés ) Des flux annule et remplace vs des flux différentiel dont l’état précédent est nécessaire Des flux basés sur des référentiels différents Des flux ne représentant pas tous la même chose: illustration par l’exemple, les trains et les tranches !
  6. On vend des places prévues dans des voitures On exploite des motrices que l’on suit avec des SAE On informe le voyageur toujours par rapport à sa place Problématiques métiers Réconciliation entre SIV / système de production / système d’exploitation Différentes méthodes de mise à jour et différentes fréquences On parle de train supprimé en temps réel, mais qui circulent quand même, mais sans voyageur…. (BOA SUP + IRE Roule) Prenons par exemple l’intercité Nice > Reims, présentant un problème en gare de Châlons en champagne, après Culmont-Challaindrey
  7. Proverbe interne issu de l’expérience d’infoligne Perturbations en cours = besoin de savoir ce qui se passe, comment m’adapter
  8. Interprétation Mise en cohérence Rapprochement avec les données théoriques Stockage du temps réel Reprise sur incident Analyse de données Queuing des informations temps réel pour intégration par paquets
  9. Interprétation Mise en cohérence Rapprochement avec les données théoriques Stockage du temps réel Reprise sur incident Analyse de données Queuing des informations temps réel pour intégration par paquets
  10. Interprétation Mise en cohérence Rapprochement avec les données théoriques Stockage du temps réel Reprise sur incident Analyse de données Queuing des informations temps réel pour intégration par paquets