SlideShare une entreprise Scribd logo
1  sur  41
Télécharger pour lire hors ligne
Les applications et architectures d’entreprise de demain

Un aperçu des changements à venir




 16/9/2011                                 Michaël Figuière
Speaker

      @mfiguiere
      blog.xebia.fr



      Michaël Figuière           Distributed
                                 Architectures

                         NoSQL
Search Engines
Une nouvelle génération d’applications
Beaucoup de nouvelle tendances...



      UX
                           Social

           Intelligence
                                    Temps-réel

     Mobilité
              Géo-localisation
Mobilité
Mobilité

• Internet mobile est une réalité
         La connexion Internet devient quasi-permanente


• 40% des nouveaux internautes dans le monde d’ici 2015
         Certains internautes seront uniquement mobiles


• Les connexions 4G arrivent bientôt
         De nouveaux cas d’usage deviendront possibles
Géo-localisation
Taxi G7 et la Géo-localisation




     Géo-localisation
    dans l’application
   iPhone de TaxiG7
Smart Lists dans Facebook




  Facebook maintient
   une liste d’amis à
            proximité
Géo-localisation en pratique

• Certaines bases de données permettent les requêtes géo-spatiales
        PostGIS, MongoDB, ...


• Les moteurs de recherche le permettent également
        Lucene propose une extension « spacial »


• HTML5 et les APIs des OS mobiles permettent de se géo-localiser
        Où par IP pour les applications fixes
Temps-réel
Notifications et mise à jour dans Quora




      Quora notifie
   l’utilisateur des
      évènements le
 concernant et met
 à jour l’affichage
      en temps réel
Recherche en continu dans Twitter




        De nouveaux
      résultats sont
  disponibles au fur
         et à mesure
Temps-réel en pratique

• ElasticSearch propose des requêtes temps-réel et continues (Percolator)
         Stocke les requête, teste les nouveaux documents


• Atmosphere et WebSocket permettent l’intégration Web
         Permet les chats, notifications, rafraichissement,...


• Les moteurs de Complex Event Processing (CEP) pour aller plus loin
        Esper est un moteur OpenSource très mature
Intelligence
People you Should Know par LinkedIn




LinkedIn suggère
   des personnes
 que l’on connait
en se basant sur
 le graphe social,
 sur l’historique
    de recherche,
            etc...
Recommandations par Amazon




  Amazon suggère
   des articles en
    se basant sur
       les achats
  d’autres clients
Top Stories dans Google News



Sujets tendances
 découverts par
  Google News
En pratique

• Apache Mahout veut devenir le Lucene de l’apprentissage artificiel
         Rapproche les applications Java et l’apprentissage artificiel


• Se nourrit des gros volumes de données stockés dans NoSQL
         Intégration native de Mahout et de Hadoop


• Neo4j permet de stocker des graphes et de découvrir de l’information
        Par des algorithmes de plus court chemin, centralité,...
User Experience
Google+ et les cercles

  Les fameux
    cercles
  de Google+
Google Flight




        Google Flight
apporte une interface
    novatrice pour la
   recherche de vols
Les architectures d’entreprise, actuellement
Service Oriented Architecture
Service Oriented Architecture
                                Comment assurer la
                                 scalabilité de cette
                                     architecture ?
Le Cloud
Cloud Computing principles

• Abstraction
          SaaS, PaaS, IaaS, ... actually « (.*) as a Service »



• Automatisation
          Réduire les interventions manuelles autant que possible



• Elasticité
          Augmenter ou réduire la capacité selon les besoins
Cloud’s basic abstractions

       Fourni par le Provider Cloud

       Fourni par l’entreprise                              Fourni un
                                                            middleware


                                      SaaS


                  Application
 Client / User                                PaaS
                    Web

                  Application
                                 Middleware          IaaS
                    Web


                                                            Fourni un
                                                            serveur vide
Public Cloud vs. Private Cloud




                                 Une charge typique
                                 sur une journée
Public Cloud vs. Private Cloud



                                 Public Cloud




                                 Private Cloud
Exemple chez guardian.co.uk
Stockage
Base de données répartie ou non



                                  A      B        C
        ABC
        DEF
                                  D      E        F




Base de données sur un    Base de données répartie et donc
    serveur unique              scalable et élastique
Relationnel et non relationnel
Relationnel et non relationnel




  Les données étant très liées
entre elles, leur partitionnement
 sur un ensemble de machines
          est complexe
