Motivation          Interface MSG            API, Maintenance, Perspectives     Conclusion




             Interface de c...
Motivation          Interface MSG      API, Maintenance, Perspectives   Conclusion




                                   ...
Motivation          Interface MSG           API, Maintenance, Perspectives   Conclusion




                              ...
Motivation   Interface MSG      API, Maintenance, Perspectives   Conclusion




                             En image
Motivation          Interface MSG          API, Maintenance, Perspectives   Conclusion




                               ...
Motivation          Interface MSG          API, Maintenance, Perspectives   Conclusion




                               ...
Motivation          Interface MSG          API, Maintenance, Perspectives   Conclusion




                               ...
Motivation          Interface MSG           API, Maintenance, Perspectives   Conclusion




                              ...
Motivation   Interface MSG      API, Maintenance, Perspectives   Conclusion




                             Station
Motivation          Interface MSG           API, Maintenance, Perspectives   Conclusion




                              ...
Motivation   Interface MSG         API, Maintenance, Perspectives   Conclusion




                             Ruby on Ra...
Motivation   Interface MSG         API, Maintenance, Perspectives   Conclusion




                             Ruby on Ra...
Motivation   Interface MSG         API, Maintenance, Perspectives   Conclusion




                             Ruby on Ra...
Motivation         Interface MSG         API, Maintenance, Perspectives   Conclusion




                           Postgr...
Motivation         Interface MSG         API, Maintenance, Perspectives   Conclusion




                           Postgr...
Motivation         Interface MSG         API, Maintenance, Perspectives   Conclusion




                           Postgr...
Motivation          Interface MSG           API, Maintenance, Perspectives   Conclusion




                              ...
Motivation   Interface MSG     API, Maintenance, Perspectives   Conclusion




                             Schéma
Motivation          Interface MSG         API, Maintenance, Perspectives   Conclusion




                                ...
Motivation          Interface MSG           API, Maintenance, Perspectives   Conclusion




                              ...
Motivation   Interface MSG     API, Maintenance, Perspectives   Conclusion




                             Design
Motivation         Interface MSG       API, Maintenance, Perspectives   Conclusion




         • xHTML léger pour un télé...
Motivation         Interface MSG       API, Maintenance, Perspectives   Conclusion




         • xHTML léger pour un télé...
Motivation         Interface MSG       API, Maintenance, Perspectives   Conclusion




         • xHTML léger pour un télé...
Motivation          Interface MSG           API, Maintenance, Perspectives   Conclusion




                              ...
Motivation         Interface MSG        API, Maintenance, Perspectives   Conclusion




                                  ...
Motivation         Interface MSG        API, Maintenance, Perspectives   Conclusion




                                  ...
Motivation   Interface MSG        API, Maintenance, Perspectives   Conclusion




                             Monitoring
Motivation          Interface MSG           API, Maintenance, Perspectives   Conclusion




                              ...
Motivation           Interface MSG         API, Maintenance, Perspectives   Conclusion




                               ...
Motivation           Interface MSG         API, Maintenance, Perspectives   Conclusion




                               ...
Motivation          Interface MSG        API, Maintenance, Perspectives   Conclusion




                                 ...
Motivation          Interface MSG        API, Maintenance, Perspectives   Conclusion




                                 ...
Motivation          Interface MSG        API, Maintenance, Perspectives   Conclusion




                                 ...
Motivation          Interface MSG        API, Maintenance, Perspectives   Conclusion




                                 ...
Motivation          Interface MSG           API, Maintenance, Perspectives   Conclusion




                              ...
Motivation         Interface MSG      API, Maintenance, Perspectives   Conclusion




                                    ...
Motivation           Interface MSG          API, Maintenance, Perspectives   Conclusion




                         Opéra...
Motivation           Interface MSG          API, Maintenance, Perspectives   Conclusion




                         Opéra...
Motivation         Interface MSG          API, Maintenance, Perspectives   Conclusion




                              En...
Motivation          Interface MSG           API, Maintenance, Perspectives   Conclusion




                              ...
Motivation         Interface MSG          API, Maintenance, Perspectives   Conclusion




                                ...
Motivation         Interface MSG          API, Maintenance, Perspectives   Conclusion




                                ...
