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

PyMongo -- iterasi kursor

Sudahkah Anda mempertimbangkan pendekatan seperti:

for line in file
  value = line[a:b]
  cursor = collection.find({"field": value})
  entries = cursor[:] # or pull them out with a loop or comprehension -- just get all the docs
  # then process entries as a list, either singly or in batch

Sebagai alternatif, sesuatu seperti:

# same loop start
  entries[value] = cursor[:]
# after the loop, all the cursors are out of scope and closed
for value in entries:
  # process entries[value], either singly or in batch

Pada dasarnya, selama Anda memiliki RAM yang cukup untuk menyimpan set hasil Anda, Anda harus dapat menariknya dari kursor dan menahannya sebelum memproses. Ini mungkin tidak lebih cepat secara signifikan, tetapi ini akan mengurangi pelambatan apa pun khususnya pada kursor, dan membebaskan Anda untuk memproses data secara paralel jika Anda menyiapkannya.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Gunakan server MongoDB tiruan untuk pengujian unit

  2. MongoDB:desain terbaik untuk aplikasi perpesanan

  3. Mongoid:temukan melalui Array id

  4. Cara mengaktifkan kueri MongoDB mentah langsung di Ruby

  5. Memasang di Mongo DB menggunakan driver C # resmi