Relationnel et non relationnel




                                   Cette modélisation
                                   simpliste rend les
                                 données plus flexibles
                                   et partitionnables
Traditional Design vs. Design for failures
Design traditionnel

• Les erreurs techniques génère typiquement une page d’erreur

         SQLException, IOException, unavailable backend...



• Quelques Single Points of Failure et Bottlenecks
         Services stateful et hautement disponibles parfois couteux



• Timeouts et backends lents sont typiquement non gérés
         Un backend devient lent et toute l’application est ralentie
Design for failures

• Les défaillances vont arriver

         Accueillons-les plutôt que d’essayer de les éviter



• Gérer les backends lents ou défaillants avec des Circuit Breakers
         L’application peut offrir un mode dégradé



• Cloud et NoSQL apportent des stockages scalables et disponibles
         Les données les plus critiques peuvent ainsi être disponibles
Conclusion

• L’élasticité peut réduire les coûts et améliorer l’image de marque

         ... et simplifier le Capacity Planning


• Le Cloud est mis en oeuvre par des experts
         Evite donc les solutions couteuses et fragiles


• Les services fournis par le Cloud vont s’améliorer rapidement

         Grace à une boucle de feedback plus riche et plus rapide


• Mais .... JEE 7 ne viendra pas avant 2013 / 2014 !
Questions




             ?
            blog.xebia.fr
            @mfiguiere

Contenu connexe

Tendances

Introduction au Cloud Computing
Introduction au Cloud Computing Introduction au Cloud Computing
Introduction au Cloud Computing FICEL Hemza
 
Cloud Computing presentation
Cloud Computing presentationCloud Computing presentation
Cloud Computing presentationSeif Ben Hammouda
 
Demain tous dans le cloud - journée web innovation lorient 2011
Demain tous dans le cloud -  journée web innovation lorient 2011Demain tous dans le cloud -  journée web innovation lorient 2011
Demain tous dans le cloud - journée web innovation lorient 2011dgerges
 
Qu'est-ce que le Cloud ?
Qu'est-ce que le Cloud ?Qu'est-ce que le Cloud ?
Qu'est-ce que le Cloud ?Fred Canevet
 
Introduction au Cloud Computing
Introduction au Cloud ComputingIntroduction au Cloud Computing
Introduction au Cloud ComputingMarc Rousselet
 
Le Cloud c’est quoi, son fonctionnement. Effet de mode ou réalité ?
Le Cloud c’est quoi, son fonctionnement. Effet de mode ou réalité ?Le Cloud c’est quoi, son fonctionnement. Effet de mode ou réalité ?
Le Cloud c’est quoi, son fonctionnement. Effet de mode ou réalité ?Semaweb
 
Valtech - Cloud computing - Infrastructure as a Service
Valtech - Cloud computing - Infrastructure as a ServiceValtech - Cloud computing - Infrastructure as a Service
Valtech - Cloud computing - Infrastructure as a ServiceValtech
 
Cours d'introduction au Cloud Computing
Cours d'introduction au Cloud ComputingCours d'introduction au Cloud Computing
Cours d'introduction au Cloud ComputingNicolas Hennion
 
Introduction au cloud computing
Introduction au cloud computingIntroduction au cloud computing
Introduction au cloud computingStéphane Traumat
 
Cloud computing & logiciels libres JDLL 2009
Cloud computing & logiciels libres JDLL 2009Cloud computing & logiciels libres JDLL 2009
Cloud computing & logiciels libres JDLL 2009Philippe Scoffoni
 
Clusif cloud-2010-datacenter
Clusif cloud-2010-datacenterClusif cloud-2010-datacenter
Clusif cloud-2010-datacenterOxalide
 
Cloud computing
Cloud computingCloud computing
Cloud computingchaima ben
 
Informatique en nuage et continuité des affaires
Informatique en nuage et continuité des affairesInformatique en nuage et continuité des affaires
Informatique en nuage et continuité des affairesGeorges Cowan
 
L'informatique en nuage par où commencer - marisol labrecque
L'informatique en nuage   par où commencer - marisol labrecqueL'informatique en nuage   par où commencer - marisol labrecque
L'informatique en nuage par où commencer - marisol labrecqueCLDEM
 
