본문 바로가기
■ 칼퇴를 위한 파이썬 : 사례

파이썬으로 데이터베이스 연결하기: MongoDB 사용법

by 포탈메이커 2023. 7. 13.

파이썬으로 데이터베이스 연결하기: MongoDB 사용법

개요

데이터는 현대 사회에서 가장 중요한 자산으로 여겨지고 있습니다. 따라서 데이터베이스 시스템은 매우 중요한 역할을 합니다. 이번 포스팅에서는 파이썬을 사용하여 데이터베이스를 연결하고, 특히 MongoDB의 사용법에 대해 알아보겠습니다.

MongoDB란?

MongoDB는 NoSQL 데이터베이스로서, 관계형 데이터베이스와는 다른 구조를 가지고 있습니다. MongoDB는 JSON과 비슷한 형식인 BSON(binary JSON)을 사용하여 데이터를 저장합니다. 이런 특징은 데이터의 구조가 자주 변경되는 경우에 유용합니다. 또한, 수평적 확장에 용이하고 빅데이터 처리에도 적합합니다.

파이썬에서 MongoDB 사용하기

먼저, 파이썬에서 MongoDB를 사용하기 위해서는 pymongo라는 라이브러리를 설치해야 합니다. 다음의 명령어를 사용하면 pymongo를 간단하게 설치할 수 있습니다.

pip install pymongo

pymongo를 설치한 후, 다음의 코드를 통해 MongoDB에 접속할 수 있습니다.

```python from pymongo import MongoClient

client = MongoClient('mongodb://localhost:27017/') db = client['mydatabase'] ```

위 코드에서 'mongodb://localhost:27017/'는 MongoDB 서버의 주소와 포트를 나타냅니다. 'mydatabase'는 사용할 데이터베이스의 이름입니다. 필요에 따라 주소, 포트, 데이터베이스 이름 등을 변경해서 사용하면 됩니다.

컬렉션 생성하기

MongoDB는 데이터를 컬렉션(collection) 단위로 관리합니다. 컬렉션은 SQL에서의 테이블에 해당합니다. 다음의 코드를 통해 컬렉션을 생성할 수 있습니다.

python collection = db['mycollection']

위 코드에서 'mycollection'은 생성할 컬렉션의 이름입니다.

문서 추가하기

다음의 코드를 통해 문서(document)를 추가할 수 있습니다.

python data = {'name': 'John', 'age': 30, 'city': 'Seoul'} collection.insert_one(data)

위 코드에서 'name', 'age', 'city'는 문서의 필드(field) 이름이고, 'John', 30, 'Seoul'은 문서의 값(value)입니다. insert_one() 함수를 이용하면 문서를 한 개 추가할 수 있습니다.

문서 조회하기

다음의 코드를 통해 문서를 조회할 수 있습니다.

python result = collection.find() for doc in result: print(doc)

위 코드에서 collection.find() 함수를 사용하면 선택한 컬렉션에 있는 모든 문서를 조회할 수 있습니다.

문서 업데이트하기

다음의 코드를 통해 문서를 업데이트할 수 있습니다.

python query = {'name': 'John'} new_data = {'$set': {'age': 35}} collection.update_one(query, new_data)

위 코드에서 'name': 'John'은 업데이트할 문서를 찾기 위한 쿼리(query)이고, '$set': {'age': 35}는 업데이트할 필드와 그 값을 나타냅니다.

문서 삭제하기

다음의 코드를 통해 문서를 삭제할 수 있습니다.

python query = {'city': 'Seoul'} collection.delete_one(query)

위 코드에서 'city': 'Seoul'은 삭제할 문서를 찾기 위한 쿼리입니다.

마무리

이번 포스팅에서는 파이썬에서 MongoDB를 사용하는 방법에 대해 알아보았습니다. MongoDB는 유연한 데이터 모델과 뛰어난 수평적 확장성을 제공하여 다양한 어플리케이션에서 활용될 수 있습니다. 많은 기업들이 MongoDB를 선택하는 이유 중 하나는 파이썬과의 호환성입니다. 파이썬으로 MongoDB를 다룰 수 있다는 점은 파이썬 개발자에게 큰 장점이 될 수 있습니다.