sql >> Base de Datos >  >> NoSQL >> MongoDB

Mejor manera de mover la colección MongoDB a otra colección

Podría usar un MapReduce trabajo para esto.

MapReduce le permite especificar una colección externa para almacenar los resultados.

Cuando tiene una función de mapa que emite cada documento con su propio _id como clave y una función de reducción que devuelve la primera (y en este caso solo porque los _id son únicos) entrada de la matriz de valores, MapReduce es esencialmente una operación de copia del de la colección fuente a la colección externa.

Código no probado:

db.runCommand(
           {
             mapReduce: "mongo_collection",
             map: function(document) {
                  emit(document._id, document);
             },
             reduce: function(key, values) {
                  return values[0];
             },
             out: {
                  merge:"mongo_his_collection"
             }
           }
         )