2012.05.11. Le Cloud avec IBM pour les Nouveaux - Forum du Club Cloud des Par...
2012.05.11. Le Cloud avec IBM pour les Nouveaux - Forum du Club Cloud des Par...2012.05.11. Le Cloud avec IBM pour les Nouveaux - Forum du Club Cloud des Par...
2012.05.11. Le Cloud avec IBM pour les Nouveaux - Forum du Club Cloud des Par...Club Cloud des Partenaires
 
Le Cloud Computing pour les nuls
Le Cloud Computing pour les nulsLe Cloud Computing pour les nuls
Le Cloud Computing pour les nulsOlivier DUPONT
 

Tendances (20)

Introduction au Cloud Computing
Introduction au Cloud Computing Introduction au Cloud Computing
Introduction au Cloud Computing
 
Cloud Computing presentation
Cloud Computing presentationCloud Computing presentation
Cloud Computing presentation
 
Cloud Computing
Cloud Computing Cloud Computing
Cloud Computing
 
Demain tous dans le cloud - journée web innovation lorient 2011
Demain tous dans le cloud -  journée web innovation lorient 2011Demain tous dans le cloud -  journée web innovation lorient 2011
Demain tous dans le cloud - journée web innovation lorient 2011
 
Qu'est-ce que le Cloud ?
Qu'est-ce que le Cloud ?Qu'est-ce que le Cloud ?
Qu'est-ce que le Cloud ?
 
Introduction au Cloud Computing
Introduction au Cloud ComputingIntroduction au Cloud Computing
Introduction au Cloud Computing
 
Le Cloud c’est quoi, son fonctionnement. Effet de mode ou réalité ?
Le Cloud c’est quoi, son fonctionnement. Effet de mode ou réalité ?Le Cloud c’est quoi, son fonctionnement. Effet de mode ou réalité ?
Le Cloud c’est quoi, son fonctionnement. Effet de mode ou réalité ?
 
Valtech - Cloud computing - Infrastructure as a Service
Valtech - Cloud computing - Infrastructure as a ServiceValtech - Cloud computing - Infrastructure as a Service
Valtech - Cloud computing - Infrastructure as a Service
 
Cours d'introduction au Cloud Computing
Cours d'introduction au Cloud ComputingCours d'introduction au Cloud Computing
Cours d'introduction au Cloud Computing
 
Le cloud computing
Le cloud computingLe cloud computing
Le cloud computing
 
Développeurs, bienvenue dans le Cloud
Développeurs, bienvenue dans le CloudDéveloppeurs, bienvenue dans le Cloud
Développeurs, bienvenue dans le Cloud
 
Introduction au cloud computing
Introduction au cloud computingIntroduction au cloud computing
Introduction au cloud computing
 
Cloud computing & logiciels libres JDLL 2009
Cloud computing & logiciels libres JDLL 2009Cloud computing & logiciels libres JDLL 2009
Cloud computing & logiciels libres JDLL 2009
 
Clusif cloud-2010-datacenter
Clusif cloud-2010-datacenterClusif cloud-2010-datacenter
Clusif cloud-2010-datacenter
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Informatique en nuage et continuité des affaires
Informatique en nuage et continuité des affairesInformatique en nuage et continuité des affaires
Informatique en nuage et continuité des affaires
 
L'informatique en nuage par où commencer - marisol labrecque
L'informatique en nuage   par où commencer - marisol labrecqueL'informatique en nuage   par où commencer - marisol labrecque
L'informatique en nuage par où commencer - marisol labrecque
 
2012.05.11. Le Cloud avec IBM pour les Nouveaux - Forum du Club Cloud des Par...
2012.05.11. Le Cloud avec IBM pour les Nouveaux - Forum du Club Cloud des Par...2012.05.11. Le Cloud avec IBM pour les Nouveaux - Forum du Club Cloud des Par...
2012.05.11. Le Cloud avec IBM pour les Nouveaux - Forum du Club Cloud des Par...
 
Le Cloud Computing pour les nuls
Le Cloud Computing pour les nulsLe Cloud Computing pour les nuls
Le Cloud Computing pour les nuls
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 

Similaire à JUG Summer Camp (Sep 2011) - Les applications et architectures d’entreprise de demain

Les Clouds: Buzzword ou révolution technologique
Les Clouds: Buzzword ou révolution technologiqueLes Clouds: Buzzword ou révolution technologique
Les Clouds: Buzzword ou révolution technologiqueFrederic Desprez
 
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybridesAWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybridesAmazon Web Services
 
