DEV Community

Le Vuong
Le Vuong

Posted on

A Mongodb quick start

MongoDB is a leading NoSQL database that offers a flexible document-based data model. It provides scalability, high performance, and ease of use for building modern, data-intensive applications in various industries.

Let's take a few minutes to learn how to work with the blazing fast mongodb.

Notes

  • You don't need to install everything on dev machine anymore, just launch a docker container and you have the software/services ready for working. BTW, almost everything is "containerized" now, you should leverage it.
  • Learn the essential terminologies and try to answer basic questions (like what is docker, which problem does it solve, what is mongodb, collection, document ...)
  • When you've got the basics, Google will be your friend (with proper English).

Launch mongodb container

  • Follow this link to launch mongodb container.
# Basically this command
docker run --name mongo -d mongodb/mongodb-community-server:latest
Enter fullscreen mode Exit fullscreen mode

Import sample Netflix titles data to netflixdb

  • Download Netflix sample data (csv, click on 'raw') from this link

  • Copy the csv file to /tmp folder in mongodb container (replace 8899d85c84b0 with mongodb container ID on your machine)

# List running containers, copy mongodb container ID (something like 8899d85c84b0) for later use
> docker ps

CONTAINER ID   IMAGE                                     COMMAND                  CREATED        STATUS        PORTS       NAMES
8899d85c84b0   mongodb/mongodb-community-server:latest   "python3 /usr/local/…"   17 hours ago   Up 17 hours   27017/tcp   mongo

# Copy netflix.csv to container
> docker container cp netflix.csv 8899d85c84b0:/tmp
Enter fullscreen mode Exit fullscreen mode
  • Connect to the Mongodb container Bash shell (mongosh):
# Connect to mongodb shell in the container
> docker exec -it mongo bash

# Check if the netflix.csv file is in /tmp folder
> ls /tmp
Enter fullscreen mode Exit fullscreen mode
  • Import Netflix sample data to netflixdb with command:
> mongoimport -d netflixdb --collection=title --type=csv --file=/tmp/netflix.csv --headerline
Enter fullscreen mode Exit fullscreen mode
  • Check imported documents
# Open mongo shell
> mongosh

# Take a look at first 5 documents
db.title.find().limit(5)

# Press Ctrl-D to exit from mongo shell
# Press Ctrl-D again to exit from Bash shell

Enter fullscreen mode Exit fullscreen mode

More tutorial on basic Mongodb commands

  • Continue learning other Mongodb basic commands here

Finally, keep expanding your MongoDB skills by discovering MongoDB documents and try answering the questions below:

  1. Why is MongoDB high performance?
  2. How fast are MongoDB queries?
  3. How can I make MongoDB faster?
  4. How much RAM does MongoDB need?
  5. Is MongoDB good for large data?

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read full post →

Top comments (0)

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more