NoSQL(Not Only SQL)
딕셔너리 형태로 데이터를 저장하는 데이터베이스로써 자유로운 데이터 적재에 유리하다. 그리고 관계형 데이터베이스보다 더 빠르고 확장성이 좋습니다. 이러한 특징은 대량의 데이터 처리나 실시간 데이터 처리 시 유용.
ex) mongoDB
DB의 실체
데이터를 쌓고 잘 가져올 수 있도록 데이터를 구조화하고 저장하는 프로그램
프로그램이므로 내 컴퓨터에도 데이터베이스를 설치할 수 있지만, 요즘엔 인터넷에 있는 컴퓨터에 올려 놓는다.
인터넷에 있는 컴퓨터에 올려놓는다 = 클라우드 환경에 파일을 저장한다
mongoDB연결하기
※ 현재 수강 중인 강의는 클라우드 환경에서 운영되는 mongoDB Atlas 사용
https://account.mongodb.com/account/register
※ 일반적으로, 파이썬은 로컬 컴퓨터에서 실행되고 mongoDB는 클라우드 서버에서 실행
※ 즉, 내 컴퓨터에서 파이썬을 통해 인터넷 상의 mongoDB에 연결하고 이를 통해 데이터를 저장하거나 가져오는 것.
파이썬으로 mongoDB라는 프로그램을 조작에 필요한 라이브러리 2개
pymongo - Python에서 MongoDB에 연결할 때 쓰는 라이브러리
dnspython - DNS 프로토콜에 대한 라이브러리.
DNS 레코드를 조작하는 데 사용되며, Python에서 DNS 서버를 쿼리하고 응답을 처리하는 데 사용
pymongo기본 코드
#pymongo 기본코드
from pymongo import MongoClient
client = MongoClient('여기에 몽고DB 주소 입력')
db = client.dbsparta
몽고db 주소 가져오기
DB Atlas 접속-> Projects -> project -> Connet -> Connect your application ->
※ 복사한 주소 입력 시, 설정한 비밀번호를 입력. <password> 제거
pymongo로 DB조작코드 - 데이터는 딕셔너리형태로 넣어주면 됨
from pymongo import MongoClient
client = MongoClient('몽고db 주소')
db = client.dbsparta
#DB에 데이터 저장
#pymongo(insert_one)
doc = {'name':'영수','age': 24}
db.users.insert_one(doc)
db.users.insert_one({'name':'영희','age':30})
#DB에서 데이터 찾기 - 한개 찾기
#pymongo(find_one)
user = db.users.find_one({'name':'영수'})
#DB에서 데이터 찾기 - 여러개 찾기
#pymongo(find) #(_id 값은 제외하고 출력)
all_users = list(db.users.find({},{'_id':False}))
#수정하기
pymongo(update_one)
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
#삭제하기-
#pymongo(delete_one)
db.users.delete_one({'name':'bobby'})
#가져온 데이터를 터미널에 찍어보기
print(all_users[0]) # 0번째 결과값을 보기
print(all_users[0]['name']) # 0번째 결과값의 'name'을 보기
for a in all_users: # 반복문을 돌며 모든 결과값을 보기
print(a)
users는 dbsparta 데이터베이스 내 Collections 이다.
데이터를 그냥 넣으면 혼돈스러우므로, 소그룹으로 분류한 것이라고 생각하자.
{} -> 조건이 없다는 걸 의미
{'_id':False} -> _id값을 제외하고 보겠다는 의미
{'_id':true} -> _id값을 포함하고 보겠다는 의미
DB Atlas에서 데이터 확인하는 방법
'[스파르타 코딩클럽] > 비개발자를 위한, 웹개발 종합반' 카테고리의 다른 글
파이썬 내장 함수 strip (0) | 2023.02.26 |
---|---|
파이썬으로 웹스크래핑 결과 몽고DB에 저장하기 (0) | 2023.02.26 |
웹스크래핑(크롤링)기초 및 연습2 (0) | 2023.02.23 |
파이썬 웹스크래핑(크롤링)기초/beautifulsoup4 (0) | 2023.02.23 |
파이썬/터미널 설정/기초 문법/venv 설치 방법/Requests라이브러리 (2) | 2023.02.23 |