Azure Services Platform
Azure Services PlatformAzure Services Platform
Azure Services PlatformGregory Renard
 
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...PimpMySharePoint
 
AGILLY - Introdution au Cloud Computing.pptx
AGILLY - Introdution au Cloud Computing.pptxAGILLY - Introdution au Cloud Computing.pptx
AGILLY - Introdution au Cloud Computing.pptxGerard Konan
 
Qu'est-ce que le cloud ?
Qu'est-ce que le cloud ?Qu'est-ce que le cloud ?
Qu'est-ce que le cloud ?Vincent Misson
 
Cloud prive cloud public pourquoi choisir tech days 2012 rdi
Cloud prive cloud public pourquoi choisir tech days 2012 rdiCloud prive cloud public pourquoi choisir tech days 2012 rdi
Cloud prive cloud public pourquoi choisir tech days 2012 rdiJulien Lesaicherre
 
Cloud Privé, Cloud Public, pourquoi choisir?
Cloud Privé, Cloud Public, pourquoi choisir?Cloud Privé, Cloud Public, pourquoi choisir?
Cloud Privé, Cloud Public, pourquoi choisir?Microsoft Ideas
 
Cloud computing cours in power point chap
Cloud computing cours in power point chapCloud computing cours in power point chap
Cloud computing cours in power point chapaichafarahsouelmi
 
Competitic Optimisez le fonctionnement de votre entreprise avec le cloud comp...
Competitic Optimisez le fonctionnement de votre entreprise avec le cloud comp...Competitic Optimisez le fonctionnement de votre entreprise avec le cloud comp...
Competitic Optimisez le fonctionnement de votre entreprise avec le cloud comp...COMPETITIC
 
eNovance/Ysance: "Enjoy Cloud"
eNovance/Ysance: "Enjoy Cloud"eNovance/Ysance: "Enjoy Cloud"
eNovance/Ysance: "Enjoy Cloud"eNovance
 
Présentation evénement AWS - 13 oct 2015
Présentation evénement AWS  - 13 oct 2015 Présentation evénement AWS  - 13 oct 2015
Présentation evénement AWS - 13 oct 2015 ABC Systemes
 
Ei techno ei cloud livre-blanc-déc 2013
Ei techno ei cloud   livre-blanc-déc 2013Ei techno ei cloud   livre-blanc-déc 2013
Ei techno ei cloud livre-blanc-déc 2013Christophe Monnier
 

Similaire à JUG Summer Camp (Sep 2011) - Les applications et architectures d’entreprise de demain (20)

Les Clouds: Buzzword ou révolution technologique
Les Clouds: Buzzword ou révolution technologiqueLes Clouds: Buzzword ou révolution technologique
Les Clouds: Buzzword ou révolution technologique
 
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybridesAWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Azure Services Platform
Azure Services PlatformAzure Services Platform
Azure Services Platform
 
Cloud introduction
Cloud introductionCloud introduction
Cloud introduction
 
Openstack proposition
Openstack propositionOpenstack proposition
Openstack proposition
 
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...
 
AGILLY - Introdution au Cloud Computing.pptx
AGILLY - Introdution au Cloud Computing.pptxAGILLY - Introdution au Cloud Computing.pptx
AGILLY - Introdution au Cloud Computing.pptx
 
Qu'est-ce que le cloud ?
Qu'est-ce que le cloud ?Qu'est-ce que le cloud ?
Qu'est-ce que le cloud ?
 
Cloud prive cloud public pourquoi choisir tech days 2012 rdi
Cloud prive cloud public pourquoi choisir tech days 2012 rdiCloud prive cloud public pourquoi choisir tech days 2012 rdi
Cloud prive cloud public pourquoi choisir tech days 2012 rdi
 
Cloud Privé, Cloud Public, pourquoi choisir?
Cloud Privé, Cloud Public, pourquoi choisir?Cloud Privé, Cloud Public, pourquoi choisir?
Cloud Privé, Cloud Public, pourquoi choisir?
 
Cloud computing cours in power point chap
Cloud computing cours in power point chapCloud computing cours in power point chap
Cloud computing cours in power point chap
 
Competitic Optimisez le fonctionnement de votre entreprise avec le cloud comp...
Competitic Optimisez le fonctionnement de votre entreprise avec le cloud comp...Competitic Optimisez le fonctionnement de votre entreprise avec le cloud comp...
Competitic Optimisez le fonctionnement de votre entreprise avec le cloud comp...
 
