NoSql : Schémas,
        requêtage et optimisation

                       Pierre Couzy, Microsoft
                       Alexandre Morgaut, 4D
                                       @piercou
                                      @amorgaut



Code / Développement
Quel intérêt ?
• Les trois V de Big Data
  – Vitesse
  – Volume
  – Versatilité


• Quelques spécificités Cloud
Quel NoSql ?




http://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/
Quel NoSql ?
• Tous des descendants de memcache ?
  –   Memcache
  –   Redis
  –   Azure Table storage
  –   Mongo
  –   Neo4j
  –   Wakanda
TRY XXX ON LINE
REST

• En apparence, juste quelques verbes

• Des problèmes de format

• Des problèmes de contexte
(Concurrence et Transactions)

CONNECTÉ OU REST
Les spécificités

• La gestion d’état

• L’impact sur la concurrence

• L’impact sur les transactions
Schémas et capacités de modélisation

• Les structures apportées par chaque base
EXPLORATION DES BASES
Conception des Schémas
• Le schéma est dans l’application

• La base n’assure pas d’intégrité

• Les transactions ont un impact
Les modes de requêtage
•   Index
•   Table scan
•   Map Reduce
•   Jointures
    – Document embeddé ou collection externe


• Vues
Le processus de conception
• Conception du schéma
  – 1/ Modélisation logique des entités
  – 2/ Recensement des requêtes depuis les besoins
  – 3/ Phase de modélisation sur les entités/relations


• En apparence du très standard.
La modélisation
• Peu ou pas de jointures

• Le requêtage pilote la conception du
  schéma

• Pas d’index
• Optimisation
  – 1/ dev (processus plus itératif que d’habitude)
  – 2/ Ops (splitter sa charge / monitorer)
  – 3/ Evaluer l’impact du (futur) sharding
Rapprochez-vous
Regroupez-vous
N’attendez plus
Composez tout ça
Séparez vos workloads
Une anecdote pour terminer ..
Merci !



          • Questions / Réponses

NoSql : conception des schémas, requêtage, et optimisation

Notes de l'éditeur

  • #2 Intro code / dev