Importar archivos CSV en MongoDB

Bilal Shahid 20 junio 2023
  1. Archivo CSV
  2. Utilice el comando mongoimport para importar archivos CSV en MongoDB
  3. Conclusión
Importar archivos CSV en MongoDB

El artículo está especialmente diseñado para ayudar a las personas con el comando mongoimport que permite a los usuarios importar archivos CSV a la base de datos en MongoDB.

El artículo describe qué son los archivos CSV. Se proporciona un ejemplo de un archivo CSV al principio para ayudar con el artículo más adelante.

El ejemplo de un archivo CSV se usa para ayudar a comprender el comando mongoimport. Este comando se usa para importar archivos a la base de datos en MongoDB.

Siga el artículo para comprender el comando mongoimport y cómo importar correctamente archivos CSV a la base de datos MongoDB. Todo se describe en detalle para ayudar al usuario.

Archivo CSV

Esta sección está dedicada a comprender a fondo el concepto de archivos CSV. Un archivo CSV permite al usuario importar datos desde un archivo de texto a la base de datos.

CSV es una abreviatura de valores separados por comas. Los archivos CSV son archivos de texto que contienen datos separados por comas.

Esto permite al usuario almacenar datos en un formato de tabla que MongoDB puede usar más adelante para almacenar los valores en las columnas respectivas de la base de datos.

Diferencia entre archivos CSV y XLS

Los archivos de Excel realizan la misma función que los archivos CSV. Sin embargo, los archivos CSV son archivos de texto que almacenan datos separados por comas.

Por otro lado, los archivos XLS representan una hoja de Excel con un formato de archivo binario para contener información sobre todas las hojas de trabajo. Esto incluye el almacenamiento de información sobre el contenido y el formato.

Ejemplo de un archivo CSV

Para ayudar a comprender mejor el comando mongoimport, utilizaremos un ejemplo de un archivo CSV. Esta sección muestra el contenido del archivo CSV.

La última sección explora cómo importar el contenido de este archivo CSV a la base de datos.

Supongamos que el siguiente archivo CSV se llama EmployeeData.csv en su sistema y tiene los siguientes contenidos:

Name,Address,City,State,ZIP
Jane Doe,123 Main St,Whereverville,CA,90210
James Robert,976 Austin Secret Lane,Roosevelt,Utah,84066
William Sophia,1704 Cooks Mine Road,Albuquerque,New Mexico,87109

El comando mongoimport importará este archivo CSV a la base de datos.

Utilice el comando mongoimport para importar archivos CSV en MongoDB

Esta sección destaca el uso del comando mongoimport. Tomando el archivo CSV de ejemplo EmployeeData.csv mencionado en la sección anterior para ejecutar el comando mongoimport.

Aquí hay una descripción del uso del comando mongoimport.

$ cat > EmployeeData.csv
Name,Address,City,State,ZIP
Jane Doe,123 Main St,Whereverville,CA,90210
James Robert,976 Austin Secret Lane,Roosevelt,Utah,84066
William Sophia,1704 Cooks Mine Road,Albuquerque,New Mexico,87109
 ctrl-d
$ mongoimport -d mydb -c things --type csv --file EmployeeData.csv --headerline
connected to: 127.0.0.1
imported 4 objects
$ mongo
MongoDB shell version: 1.7.3
connecting to: test
> use mydb
switched to db mydb
> db.things.find()
{ "_id" : ObjectId("4d32a36ed63d057130c08fca"), "Name" : "Jane Doe", "Address" : "123 Main St", "City" : "Whereverville", "State" : "CA", "ZIP" : 90210 }
{ "_id" : ObjectId("4d32a36ed63d057130c08fca"), "Name" : "James Robert", "Address" : " 976 Austin Secret Lane", "City" : "Roosevelt", "State" : "Utah", "ZIP" : 84066}
{ "_id" : ObjectId("4d32a36ed63d057130c08fcb"), "Name" : "William Sophia", "Address" : "1704 Cooks Mine Road", "City" : "Albuquerque", "State" : "New Mexico", "ZIP" : 87109}

El primer comando cat mencionado en el ejemplo anterior se usa para mostrar el contenido de un archivo con el nombre proporcionado en el comando.

Este es un comando opcional para verificar el contenido del archivo mencionado. Ayuda a garantizar que el archivo existe con el contenido requerido.

El siguiente comando es el comando principal mongoimport que importa datos del archivo CSV a la base de datos. El formato del comando es el siguiente:

mongoimport <options> <connection-string> <file>

El formato extendido del comando mongoimport se puede ver a continuación.

mongoimport --db DB_Name --collection Collection_Name --type csv --file File-Name-to-Import --headerline

La descripción de cada uno de los argumentos con el comando mongoimport se puede escribir como se menciona en el formato extendido anterior o en el ejemplo proporcionado anteriormente.

  1. El argumento db toma el nombre de la base de datos que contiene la colección.
  2. El argumento colección toma el nombre de la colección.
  3. El argumento tipo especifica el tipo de archivo que se está importando.
  4. El argumento archivo toma el nombre del archivo que se debe importar.
  5. El argumento headerline especifica el comando mongoimport que la primera línea del archivo contiene los nombres de los campos.

Después de usar el comando mongoimport con los argumentos específicos, el mensaje muestra cuántos objetos se importan a la base de datos.

Después de eso, se usa un comando mongo para conectarse a MongoDB, y luego se escribe el comando use junto con el nombre de la base de datos para conectarse a ella.

La función db.things.find() muestra los objetos importados del archivo a la base de datos. Este comando muestra todos los objetos importados individualmente.

Usar autenticación al importar un archivo CSV

Es posible autenticar el archivo CSV mientras lo importa. Se deben agregar algunos argumentos para extender el comando mongoimport para permitir la autenticación.

Este es el formato que permite la autenticación de un archivo CSV al importarlo.

d db_name -c collection_name --type csv --file filename.csv --headerline --host hostname:portnumber --authenticationDatabase admin --username 'iamauser' --password 'pwd123'

Conclusión

MongoDB es un programa de base de datos multiplataforma que está orientado a documentos. Utiliza documentos similares a JSON que vienen con un esquema opcional.

Es un programa de base de datos NoSQL que ayuda a que el almacenamiento de back-end para los programas sea más fácil que antes.

MongoDB permite a los usuarios importar datos de diferentes archivos, como el archivo XLS o CSV. El artículo describe detalladamente cómo importar datos de un archivo CSV a MongoDB usando el comando mongoimport.

Bilal Shahid avatar Bilal Shahid avatar

Hello, I am Bilal, a research enthusiast who tends to break and make code from scratch. I dwell deep into the latest issues faced by the developer community and provide answers and different solutions. Apart from that, I am just another normal developer with a laptop, a mug of coffee, some biscuits and a thick spectacle!

GitHub

Artículo relacionado - MongoDB CSV