Windows Azure
Windows AzureWindows Azure
Windows Azure
 
eNovance/Ysance: "Enjoy Cloud"
eNovance/Ysance: "Enjoy Cloud"eNovance/Ysance: "Enjoy Cloud"
eNovance/Ysance: "Enjoy Cloud"
 
ch1-cours2016.ppt
ch1-cours2016.pptch1-cours2016.ppt
ch1-cours2016.ppt
 
Présentation evénement AWS - 13 oct 2015
Présentation evénement AWS  - 13 oct 2015 Présentation evénement AWS  - 13 oct 2015
Présentation evénement AWS - 13 oct 2015
 
Ei techno ei cloud livre-blanc-déc 2013
Ei techno ei cloud   livre-blanc-déc 2013Ei techno ei cloud   livre-blanc-déc 2013
Ei techno ei cloud livre-blanc-déc 2013
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Azure et e commerce
Azure et e commerceAzure et e commerce
Azure et e commerce
 

Plus de Michaël Figuière

EclipseCon - Building an IDE for Apache Cassandra
EclipseCon - Building an IDE for Apache CassandraEclipseCon - Building an IDE for Apache Cassandra
EclipseCon - Building an IDE for Apache CassandraMichaël Figuière
 
Paris Cassandra Meetup - Cassandra for Developers
Paris Cassandra Meetup - Cassandra for DevelopersParis Cassandra Meetup - Cassandra for Developers
Paris Cassandra Meetup - Cassandra for DevelopersMichaël Figuière
 
YaJug - Cassandra for Java Developers
YaJug - Cassandra for Java DevelopersYaJug - Cassandra for Java Developers
YaJug - Cassandra for Java DevelopersMichaël Figuière
 
Geneva JUG - Cassandra for Java Developers
Geneva JUG - Cassandra for Java DevelopersGeneva JUG - Cassandra for Java Developers
Geneva JUG - Cassandra for Java DevelopersMichaël Figuière
 
Cassandra summit 2013 - DataStax Java Driver Unleashed!
Cassandra summit 2013 - DataStax Java Driver Unleashed!Cassandra summit 2013 - DataStax Java Driver Unleashed!
Cassandra summit 2013 - DataStax Java Driver Unleashed!Michaël Figuière
 
NYC* Tech Day - New Cassandra Drivers in Depth
NYC* Tech Day - New Cassandra Drivers in DepthNYC* Tech Day - New Cassandra Drivers in Depth
NYC* Tech Day - New Cassandra Drivers in DepthMichaël Figuière
 
Paris Cassandra Meetup - Overview of New Cassandra Drivers
Paris Cassandra Meetup - Overview of New Cassandra DriversParis Cassandra Meetup - Overview of New Cassandra Drivers
Paris Cassandra Meetup - Overview of New Cassandra DriversMichaël Figuière
 
ApacheCon Europe 2012 - Real Time Big Data in practice with Cassandra
ApacheCon Europe 2012 - Real Time Big Data in practice with CassandraApacheCon Europe 2012 - Real Time Big Data in practice with Cassandra
ApacheCon Europe 2012 - Real Time Big Data in practice with CassandraMichaël Figuière
 
NoSQL Matters 2012 - Real Time Big Data in practice with Cassandra
NoSQL Matters 2012 - Real Time Big Data in practice with CassandraNoSQL Matters 2012 - Real Time Big Data in practice with Cassandra
NoSQL Matters 2012 - Real Time Big Data in practice with CassandraMichaël Figuière
 
GTUG Nantes (Dec 2011) - BigTable et NoSQL
GTUG Nantes (Dec 2011) - BigTable et NoSQLGTUG Nantes (Dec 2011) - BigTable et NoSQL
GTUG Nantes (Dec 2011) - BigTable et NoSQLMichaël Figuière
 
Duchess France (Nov 2011) - Atelier Apache Mahout
Duchess France (Nov 2011) - Atelier Apache MahoutDuchess France (Nov 2011) - Atelier Apache Mahout
Duchess France (Nov 2011) - Atelier Apache MahoutMichaël Figuière
 
BreizhCamp (Jun 2011) - Haute disponibilité et élasticité avec Cassandra
BreizhCamp (Jun 2011) - Haute disponibilité et élasticité avec CassandraBreizhCamp (Jun 2011) - Haute disponibilité et élasticité avec Cassandra
BreizhCamp (Jun 2011) - Haute disponibilité et élasticité avec CassandraMichaël Figuière
 
