Todas las Noticias en Películas, Avances de Películas y Reseñas.

Grupo MongoDB – Hackanons

MongoDB es una base de datos orientada a documentos de código abierto. Almacena varios datos en pares clave-valor, como todos sabemos, ya que es una base de datos NoSQL. El término NoSQL significa no relacional. Todos ustedes lo saben, de mis artículos anteriores, ¿no es así? Entonces, en este artículo, veremos algo nuevo, que es “grupo MongoDB”. Entonces, vamos a empezar con el tema de inmediato.

grupo MongoDB

El operador de grupo tiene otro nombre, el operador de acumulación. Es un operador importante en el lenguaje MongoDB y ayuda a realizar varias transformaciones de datos. Group forma parte de las funciones de agregación en MongoDB.

Entonces, ahora que estamos listos para profundizar en el operador $group, echemos un vistazo rápido a algunos de los requisitos previos.

requisitos previos
  • Ya tendrá MongoDB en su sistema. Para la instalación se puede consultar la documentación oficial aquí.
  • Además, deberá tener algún conocimiento previo de MongoDB y sus comandos de shell.
  • ¡Eso es todo! Ahora estás listo para marchar hacia adelante… 🙂

¿Qué es la agregación? :”:”:

La agregación es una operación que procesa datos para producir un resultado calculado. Este tipo de operación combina valores de varios documentos y puede realizar una variedad de operaciones en los datos agrupados para producir un solo resultado, como calcular la suma, el promedio, la media, la mediana, la moda, etc. Son etapas o conductos en los que los procesos de datos obtienen un resultado combinado.

Los pipelines son básicamente etapas en las que los datos se procesan, o más precisamente, se transforman de acuerdo con los criterios especificados. Cada tubería es independiente y recibe los datos de la etapa anterior. Recuerde siempre que la primera tubería tiene contacto directo con los datos en sí, no con su versión transformada, y puede usar índices.

Recomendado:  El nuevo bombazo estrella de Xiaomi para 2023 apunta a ser un éxito de ventas

Ahora, echemos un vistazo rápido al operador $group.

$grupo MongoDB

Como sugiere el nombre, el operador $group agrupa datos similares de acuerdo con una expresión particular y los combina en un solo resultado o documento. Digamos, por ejemplo, que hay alrededor de 20 empleados de una organización en una base de datos que tienen una pasión similar. Si queremos contar todas las personas que tienen una pasión común, el operador $group brindará la mejor solución para tal tarea. Aquí está la sintaxis:

{ $group: { _id: <expression>, <field1>: { 
              <accumulator1> : <expression1> }, ... } }

Aquí el “_identificaciónEl campo ” contiene el grupo único por valores clave en el documento resultante (salida). Por lo tanto, la “_identificación” campo aquí toma los campos por los cuales desea agrupar los documentos. El uso de _id es obligatorio aquí.

Nota: el operador $group aquí agrupa los datos según el campo proporcionado en el campo “_id”.

Algunos puntos importantes a tener en cuenta

  • El operador $group no se puede usar junto con el operador LogReduce.
  • Debe evitar el uso de nombres de funciones de grupo como nombres de campo.
  • Cuando use el conteo o cualquier función de agrupación, debe insertar el guión bajo antes del nombre del campo, como ordenar por _contar.
  • Varias funciones de agregación pueden estar en la misma fila, pero otras funciones no pueden estar en la misma fila. Por ejemplo, no puedes poner la función matemática en la misma fila de una consulta.

El operador $group en MongoDB

Recuerde, en PyMongo, usamos principalmente el método agregado para procesar registros de múltiples documentos y devolver el resultado al usuario. Se basa en la tubería de procesamiento de datos e incluye varias etapas al final de las cuales obtenemos el resultado agregado.

Recomendado:  Stability AI lanza Stable Doodle: transforma bocetos en imágenes "agradables"

Una de las etapas del método agregado implica el $grupo. Esta operación agrupa los documentos de entrada de la colección según la expresión identificadora ingresada por el usuario. A partir de entonces, les aplica la expresión del acumulador. Y, después de eso, se generan los documentos de salida.