Motivation         Interface MSG          API, Maintenance, Perspectives   Conclusion




                                ...
Motivation          Interface MSG       API, Maintenance, Perspectives   Conclusion




                                  ...
Appendices




             One more thing...




     Film
Appendices




                                                                     Code
     require ’ atis ’
     r e q ...
Appendices




                    One other thing




     Deuxième film
Appendices




                                                                   Code
     require ’ atis ’
     r e q u ...
Prochain SlideShare
Chargement dans…5
×

Interface de contrôle et de commande MSG

1 152 vues

Publié le

Présentation de projet XL, création d'une interface d'accès aux images satelittes de l'archive ATIS (plus de 2To).

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
1 152
Sur SlideShare
0
Issues des intégrations
0
Intégrations
14
Actions
Partages
0
Téléchargements
6
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Interface de contrôle et de commande MSG

  1. 1. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Interface de contrôle et de commande MSG Benoît Larroque1 1 Pôle ATIS École Supérieure d’Electronique d’Informatique et d’Automatique Projet XL
  2. 2. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Sommaire Motivation Pourquoi une nouvelle interface ? Interface MSG Station Technologies utilisées Modélisation Interface utilisateur Utilisation API, Maintenance, Perspectives API Maintenance Perspectives d’avenir
  3. 3. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Lignes directrices Motivation Pourquoi une nouvelle interface ? Interface MSG Station Technologies utilisées Modélisation Interface utilisateur Utilisation API, Maintenance, Perspectives API Maintenance Perspectives d’avenir
  4. 4. Motivation Interface MSG API, Maintenance, Perspectives Conclusion En image
  5. 5. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Plus précisément On souhaite une interface avec les capacités : • Accéder aux images à distance • Faire des requêtes (temporelles, géographiques) • Surveiller les machines
  6. 6. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Plus précisément On souhaite une interface avec les capacités : • Accéder aux images à distance • Faire des requêtes (temporelles, géographiques) • Surveiller les machines
  7. 7. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Plus précisément On souhaite une interface avec les capacités : • Accéder aux images à distance • Faire des requêtes (temporelles, géographiques) • Surveiller les machines
  8. 8. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Lignes directrices Motivation Pourquoi une nouvelle interface ? Interface MSG Station Technologies utilisées Modélisation Interface utilisateur Utilisation API, Maintenance, Perspectives API Maintenance Perspectives d’avenir
  9. 9. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Station
  10. 10. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Lignes directrices Motivation Pourquoi une nouvelle interface ? Interface MSG Station Technologies utilisées Modélisation Interface utilisateur Utilisation API, Maintenance, Perspectives API Maintenance Perspectives d’avenir
  11. 11. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Ruby on Rails • Open source • Framework MVC • Fournit une abstraction de la base de données
  12. 12. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Ruby on Rails • Open source • Framework MVC • Fournit une abstraction de la base de données
  13. 13. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Ruby on Rails • Open source • Framework MVC • Fournit une abstraction de la base de données
  14. 14. Motivation Interface MSG API, Maintenance, Perspectives Conclusion PostgreSQL et PostGIS • Open source • Robuste et performant (+ de 377760 images en bases) • Extensible, ajout des primitives géographiques
  15. 15. Motivation Interface MSG API, Maintenance, Perspectives Conclusion PostgreSQL et PostGIS • Open source • Robuste et performant (+ de 377760 images en bases) • Extensible, ajout des primitives géographiques
  16. 16. Motivation Interface MSG API, Maintenance, Perspectives Conclusion PostgreSQL et PostGIS • Open source • Robuste et performant (+ de 377760 images en bases) • Extensible, ajout des primitives géographiques
  17. 17. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Lignes directrices Motivation Pourquoi une nouvelle interface ? Interface MSG Station Technologies utilisées Modélisation Interface utilisateur Utilisation API, Maintenance, Perspectives API Maintenance Perspectives d’avenir
  18. 18. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Schéma
  19. 19. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Schéma Deux types d’utilisateurs→utilisateurs et possesseurs de jetons • ont tous des droits (admin, lecteur, analyste. . . ) • un possesseur de jetons ne peut pas être admin
  20. 20. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Lignes directrices Motivation Pourquoi une nouvelle interface ? Interface MSG Station Technologies utilisées Modélisation Interface utilisateur Utilisation API, Maintenance, Perspectives API Maintenance Perspectives d’avenir
  21. 21. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Design
  22. 22. Motivation Interface MSG API, Maintenance, Perspectives Conclusion • xHTML léger pour un téléchargement plus rapide • Facilement modifiable par conception • Multi-résolution (conçu pour 1024 × 768)
  23. 23. Motivation Interface MSG API, Maintenance, Perspectives Conclusion • xHTML léger pour un téléchargement plus rapide • Facilement modifiable par conception • Multi-résolution (conçu pour 1024 × 768)
  24. 24. Motivation Interface MSG API, Maintenance, Perspectives Conclusion • xHTML léger pour un téléchargement plus rapide • Facilement modifiable par conception • Multi-résolution (conçu pour 1024 × 768)
  25. 25. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Lignes directrices Motivation Pourquoi une nouvelle interface ? Interface MSG Station Technologies utilisées Modélisation Interface utilisateur Utilisation API, Maintenance, Perspectives API Maintenance Perspectives d’avenir
  26. 26. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Recherche • Formulaire permettant de chercher par : • Date (début et fin) • Canal (ex : VIS008, VIS006, IR_039. . . ) • Coordonnées Géographiques (latitude, longitude) • Les résultats sont affichés dans un tableau réordonnable
  27. 27. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Recherche • Formulaire permettant de chercher par : • Date (début et fin) • Canal (ex : VIS008, VIS006, IR_039. . . ) • Coordonnées Géographiques (latitude, longitude) • Les résultats sont affichés dans un tableau réordonnable
  28. 28. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Monitoring
  29. 29. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Lignes directrices Motivation Pourquoi une nouvelle interface ? Interface MSG Station Technologies utilisées Modélisation Interface utilisateur Utilisation API, Maintenance, Perspectives API Maintenance Perspectives d’avenir
  30. 30. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Généralités • Certaines informations sont disponibles pour les programmeurs : • Accès REST (Support code d’erreurs HTTP et authentification, stateless) • Réponses en xHTML, XML, JSON, YAML et bien sûr PNG, JPEG, PGM.BZ2 Fact Bibliothèque d’accès Ruby déjà disponible
  31. 31. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Généralités • Certaines informations sont disponibles pour les programmeurs : • Accès REST (Support code d’erreurs HTTP et authentification, stateless) • Réponses en xHTML, XML, JSON, YAML et bien sûr PNG, JPEG, PGM.BZ2 Fact Bibliothèque d’accès Ruby déjà disponible
  32. 32. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Endpoints • Images : • /images/index. :format → liste d’image (params. : pagination, ordre) • /images/search. :format→recherche d’image (params. : précédent et recherche ) • /image/ :id. :format→Infos sur une image ou binaire de l’image • images/coverage. :format→Couverture géographique et spatiale • Composition : composite/compose. :format (params. : canaux) • Monitoring : monitor/inst_info/ :machine. :format • Analyses • analysis/images_to_process/ :id. :format (params : pagination) • analysis/set_result/ :id. :format (params. analyse, image, résultat) • analysis/results/ :id. :format
  33. 33. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Endpoints • Images : • /images/index. :format → liste d’image (params. : pagination, ordre) • /images/search. :format→recherche d’image (params. : précédent et recherche ) • /image/ :id. :format→Infos sur une image ou binaire de l’image • images/coverage. :format→Couverture géographique et spatiale • Composition : composite/compose. :format (params. : canaux) • Monitoring : monitor/inst_info/ :machine. :format • Analyses • analysis/images_to_process/ :id. :format (params : pagination) • analysis/set_result/ :id. :format (params. analyse, image, résultat) • analysis/results/ :id. :format
  34. 34. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Endpoints • Images : • /images/index. :format → liste d’image (params. : pagination, ordre) • /images/search. :format→recherche d’image (params. : précédent et recherche ) • /image/ :id. :format→Infos sur une image ou binaire de l’image • images/coverage. :format→Couverture géographique et spatiale • Composition : composite/compose. :format (params. : canaux) • Monitoring : monitor/inst_info/ :machine. :format • Analyses • analysis/images_to_process/ :id. :format (params : pagination) • analysis/set_result/ :id. :format (params. analyse, image, résultat) • analysis/results/ :id. :format
  35. 35. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Endpoints • Images : • /images/index. :format → liste d’image (params. : pagination, ordre) • /images/search. :format→recherche d’image (params. : précédent et recherche ) • /image/ :id. :format→Infos sur une image ou binaire de l’image • images/coverage. :format→Couverture géographique et spatiale • Composition : composite/compose. :format (params. : canaux) • Monitoring : monitor/inst_info/ :machine. :format • Analyses • analysis/images_to_process/ :id. :format (params : pagination) • analysis/set_result/ :id. :format (params. analyse, image, résultat) • analysis/results/ :id. :format
  36. 36. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Lignes directrices Motivation Pourquoi une nouvelle interface ? Interface MSG Station Technologies utilisées Modélisation Interface utilisateur Utilisation API, Maintenance, Perspectives API Maintenance Perspectives d’avenir
  37. 37. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Fait Fact L’interface est conçue pour nécessiter peu de maintenance
  38. 38. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Opérations de maintenance • Surveiller la tailles des logs • tail log/production.log > log/production.log • Surveiller la bonne marche de PostgreSQL • VACCUM FULL ANALYZE
  39. 39. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Opérations de maintenance • Surveiller la tailles des logs • tail log/production.log > log/production.log • Surveiller la bonne marche de PostgreSQL • VACCUM FULL ANALYZE
  40. 40. Motivation Interface MSG API, Maintenance, Perspectives Conclusion En cas de problème • Regarder les logs du serveur • redémarrer lighttpd
  41. 41. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Lignes directrices Motivation Pourquoi une nouvelle interface ? Interface MSG Station Technologies utilisées Modélisation Interface utilisateur Utilisation API, Maintenance, Perspectives API Maintenance Perspectives d’avenir
  42. 42. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Idées de projet Nombreuses ! • Analyses déportées • Client lourd, interfaçage Google Earth • Aide à la destruction des images inintéressantes
  43. 43. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Idées de projet Nombreuses ! • Analyses déportées • Client lourd, interfaçage Google Earth • Aide à la destruction des images inintéressantes
  44. 44. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Idées de projet Nombreuses ! • Analyses déportées • Client lourd, interfaçage Google Earth • Aide à la destruction des images inintéressantes
  45. 45. Motivation Interface MSG API, Maintenance, Perspectives Conclusion Conclusion • Enfin une interface simple et accessible à tous. • Facile à maintenir. • Un projet intéressant.
  46. 46. Appendices One more thing... Film
  47. 47. Appendices Code require ’ atis ’ r e q u i r e ’ RMagick ’ i n c l u d e Magick TOKEN= ’ 1∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗TOKEN∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗ e ’ def composite ( tab ) t a b . map { | f | f . s a v e ( ’ / v e r s a t i l e / ’+f . f i l e n a m e ) } t=t a b . c o l l e c t { | f | p u t s f . f i l e n a m e ; ( Image . r e a d ( ’ / v e r s a t i l e / ’+f . filename ) ) [0];} Image . c o m b i n e ( t [ 0 ] , t [ 1 ] , t [ 2 ] ) . t h u m b n a i l ( 1 0 8 0 , 1 0 8 0 ) . w r i t e ( quot; . / o u t / c o m p o s i t e −#{t a b . f i r s t . d a t e . s t r f t i m e ( ’%Y% %d%H% ’ ) } . png quot; ) m M p u t s quot; c o m p o s i t e −#{t a b . f i r s t . d a t e . s t r f t i m e ( ’%Y% %d%H% ’ ) } . png quot; m M t a b . map { | f | F i l e . u n l i n k ( ’ / v e r s a t i l e / ’+f . f i l e n a m e ) } end p u t s quot;START SCRIPTquot; c o n=A t i s C o n n e c t i o n . new ( : t o k e n = TOKEN) > s=A t i s S e a r c h . new co n r e t ={} c a c h e=D i r . new ( ’ . / o u t / ’ ) . r e j e c t { | t | t [0]== ’ . ’ [ 0 ] } . c o l l e c t { | t | Time . r e a d ( F i l e . basename ( t , ’ . png ’ ) . s p l i t ( ’− ’ ) . l a s t ) } s . s e a r c h ( : c h a n n e l = [ ’ VIS006 ’ , ’ VIS008 ’ , ’ IR_016 ’ ] , : e n d = > >Time . r e a d ( quot; 2 0 0 9 0 1 1 1 1 2 0 0 quot; ) , : b e g i n = Time . u t c ( 2 0 0 9 ) ) do | im | > r e t [ im . d a t e ]= Hash . new i f r e t [ im . d a t e ] . n i l ? r e t [ im . d a t e ] [ im . c h a n n e l ]= im u n l e s s c a c h e . i n c l u d e ? im . d a t e i f r e t [ im . d a t e ] . s i z e > 2 p u t s quot; compose #{im . d a t e } quot; c o m p o s i t e ( [ r e t [ im . d a t e ] [ ’ IR_016 ’ ] , r e t [ im . d a t e ] [ ’ VIS008 ’ ] , r e t [ im . d a t e ] [ ’ VIS006 ’ ] ] ) end : more end
  48. 48. Appendices One other thing Deuxième film
  49. 49. Appendices Code require ’ atis ’ r e q u i r e ’ RMagick ’ i n c l u d e Magick TOKEN= ’ 1∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗TOKEN∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗ e ’ p u t s quot;START SCRIPTquot; c o n=A t i s C o n n e c t i o n . new ( : t o k e n = TOKEN) ; s=A t i s S e a r c h . new con ; r e t ={} > c a c h e=D i r . new ( ’ . / o u t / ’ ) . r e j e c t { | t | t [0]== ’ . ’ [ 0 ] } . c o l l e c t { | t | Time . r e a d ( F i l e . basename ( t , ’ . png ’ ) . s p l i t ( ’− ’ ) . l a s t ) } c a c h e 2=D i r . new ( ’ . / o u t 2 / ’ ) . r e j e c t { | t | t [0]== ’ . ’ [ 0 ] } . c o l l e c t { | t | Time . r e a d ( F i l e . basename ( t , ’ . png ’ ) . s p l i t ( ’− ’ ) . l a s t ) } b l a c k = Magick : : Image . new ( 1 0 8 0 , 1 0 8 0 ) { s e l f . b a c k g r o u n d _ c o l o r = ’ b l a c k ’ } s . s e a r c h ( : c h a n n e l = [ ’ IR_039 ’ ] , : e n d = > >Time . r e a d ( quot; 2 0 0 9 0 1 1 1 1 2 0 0 quot; ) , : b e g i n = Time . u t c ( 2 0 0 9 ) ) do | im | > i f ( c a c h e . i n c l u d e ? ( im . d a t e ) && ! c a c h e 2 . i n c l u d e ? ( im . d a t e ) ) p u t s quot; compose #{im . d a t e } quot; i =Image . r e a d ( quot; . / o u t / c o m p o s i t e −#{im . d a t e . s t r f t i m e ( ’%Y% %d m % M ’ ) } . png quot; ) [ 0 ] H% i . f u z z=quot; 5.1% quot; ; t r a n s= i . t r a n s p a r e n t ( ’ b l a c k ’ ) im . s a v e ( ’ / v e r s a t i l e / ’+im . f i l e n a m e ) n _ i g h t =( Image . r e a d ( ’ / v e r s a t i l e / ’+im . f i l e n a m e ) [ 0 ] ) . thumbnail (1080 ,1080) n i g h t=Magick : : Image . c o m b i n e ( b l a c k . copy , n _ i g h t , b l a c k . c o p y ) p=n i g h t . c o m p o s i t e ( t r a n s , 0 , 0 , Magick : : O verC ompo site Op ) p . w r i t e ( quot; . / o u t 2 / c o m p o s i t e 2 −#{im . d a t e . s t r f t i m e ( ’%Y% %d%H% m M ’ ) } . png quot; ) { s e l f . d e p t h =8} F i l e . u n l i n k ( ’ / v e r s a t i l e / ’+im . f i l e n a m e ) end : more end

×