Mix-IT (Apr 2011) - Intelligence Collective avec Apache Mahout
Mix-IT (Apr 2011) - Intelligence Collective avec Apache MahoutMix-IT (Apr 2011) - Intelligence Collective avec Apache Mahout
Mix-IT (Apr 2011) - Intelligence Collective avec Apache MahoutMichaël Figuière
 
Xebia Knowledge Exchange (mars 2011) - Machine Learning with Apache Mahout
Xebia Knowledge Exchange (mars 2011) - Machine Learning with Apache MahoutXebia Knowledge Exchange (mars 2011) - Machine Learning with Apache Mahout
Xebia Knowledge Exchange (mars 2011) - Machine Learning with Apache MahoutMichaël Figuière
 
Breizh JUG (mar 2011) - NoSQL : Des Grands du Web aux Entreprises
Breizh JUG (mar 2011) - NoSQL : Des Grands du Web aux EntreprisesBreizh JUG (mar 2011) - NoSQL : Des Grands du Web aux Entreprises
Breizh JUG (mar 2011) - NoSQL : Des Grands du Web aux EntreprisesMichaël Figuière
 
FOSDEM (feb 2011) - A real-time search engine with Lucene and S4
FOSDEM (feb 2011) -  A real-time search engine with Lucene and S4FOSDEM (feb 2011) -  A real-time search engine with Lucene and S4
FOSDEM (feb 2011) - A real-time search engine with Lucene and S4Michaël Figuière
 
Xebia Knowledge Exchange (feb 2011) - Large Scale Web Development
Xebia Knowledge Exchange (feb 2011) - Large Scale Web DevelopmentXebia Knowledge Exchange (feb 2011) - Large Scale Web Development
Xebia Knowledge Exchange (feb 2011) - Large Scale Web DevelopmentMichaël Figuière
 
Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...
Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...
Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...Michaël Figuière
 
Lorraine JUG (dec 2010) - NoSQL, des grands du Web aux entreprises
Lorraine JUG (dec 2010) - NoSQL, des grands du Web aux entreprisesLorraine JUG (dec 2010) - NoSQL, des grands du Web aux entreprises
Lorraine JUG (dec 2010) - NoSQL, des grands du Web aux entreprisesMichaël Figuière
 

Plus de Michaël Figuière (20)

EclipseCon - Building an IDE for Apache Cassandra
EclipseCon - Building an IDE for Apache CassandraEclipseCon - Building an IDE for Apache Cassandra
EclipseCon - Building an IDE for Apache Cassandra
 
Paris Cassandra Meetup - Cassandra for Developers
Paris Cassandra Meetup - Cassandra for DevelopersParis Cassandra Meetup - Cassandra for Developers
Paris Cassandra Meetup - Cassandra for Developers
 
YaJug - Cassandra for Java Developers
YaJug - Cassandra for Java DevelopersYaJug - Cassandra for Java Developers
YaJug - Cassandra for Java Developers
 
Geneva JUG - Cassandra for Java Developers
Geneva JUG - Cassandra for Java DevelopersGeneva JUG - Cassandra for Java Developers
Geneva JUG - Cassandra for Java Developers
 
ChtiJUG - Cassandra 2.0
ChtiJUG - Cassandra 2.0ChtiJUG - Cassandra 2.0
ChtiJUG - Cassandra 2.0
 
Cassandra summit 2013 - DataStax Java Driver Unleashed!
Cassandra summit 2013 - DataStax Java Driver Unleashed!Cassandra summit 2013 - DataStax Java Driver Unleashed!
Cassandra summit 2013 - DataStax Java Driver Unleashed!
 
NYC* Tech Day - New Cassandra Drivers in Depth
NYC* Tech Day - New Cassandra Drivers in DepthNYC* Tech Day - New Cassandra Drivers in Depth
NYC* Tech Day - New Cassandra Drivers in Depth
 
Paris Cassandra Meetup - Overview of New Cassandra Drivers
Paris Cassandra Meetup - Overview of New Cassandra DriversParis Cassandra Meetup - Overview of New Cassandra Drivers
Paris Cassandra Meetup - Overview of New Cassandra Drivers
 