El operador $group contiene dos componentes, a saber, el “_identificación” y el campo(opcional). El _id es la expresión según la cual se agrupan los documentos. Mientras que el campo opcional contiene una expresión acumuladora que se aplicará a los documentos.

Ahora, veamos algunos ejemplos para aclarar este concepto.

Ejemplo 1 :
from pymongo import MongoClient 
 
# Now we need to create the MongoClient 
client=MongoClient() 
    
# Now, to connect to the port and host
client = MongoClient("mongodb://localhost:27017/") 
    
# To access the database 
mydatabase = client['database'] 
    
# Now, to access the collections  
mycollection=mydatabase['myTable'] 

user_profiles = [
    {"_id":101, "user":"Shubham", "title":"Python"},
    {"_id":102, "user":"Kavin",  "title":"JavaScript"},
    {"_id":103, "user":"Shubham",  "title":"C++"},
    {"_id":104, "user":"Ayush",  "title":"MongoDB"},
    {"_id":105, "user":"Shubham",  "title":"R"}
]
  
mycollection.insert_many(user_profiles)

agg_result= mycollection.aggregate(
    [{
    "$group" : 
        {"_id" : "$user", 
         "tutorial" : {"$sum" : 1}
         }}
    ])

for i in agg_result:
    print(i)

La salida que así genera es:

{'_id': 'Shubham', 'tutorial': 3}
{'_id': 'Kavin', 'tutorial': 1}
{'_id': 'Ayush', 'tutorial': 1}

Así, vemos que los documentos se agrupan en base a la expresión $usuario; mientras que el campo “tutorial” contiene el operador de acumulación $sum para calcular el conteo de idiomas que conoce cada usuario.

Ahora, veamos otro ejemplo.

¿Quiere saber cómo funciona la indexación en MongoDB? Haga clic aquí y disfrute de esta guía ~~> ~~>

Ejemplo 2:
from pymongo import MongoClient 
 
# Now we need to create the MongoClient 
client=MongoClient() 
    
# Now, to connect to the port and host
client = MongoClient("mongodb://localhost:27017/") 
    
# To access the database 
mydatabase = client['database'] 
    
# Now, to access the collections  
mycollection=mydatabase['myTable'] 

user_profiles = [
    {"_id":101, "user":"Shubham", "title":"Python"},
    {"_id":102, "user":"Kavin",  "title":"Python"},
    {"_id":103, "user":"Shubham",  "title":"MongoDB"},
    {"_id":104, "user":"Ayush",  "title":"MongoDB"},
    {"_id":105, "user":"Shubham",  "title":"R"}
]
  
mycollection.insert_many(user_profiles)

agg_result= mycollection.aggregate(
    [{
    "$group" : 
        {"_id" : "$title",  
         "total" : {"$sum" : 1}
         }}
    ])

for i in agg_result:
    print(i)

Ahora, la salida es:

{'_id': 'Python', 'total': 2}
{'_id': 'MongoDB', 'total': 2}
{'_id': 'R', 'total': 1}

Así, en este otro ejemplo, los documentos se agrupan por la expresión $título; y obtenemos el resultado como el número total de elementos de cada título.

Recomendado:  Apple responde al seguimiento de una mujer mediante AirTag y afirma que las mejoras llegarán en 2023

Por lo tanto, espero que estos dos ejemplos y la teoría explicada anteriormente ahora lo familiaricen con el concepto y el uso del operador de grupo MongoDB.

¡Aquí se explica cómo vincular MongoDB con Python para su uso! ~~> ~~>

TERMINANDO !! Grupo MongoDB ~~> ~~>

Para concluir, en esta publicación, abordamos los conceptos básicos de MongoDB y el operador $group. También mencionamos la función de agregación y cómo realizar algunas operaciones. No solo eso, sino que también tienes que ver algunos ejemplos para que este concepto sea más claro y preciso. Entonces, espero que esta publicación haya valido la pena. En esa nota, hasta la próxima, ¡nos vemos! Adiós !! ~~> ~~>

:: ~~> ~~> :: ** :::::: ** :: )) ** :: ** (( ~~> ~~>