MongoDB WiredTiger


Ejemplo

WiredTiger admite árboles LSM para almacenar índices . Los árboles LSM son más rápidos para las operaciones de escritura cuando necesita escribir grandes cargas de trabajo de inserciones aleatorias.

En WiredTiger, no hay actualizaciones en el lugar . Si necesita actualizar un elemento de un documento, se insertará un nuevo documento mientras que se eliminará el documento anterior.

WiredTiger también ofrece concurrencia a nivel de documentos . Se supone que dos operaciones de escritura no afectarán al mismo documento, pero si lo hace, una operación se rebobinará y se ejecutará más adelante. Eso es un gran aumento de rendimiento si los rebobinados son raros.

WiredTiger admite los algoritmos Snappy y zLib para la compresión de datos e índices en el sistema de archivos. Snappy es el predeterminado. Requiere menos CPU, pero tiene una tasa de compresión más baja que zLib.

Cómo usar el motor WiredTiger

mongod --storageEngine wiredTiger --dbpath <newWiredTigerDBPath>

Nota:

  1. Después de mongodb 3.2, el motor predeterminado es WiredTiger.
  2. newWiredTigerDBPath no debe contener datos de otro motor de almacenamiento. Para migrar sus datos, debe volcarlos y volver a importarlos en el nuevo motor de almacenamiento.
    mongodump --out <exportDataDestination>
    mongod --storageEngine wiredTiger --dbpath <newWiredTigerDBPath>
    mongorestore <exportDataDestination>