ApacheCon Europe 2012 - Real Time Big Data in practice with Cassandra
ApacheCon Europe 2012 - Real Time Big Data in practice with CassandraApacheCon Europe 2012 - Real Time Big Data in practice with Cassandra
ApacheCon Europe 2012 - Real Time Big Data in practice with Cassandra
 
NoSQL Matters 2012 - Real Time Big Data in practice with Cassandra
NoSQL Matters 2012 - Real Time Big Data in practice with CassandraNoSQL Matters 2012 - Real Time Big Data in practice with Cassandra
NoSQL Matters 2012 - Real Time Big Data in practice with Cassandra
 
GTUG Nantes (Dec 2011) - BigTable et NoSQL
GTUG Nantes (Dec 2011) - BigTable et NoSQLGTUG Nantes (Dec 2011) - BigTable et NoSQL
GTUG Nantes (Dec 2011) - BigTable et NoSQL
 
Duchess France (Nov 2011) - Atelier Apache Mahout
Duchess France (Nov 2011) - Atelier Apache MahoutDuchess France (Nov 2011) - Atelier Apache Mahout
Duchess France (Nov 2011) - Atelier Apache Mahout
 
BreizhCamp (Jun 2011) - Haute disponibilité et élasticité avec Cassandra
BreizhCamp (Jun 2011) - Haute disponibilité et élasticité avec CassandraBreizhCamp (Jun 2011) - Haute disponibilité et élasticité avec Cassandra
BreizhCamp (Jun 2011) - Haute disponibilité et élasticité avec Cassandra
 
Mix-IT (Apr 2011) - Intelligence Collective avec Apache Mahout
Mix-IT (Apr 2011) - Intelligence Collective avec Apache MahoutMix-IT (Apr 2011) - Intelligence Collective avec Apache Mahout
Mix-IT (Apr 2011) - Intelligence Collective avec Apache Mahout
 
Xebia Knowledge Exchange (mars 2011) - Machine Learning with Apache Mahout
Xebia Knowledge Exchange (mars 2011) - Machine Learning with Apache MahoutXebia Knowledge Exchange (mars 2011) - Machine Learning with Apache Mahout
Xebia Knowledge Exchange (mars 2011) - Machine Learning with Apache Mahout
 
Breizh JUG (mar 2011) - NoSQL : Des Grands du Web aux Entreprises
Breizh JUG (mar 2011) - NoSQL : Des Grands du Web aux EntreprisesBreizh JUG (mar 2011) - NoSQL : Des Grands du Web aux Entreprises
Breizh JUG (mar 2011) - NoSQL : Des Grands du Web aux Entreprises
 
FOSDEM (feb 2011) - A real-time search engine with Lucene and S4
FOSDEM (feb 2011) -  A real-time search engine with Lucene and S4FOSDEM (feb 2011) -  A real-time search engine with Lucene and S4
FOSDEM (feb 2011) - A real-time search engine with Lucene and S4
 
Xebia Knowledge Exchange (feb 2011) - Large Scale Web Development
Xebia Knowledge Exchange (feb 2011) - Large Scale Web DevelopmentXebia Knowledge Exchange (feb 2011) - Large Scale Web Development
Xebia Knowledge Exchange (feb 2011) - Large Scale Web Development
 
Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...
Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...
Xebia Knowledge Exchange (jan 2011) - Trends in Enterprise Applications Archi...
 
Lorraine JUG (dec 2010) - NoSQL, des grands du Web aux entreprises
Lorraine JUG (dec 2010) - NoSQL, des grands du Web aux entreprisesLorraine JUG (dec 2010) - NoSQL, des grands du Web aux entreprises
Lorraine JUG (dec 2010) - NoSQL, des grands du Web aux entreprises
 

