MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

MongoDB Java драйвер:MongoCore драйвер срещу MongoDB драйвер срещу MongoDB Async драйвер

TL;DR :

Използвайте асинхронния драйвер, ако операциите са бавни, или използвайте обикновения драйвер в повечето случаи. Не трябва да използвате основния драйвер.

Редовен драйвер за MongoDB :

Общ драйвер, който можете да използвате за търсене, създаване, четене, актуализиране и изтриване на документи. find(...) , updateMany(...) , deleteMany(...) и подобни методи ще висят, докато резултатът не бъде върнат или операцията не е извършена (синхронно поведение). Това е драйверът, който повечето програми използват и е добър в повечето случаи.

Ето пример за вмъкване на единичен документ:

collection.insertOne(doc);
//Do something here.
System.out.println("Inserted!")

Асинхронен драйвер MongoDB :

Друг тип драйвер, който можете да използвате за търсене, създаване, четене, актуализиране и изтриване на документи. Този драйвер предлага методи, подобни на обикновения драйвер (find(...) , updateMany(...) , deleteMany(...) и т.н.).

Разликата с обикновения драйвер е, че основната нишка няма да виси, защото асинхронният драйвер изпраща резултата в обратно повикване (асинхронно поведение). Този драйвер се използва, когато операциите могат да отнемат много време (много данни за преминаване, голямо забавяне, заявка за неиндексирани полета и т.н.) и не искате да управлявате множество нишки.

Ето пример за обратно извикване при вмъкване на единичен документ:

collection.insertOne(doc, new SingleResultCallback<Void>() {
    @Override
    public void onResult(final Void result, final Throwable t) {
        //Do something here.
        System.out.println("Inserted!");
    }
});
// Do something to show that the Document was not inserted yet.
System.out.println("Inserting...")

За повече информация прочетете това .

Основен драйвер на MongoDB

Базов слой на обикновените и асинхронните драйвери. Той съдържа методи на ниско ниво за извършване на всички операции, общи за обикновените и асинхронните драйвери. Освен ако не създавате нов API/драйвер за MongoDB, не трябва да използвате основния драйвер.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Актуализирайте обект с даден ID, вграден в масив без преструктуриране на базата данни на Mongo

  2. Свързване с бази данни MongoDB

  3. Премахване на елемент от масив в mongodb

  4. колба 0.10 mongo работи извън контекста на приложението

  5. Инсталация на MongoDB