MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Apakah cursor.skip() pada kunci yang diindeks selalu lebih cepat?

Tak satu pun dari kueri Anda yang melakukan filter pada age , jadi tidak ada alasan untuk menggunakan indeks.

Jika Anda menambahkan kondisi pada age , akan ada perbedaan (walaupun minimal dengan sedikit dokumen)

> pageNumber=18;nPerPage=20; db.slow.find({age:{$gt:200}}).
      skip(pageNumber > 0 ? ((pageNumber-1)*nPerPage) : 0).limit(nPerPage).
      explain("executionStats")

# "executionTimeMillis" : 14,
# "inputStage" : {
#     "stage" : "COLLSCAN",

> pageNumber=18;nPerPage=20; db.fast.find({age:{$gt:200}}).
      skip(pageNumber > 0 ? ((pageNumber-1)*nPerPage) : 0).limit(nPerPage).
      explain("executionStats"

# "executionTimeMillis" : 0,
# "inputStage" : {
#     "stage" : "IXSCAN",


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Spring Data Mongo:upsert dengan berbagai bidang diperbarui

  2. Ingin melakukan pencadangan tambahan untuk mongodb. Jurnal? Oplog?

  3. Meminta array di dalam dokumen luwak

  4. PostgreSQL dan MongoDB DI MANA DALAM kondisi

  5. PyMongo max_time_ms