JUG Summer Camp (Sep 2011) - Les applications et architectures d’entreprise de demain

  • 1. Les applications et architectures d’entreprise de demain Un aperçu des changements à venir 16/9/2011 Michaël Figuière
  • 2. Speaker @mfiguiere blog.xebia.fr Michaël Figuière Distributed Architectures NoSQL Search Engines
  • 3. Une nouvelle génération d’applications
  • 4. Beaucoup de nouvelle tendances... UX Social Intelligence Temps-réel Mobilité Géo-localisation
  • 6. Mobilité • Internet mobile est une réalité La connexion Internet devient quasi-permanente • 40% des nouveaux internautes dans le monde d’ici 2015 Certains internautes seront uniquement mobiles • Les connexions 4G arrivent bientôt De nouveaux cas d’usage deviendront possibles
  • 8. Taxi G7 et la Géo-localisation Géo-localisation dans l’application iPhone de TaxiG7
  • 9. Smart Lists dans Facebook Facebook maintient une liste d’amis à proximité
  • 10. Géo-localisation en pratique • Certaines bases de données permettent les requêtes géo-spatiales PostGIS, MongoDB, ... • Les moteurs de recherche le permettent également Lucene propose une extension « spacial » • HTML5 et les APIs des OS mobiles permettent de se géo-localiser Où par IP pour les applications fixes
  • 12. Notifications et mise à jour dans Quora Quora notifie l’utilisateur des évènements le concernant et met à jour l’affichage en temps réel
  • 13. Recherche en continu dans Twitter De nouveaux résultats sont disponibles au fur et à mesure
  • 14. Temps-réel en pratique • ElasticSearch propose des requêtes temps-réel et continues (Percolator) Stocke les requête, teste les nouveaux documents • Atmosphere et WebSocket permettent l’intégration Web Permet les chats, notifications, rafraichissement,... • Les moteurs de Complex Event Processing (CEP) pour aller plus loin Esper est un moteur OpenSource très mature
  • 16. People you Should Know par LinkedIn LinkedIn suggère des personnes que l’on connait en se basant sur le graphe social, sur l’historique de recherche, etc...
  • 17. Recommandations par Amazon Amazon suggère des articles en se basant sur les achats d’autres clients
  • 18. Top Stories dans Google News Sujets tendances découverts par Google News
  • 19. En pratique • Apache Mahout veut devenir le Lucene de l’apprentissage artificiel Rapproche les applications Java et l’apprentissage artificiel • Se nourrit des gros volumes de données stockés dans NoSQL Intégration native de Mahout et de Hadoop • Neo4j permet de stocker des graphes et de découvrir de l’information Par des algorithmes de plus court chemin, centralité,...
  • 21. Google+ et les cercles Les fameux cercles de Google+
  • 22. Google Flight Google Flight apporte une interface novatrice pour la recherche de vols
  • 25. Service Oriented Architecture Comment assurer la scalabilité de cette architecture ?
  • 27. Cloud Computing principles • Abstraction SaaS, PaaS, IaaS, ... actually « (.*) as a Service » • Automatisation Réduire les interventions manuelles autant que possible • Elasticité Augmenter ou réduire la capacité selon les besoins
  • 28. Cloud’s basic abstractions Fourni par le Provider Cloud Fourni par l’entreprise Fourni un middleware SaaS Application Client / User PaaS Web Application Middleware IaaS Web Fourni un serveur vide
  • 29. Public Cloud vs. Private Cloud Une charge typique sur une journée
  • 30. Public Cloud vs. Private Cloud Public Cloud Private Cloud
  • 33. Base de données répartie ou non A B C ABC DEF D E F Base de données sur un Base de données répartie et donc serveur unique scalable et élastique
  • 34. Relationnel et non relationnel
  • 35. Relationnel et non relationnel Les données étant très liées entre elles, leur partitionnement sur un ensemble de machines est complexe
  • 36. Relationnel et non relationnel Cette modélisation simpliste rend les données plus flexibles et partitionnables
  • 37. Traditional Design vs. Design for failures
  • 38. Design traditionnel • Les erreurs techniques génère typiquement une page d’erreur SQLException, IOException, unavailable backend... • Quelques Single Points of Failure et Bottlenecks Services stateful et hautement disponibles parfois couteux • Timeouts et backends lents sont typiquement non gérés Un backend devient lent et toute l’application est ralentie
  • 39. Design for failures • Les défaillances vont arriver Accueillons-les plutôt que d’essayer de les éviter • Gérer les backends lents ou défaillants avec des Circuit Breakers L’application peut offrir un mode dégradé • Cloud et NoSQL apportent des stockages scalables et disponibles Les données les plus critiques peuvent ainsi être disponibles
  • 40. Conclusion • L’élasticité peut réduire les coûts et améliorer l’image de marque ... et simplifier le Capacity Planning • Le Cloud est mis en oeuvre par des experts Evite donc les solutions couteuses et fragiles • Les services fournis par le Cloud vont s’améliorer rapidement Grace à une boucle de feedback plus riche et plus rapide • Mais .... JEE 7 ne viendra pas avant 2013 / 2014 !
  • 41. Questions ? blog.xebia.fr @mfiguiere