MongoDB로 시작하는 NoSQL 세계

반응형
반응형

NoSQL 입문 실습 가이드: MongoDB로 시작하는 NoSQL 세계

NoSQL은 현대의 대규모 웹 서비스에서 자주 사용되는 데이터베이스 기술입니다.
이 글에서는 NoSQL의 기본 개념을 간단히 짚고, MongoDB를 사용한 실습을 통해 직접 데이터를 다뤄보는 방법을 소개합니다.
프로그래밍 언어는 Python을 활용합니다.


📌 1. NoSQL이란?

NoSQLNot Only SQL의 약자로, 관계형 DB의 고정된 테이블 구조에서 벗어나 유연한 데이터 모델을 제공합니다.

NoSQL 주요 특징:

  • 스키마 자유도: 미리 정의하지 않아도 다양한 형식 저장 가능
  • 수평 확장: 서버를 늘려 확장하기 쉬움
  • 고성능: 대량의 데이터 쓰기/읽기에 강함

🧪 2. MongoDB란?

MongoDB는 대표적인 문서 기반 NoSQL 데이터베이스입니다.
JSON과 유사한 형식인 **BSON(Document)**으로 데이터를 저장합니다.

예시 데이터:

{
  "name": "홍길동",
  "age": 30,
  "skills": ["Python", "MongoDB"]
}

⚙️ 3. 실습 준비하기

1️⃣ MongoDB 설치 방법

2️⃣ Python에서 MongoDB 사용을 위한 패키지 설치

pip install pymongo

🧑‍💻 4. 실습: MongoDB 기초

1️⃣ 데이터베이스 연결

from pymongo import MongoClient

client = MongoClient("mongodb://localhost:27017/")
db = client["mydb"]
collection = db["users"]

2️⃣ 데이터 삽입

user = {"name": "이순신", "age": 40, "job": "장군"}
collection.insert_one(user)

3️⃣ 데이터 조회

for user in collection.find():
    print(user)

4️⃣ 조건 검색

user = collection.find_one({"name": "이순신"})
print(user)

5️⃣ 데이터 수정

collection.update_one({"name": "이순신"}, {"$set": {"age": 45}})

6️⃣ 데이터 삭제

collection.delete_one({"name": "이순신"})

 

💡 마무리: 왜 MongoDB부터 배워야 할까?

  • 문서 기반이라 JSON을 다뤄본 사람에게 직관적
  • 관계형 DB보다 설치와 사용이 간단함
  • 실시간 데이터, 로그, 비정형 데이터를 다룰 때 유리함

NoSQL은 만능은 아니지만, 유연성과 확장성 면에서 매우 강력한 도구입니다.
특히 MongoDB는 문서형 NoSQL 중 가장 인기 있는 시스템이니, 입문용으로 딱 맞습니다.

 

Designed by JB FACTORY