MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

sử dụng các luồng akka để xem qua bộ sưu tập mongo

Giải pháp 1:

def changeModelAndInsertToNewCollection(person:Person) : Future[Boolean] ={
//Todo : call mongo api to update the person
???
}

def processPeople()(implicit m: Materializer): Future[Done] = {
val numberOfConcurrentUpdate = 10

val peopleSource: Source[Person, Future[State]] =
  collection
    .find(json())
    .cursor[Person]()
    .documentSource()

peopleSource
  .mapAsync(numberOfConcurrentUpdate)(changeModelAndInsertToNewCollection)
  withAttributes(ActorAttributes.supervisionStrategy(Supervision.restartingDecider))
  .runWith(Sink.ignore)}

Giải pháp 2: sử dụng Alpakka làm trình kết nối luồng akka cho mongo

val source: Source[Document, NotUsed] =
MongoSource(collection.find(json()).cursor[Person]().documentSource())

source.runWith(MongoSink.updateOne(2, collection))



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Java MongoDB POST:415 kiểu trung gian không được hỗ trợ

  2. Mongoose với boolean độc đáo của true

  3. Tạo khu vực quản trị trong năm phút với AdminBro, express, mongoDB, mongoose

  4. Thiết kế giản đồ Mongodb

  5. Bổ sung xác thực MongoDB jsonSchema