SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
INDEXATION
Mme Ines Slimene
Ines_slimene@yahoo.fr
Plan
oCréation d’index
oUtilisation de explain
oTypes d’index :
◦ Index unique
◦ Index composé
◦ Index partiel
◦ Index textuel
◦ Index géo-spatiale
https://inesslimene.wixsite.com/moncours INDEXATION 2
Indexation
o Très similaire aux SGBDR, l'indexation dans MongoDB se fait sur un ou plusieurs champs.
o Permet d'améliorer les performances de recherche.
o Les indexes sont stockés au niveau des collections.
o Le fonctionnement interne est très proche de ce que l’on trouve dans les SGBD actuels.
o Un champ peu requêté n'a aucun intérêt à être indexé
o Utilisé dans une requête : select, update, sort
o Recherche plus rapide mais écriture plus lente car mise a jour des index
https://inesslimene.wixsite.com/moncours INDEXATION 3
Création et suppression
o Création d’un index
db.students.createIndex({"student_id" : 1},{name:"ind1",unique: true})
o Affichage des index d’une collection
db.students.getIndexes()
o Suppression d’un index
db.students.dropIndex("student_id" : 1)
db.students.dropIndex("ind1")
o Suppression de tous les indexes
db.students.dropIndexes()
https://inesslimene.wixsite.com/moncours INDEXATION 4
Index composé
db.students.createIndex({"student_id" : 1,"type":1, "score":1},{name:"ind2"})
o Dans le cas d’un index composé, MongoDB utilise l’index dans les requêtes
dont les critères de recherche sont :
◦ Student_id
◦ Student_id,type
◦ Student_id, type, score
o MongoDB ne peut pas utiliser cet index dans les requêtes dont les critères de
recherche sont :
◦ type
◦ score
◦ Type, score
https://inesslimene.wixsite.com/moncours INDEXATION 5
Index unique
o Index unique: pas de duplication de valeurs.
o Ne peut être crée que pour des champs a valeur unique.
db.students.createIndex({"student_id" : 1},{unique: true})
o Remarque :
oSi un document n’a pas de valeur pour le champ indexé, l’index aura la valeur
nulle.
oMongoDB permet l’insertion d’une seule valeur nulle pour un index unique
https://inesslimene.wixsite.com/moncours INDEXATION 6
Sparse
{"userid" : "newbie" }
{"userid" : "abby", "score" : 82 }
{"userid" : "nina", "score" : 90 }
o sparse : indexer que les documents contenant des valeurs non nulles de
student_id
db.scores.createIndex( { score: 1 } , { sparse: true } )
db.scores.find().sort( { score: -1 } ) // n’utilise pas l’index
Forcer l’utilisation de l’index db.scores.find().sort( { score: -1 } ).hint( { score: 1 } )
https://inesslimene.wixsite.com/moncours INDEXATION 7
Index partiel
o Une version plus général de sparse.
db.contacts.createIndex({ name: 1 },{ partialFilterExpression: { name: { $exists:
true } } })
o Exemple :
db.students.createIndex({ score: 1 },{ partialFilterExpression: { score: { $gt: 50 } }
})
o Utilisation index :
db. students.find( { score: 62 } ) // index utilisé
db. students.find( { score: 15 } ) // n’utilise pas l’index
https://inesslimene.wixsite.com/moncours INDEXATION 8
Utilisation de explain
explain : retourne les informations sur l’utilisation des index
db.students.find({student_id : 50}).explain("executionStats")
https://inesslimene.wixsite.com/moncours INDEXATION 9
Hint
o Forcer l’utilisation de l'index student_id
db.students.find().hint({« student_id" : 1})
https://inesslimene.wixsite.com/moncours INDEXATION 10
Recherche textuelle
db.livres.createIndex( { description: "text" } )
db.livres.find({$text:{$search:"serveur"}})
db.livres.find({$text:{$search:"serveur",$caseSensitive: true}})
db.livres.find({$text:{$search:"Javascript cote"}},
{score:{ $meta:"textScore"}}).sort({score:{$meta:"textScore"}})
db.livres.find({$text:{$search:""Javascript cote""}},{description:1})
https://inesslimene.wixsite.com/moncours INDEXATION 11
Index géo-spatiale
o On utilise l’index de type ‘2d’ pour les données stockées en tant que points avec deux coordonnées.
Exemple :
{"city": "GOODWATER", "loc": [-86.078149, 33.074642], "pop": 3813, "state": "AL", "_id": "35072"}
o Créer un index géo-spatiale. Type:1 : ordre ascendant
db.cities.createIndex({loc:'2d',type:1})
o Les indexes de type ‘2dsphere’ supportent les données stockées en tant qu’objet de type GeoJSON
Exemple :
{"_id":111,"location":{"coordinates":[-73.961704,40.662942],"type":"Point"},"name":"Wendy'S"}
o Créer un index géo-spatiale sphérique
db.stores.createIndex({location:'2dsphere'})
https://inesslimene.wixsite.com/moncours INDEXATION 12
Index géo-spatiale : Exemples
o index géo-spatiale
Exemple : Afficher les trois stores qui existent a proximité de la position[50,50]
db.cities.find({loc:{$near:[50,50]}}).limit(3)
o index géo-spatiale sphérique
Pour chercher un point de type GeoJSON, l’operateur $near requiert un index de type 2dsphere.
Exemple : Afficher les stores qui sont proche de max 1km du point dont les coordonnées sont
[-130, 39]
db.stores.find({ location:{ $near:{ $geometry: { type: "Point", coordinates: [-130, 39]},
$maxDistance:1000 } } })
https://inesslimene.wixsite.com/moncours INDEXATION 13

Weitere ähnliche Inhalte

Ähnlich wie Indexation

Accès aux bases de données via jdbc
Accès aux bases de données via jdbcAccès aux bases de données via jdbc
Accès aux bases de données via jdbcRachid Lajouad
 
Présentation mongoDB et mongoId
Présentation mongoDB et mongoIdPrésentation mongoDB et mongoId
Présentation mongoDB et mongoIdvtabary
 
MongoDB_presentation_ye.pptx
MongoDB_presentation_ye.pptxMongoDB_presentation_ye.pptx
MongoDB_presentation_ye.pptxZALIMAZA
 
MongoDB_presentation_p.pptx
MongoDB_presentation_p.pptxMongoDB_presentation_p.pptx
MongoDB_presentation_p.pptxZALIMAZA
 
Oxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewOxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewLudovic Piot
 
Oxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide
 
Analyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurAnalyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurMicrosoft Technet France
 
Cours yeoman backbone box2d
Cours yeoman backbone box2dCours yeoman backbone box2d
Cours yeoman backbone box2dhugomallet
 
OOP & Design Pattern - Algiers Developers Meetup August 2015
OOP & Design Pattern - Algiers Developers Meetup August 2015OOP & Design Pattern - Algiers Developers Meetup August 2015
OOP & Design Pattern - Algiers Developers Meetup August 2015Tarik Zakaria Benmerar
 
MongoDB_presentation_example.pptx
MongoDB_presentation_example.pptxMongoDB_presentation_example.pptx
MongoDB_presentation_example.pptxZALIMAZA
 
MongoDB_presentation_tts.pptx
MongoDB_presentation_tts.pptxMongoDB_presentation_tts.pptx
MongoDB_presentation_tts.pptxZALIMAZA
 
1425583156389.pptx
1425583156389.pptx1425583156389.pptx
1425583156389.pptxtirike6016
 
MongoDB_presentation_o.pptx
MongoDB_presentation_o.pptxMongoDB_presentation_o.pptx
MongoDB_presentation_o.pptxZALIMAZA
 
MongoDB_presentation.pptx
MongoDB_presentation.pptxMongoDB_presentation.pptx
MongoDB_presentation.pptxZALIMAZA
 
MongoDB_presentation_xmls.pptx
MongoDB_presentation_xmls.pptxMongoDB_presentation_xmls.pptx
MongoDB_presentation_xmls.pptxZALIMAZA
 
MongoDB_presentation_Moyou.pptx
MongoDB_presentation_Moyou.pptxMongoDB_presentation_Moyou.pptx
MongoDB_presentation_Moyou.pptxZALIMAZA
 

Ähnlich wie Indexation (20)

Accès aux bases de données via jdbc
Accès aux bases de données via jdbcAccès aux bases de données via jdbc
Accès aux bases de données via jdbc
 
Présentation mongoDB et mongoId
Présentation mongoDB et mongoIdPrésentation mongoDB et mongoId
Présentation mongoDB et mongoId
 
MongoDB_presentation_ye.pptx
MongoDB_presentation_ye.pptxMongoDB_presentation_ye.pptx
MongoDB_presentation_ye.pptx
 
MongoDB_presentation_p.pptx
MongoDB_presentation_p.pptxMongoDB_presentation_p.pptx
MongoDB_presentation_p.pptx
 
Oxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewOxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overview
 
Oxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic Search
 
Analyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurAnalyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL Serveur
 
Cours yeoman backbone box2d
Cours yeoman backbone box2dCours yeoman backbone box2d
Cours yeoman backbone box2d
 
Pg jsonb format 16-9
Pg jsonb format 16-9Pg jsonb format 16-9
Pg jsonb format 16-9
 
OOP and Design Patterns
OOP and Design PatternsOOP and Design Patterns
OOP and Design Patterns
 
OOP & Design Pattern - Algiers Developers Meetup August 2015
OOP & Design Pattern - Algiers Developers Meetup August 2015OOP & Design Pattern - Algiers Developers Meetup August 2015
OOP & Design Pattern - Algiers Developers Meetup August 2015
 
MongoDB_presentation_example.pptx
MongoDB_presentation_example.pptxMongoDB_presentation_example.pptx
MongoDB_presentation_example.pptx
 
Intro mongodb
Intro mongodbIntro mongodb
Intro mongodb
 
MongoDB_presentation_tts.pptx
MongoDB_presentation_tts.pptxMongoDB_presentation_tts.pptx
MongoDB_presentation_tts.pptx
 
1425583156389.pptx
1425583156389.pptx1425583156389.pptx
1425583156389.pptx
 
MongoDB_presentation_o.pptx
MongoDB_presentation_o.pptxMongoDB_presentation_o.pptx
MongoDB_presentation_o.pptx
 
MongoDB_presentation.pptx
MongoDB_presentation.pptxMongoDB_presentation.pptx
MongoDB_presentation.pptx
 
Cours 3 les directives
Cours 3 les directivesCours 3 les directives
Cours 3 les directives
 
MongoDB_presentation_xmls.pptx
MongoDB_presentation_xmls.pptxMongoDB_presentation_xmls.pptx
MongoDB_presentation_xmls.pptx
 
MongoDB_presentation_Moyou.pptx
MongoDB_presentation_Moyou.pptxMongoDB_presentation_Moyou.pptx
MongoDB_presentation_Moyou.pptx
 

Mehr von Ines Slimene (14)

Spark
SparkSpark
Spark
 
Redis
RedisRedis
Redis
 
Crud
CrudCrud
Crud
 
Cassandra
CassandraCassandra
Cassandra
 
Agregation
AgregationAgregation
Agregation
 
Pig
PigPig
Pig
 
Neo4j
Neo4jNeo4j
Neo4j
 
Mapreduce
MapreduceMapreduce
Mapreduce
 
Introduction nosql
Introduction nosqlIntroduction nosql
Introduction nosql
 
Introduction
IntroductionIntroduction
Introduction
 
Hive
HiveHive
Hive
 
Hdfs
HdfsHdfs
Hdfs
 
Hbase
HbaseHbase
Hbase
 
Hadoop
HadoopHadoop
Hadoop
 

Kürzlich hochgeladen

presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptxMalikaIdseaid1
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne FontaineTxaruka
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfachrafbrahimi1
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film françaisTxaruka
 
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptMécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptssusercbaa22
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film françaisTxaruka
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxssusercbaa22
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.Franck Apolis
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptssusercbaa22
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.Txaruka
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprisesMajdaKtiri2
 
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...M2i Formation
 
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfCOURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfabatanebureau
 
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxSUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxssuserbd075f
 

Kürzlich hochgeladen (16)

presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptx
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne Fontaine
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdf
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film français
 
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptMécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film français
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.ppt
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprises
 
Evaluación Alumnos de Ecole Victor Hugo
Evaluación Alumnos de Ecole  Victor HugoEvaluación Alumnos de Ecole  Victor Hugo
Evaluación Alumnos de Ecole Victor Hugo
 
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
 
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfCOURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
 
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxSUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
 

Indexation

  • 2. Plan oCréation d’index oUtilisation de explain oTypes d’index : ◦ Index unique ◦ Index composé ◦ Index partiel ◦ Index textuel ◦ Index géo-spatiale https://inesslimene.wixsite.com/moncours INDEXATION 2
  • 3. Indexation o Très similaire aux SGBDR, l'indexation dans MongoDB se fait sur un ou plusieurs champs. o Permet d'améliorer les performances de recherche. o Les indexes sont stockés au niveau des collections. o Le fonctionnement interne est très proche de ce que l’on trouve dans les SGBD actuels. o Un champ peu requêté n'a aucun intérêt à être indexé o Utilisé dans une requête : select, update, sort o Recherche plus rapide mais écriture plus lente car mise a jour des index https://inesslimene.wixsite.com/moncours INDEXATION 3
  • 4. Création et suppression o Création d’un index db.students.createIndex({"student_id" : 1},{name:"ind1",unique: true}) o Affichage des index d’une collection db.students.getIndexes() o Suppression d’un index db.students.dropIndex("student_id" : 1) db.students.dropIndex("ind1") o Suppression de tous les indexes db.students.dropIndexes() https://inesslimene.wixsite.com/moncours INDEXATION 4
  • 5. Index composé db.students.createIndex({"student_id" : 1,"type":1, "score":1},{name:"ind2"}) o Dans le cas d’un index composé, MongoDB utilise l’index dans les requêtes dont les critères de recherche sont : ◦ Student_id ◦ Student_id,type ◦ Student_id, type, score o MongoDB ne peut pas utiliser cet index dans les requêtes dont les critères de recherche sont : ◦ type ◦ score ◦ Type, score https://inesslimene.wixsite.com/moncours INDEXATION 5
  • 6. Index unique o Index unique: pas de duplication de valeurs. o Ne peut être crée que pour des champs a valeur unique. db.students.createIndex({"student_id" : 1},{unique: true}) o Remarque : oSi un document n’a pas de valeur pour le champ indexé, l’index aura la valeur nulle. oMongoDB permet l’insertion d’une seule valeur nulle pour un index unique https://inesslimene.wixsite.com/moncours INDEXATION 6
  • 7. Sparse {"userid" : "newbie" } {"userid" : "abby", "score" : 82 } {"userid" : "nina", "score" : 90 } o sparse : indexer que les documents contenant des valeurs non nulles de student_id db.scores.createIndex( { score: 1 } , { sparse: true } ) db.scores.find().sort( { score: -1 } ) // n’utilise pas l’index Forcer l’utilisation de l’index db.scores.find().sort( { score: -1 } ).hint( { score: 1 } ) https://inesslimene.wixsite.com/moncours INDEXATION 7
  • 8. Index partiel o Une version plus général de sparse. db.contacts.createIndex({ name: 1 },{ partialFilterExpression: { name: { $exists: true } } }) o Exemple : db.students.createIndex({ score: 1 },{ partialFilterExpression: { score: { $gt: 50 } } }) o Utilisation index : db. students.find( { score: 62 } ) // index utilisé db. students.find( { score: 15 } ) // n’utilise pas l’index https://inesslimene.wixsite.com/moncours INDEXATION 8
  • 9. Utilisation de explain explain : retourne les informations sur l’utilisation des index db.students.find({student_id : 50}).explain("executionStats") https://inesslimene.wixsite.com/moncours INDEXATION 9
  • 10. Hint o Forcer l’utilisation de l'index student_id db.students.find().hint({« student_id" : 1}) https://inesslimene.wixsite.com/moncours INDEXATION 10
  • 11. Recherche textuelle db.livres.createIndex( { description: "text" } ) db.livres.find({$text:{$search:"serveur"}}) db.livres.find({$text:{$search:"serveur",$caseSensitive: true}}) db.livres.find({$text:{$search:"Javascript cote"}}, {score:{ $meta:"textScore"}}).sort({score:{$meta:"textScore"}}) db.livres.find({$text:{$search:""Javascript cote""}},{description:1}) https://inesslimene.wixsite.com/moncours INDEXATION 11
  • 12. Index géo-spatiale o On utilise l’index de type ‘2d’ pour les données stockées en tant que points avec deux coordonnées. Exemple : {"city": "GOODWATER", "loc": [-86.078149, 33.074642], "pop": 3813, "state": "AL", "_id": "35072"} o Créer un index géo-spatiale. Type:1 : ordre ascendant db.cities.createIndex({loc:'2d',type:1}) o Les indexes de type ‘2dsphere’ supportent les données stockées en tant qu’objet de type GeoJSON Exemple : {"_id":111,"location":{"coordinates":[-73.961704,40.662942],"type":"Point"},"name":"Wendy'S"} o Créer un index géo-spatiale sphérique db.stores.createIndex({location:'2dsphere'}) https://inesslimene.wixsite.com/moncours INDEXATION 12
  • 13. Index géo-spatiale : Exemples o index géo-spatiale Exemple : Afficher les trois stores qui existent a proximité de la position[50,50] db.cities.find({loc:{$near:[50,50]}}).limit(3) o index géo-spatiale sphérique Pour chercher un point de type GeoJSON, l’operateur $near requiert un index de type 2dsphere. Exemple : Afficher les stores qui sont proche de max 1km du point dont les coordonnées sont [-130, 39] db.stores.find({ location:{ $near:{ $geometry: { type: "Point", coordinates: [-130, 39]}, $maxDistance:1000 } } }) https://inesslimene.wixsite.com/moncours INDEXATION 13