본문 바로가기
public void static main()/Sql

[MongoDB] 안녕? MongoDB

by 햄리뮤 2021. 11. 11.
반응형

아... mongoDB도 해야해... 졸려.. 그치만.. 힘내하는걸..? 숙제 밀렸어...

MongoDB를 배우기 앞서...

SQL과 NoSQL의 차이점좀 알고 가자!

SQL (Structured Query Language)은 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다. 많은 수의 데이터베이스 관련 프로그램들이 SQL을 표준으로 채택하고 있다.

  • 정해진 데이터 스키마에 따라 테이블에 저장된다!
  • 테이터는 관계를 통해 여러 테이블에 분산된다!

NoSQL (Non SQL or Non Relational) 데이터베이스는 전통적인 관계형 데이터베이스 보다 덜 제한적인 일관성 모델을 이용하는 데이터의 저장 및 검색을 위한 매커니즘을 제공한다. NoSQL 데이터베이스는 빅데이터와 실시간 웹 애플리케이션의 상업적 이용에 널리 쓰인다. SQL 계열 쿼리 언어를 사용할 수 있다는 사실을 강조한다는 면에서 "Not only SQL"로 불리기도 한다..! (어후.. 길기도하고 뭐라는거야...)

  • 스키마도 없고, 관계도 없다!

[MySQL vs MongoDB Query비교]

https://learnsql.com/blog/sql-vs-mongo-query/

MongoDB? 몽고반점? 뭐라구?

NoSQL 중 가장 많이 쓰이는 비관계형 데이터베이스 관리 시스템!

MongoDB RDBMS
데이터베이스 (Database) 데이터베이스 (Database)
컬렉션(Collection) 테이블(Table)
도큐먼트(Document) 레코드(Record or Row)
필드(Field) 컬럼(Column)
인덱스(Index) 인덱스(Index)
쿼리의 결과로 "커서(Cursor)" 반환 쿼리의 결과로 "레코드(Record)" 반환

특징

  • Join이 없으므로 Join이 필요 없도록 데이터 구조화가 필요
  • 다양한 종류의 쿼리문을 지원함(필터링, 수집, 정렬, 정규표현식 등)
  • 관리의 편의성
  • 스키마 없는(Schema less) 데이터베이스를 이용한 신속 개발, 필드를 추가하거나 제거하는 것이 매우 쉬워짐
  • 쉬운 수평 확장성
  • 인덱싱 제공

구조

RDBMS와 비교한 구조

https://blockchainsimplified.com/blog/mongodb-introduction/

MongoDB Architecture

https://laptrinhx.com/the-battle-of-the-nosql-databases-comparing-mongodb-and-couchdb-176648253/

 

쿼리 비교해보기

[조회]

MongoDB

db.members.find()

SQL

SELECT * FROM members;

 

[특정 컬럼으로 조회]

MongoDB

db.members.find(
{},
{mem_no:1, type:1,_id:0}
)

SQL

SELECT mem_no, type FROM members;

 

[Where 조회]

MongoDB

db.members.find(
{type:"ACE"}
)

SQL

SELECT * FROM members WHERE type = "ACE";

 

[ORDER BY ASC 조회]

MongoDB

db.members.find({type: "ACE"}).sort({mem_no:1})

SQL

SELECT * FROM members WHERE type = "ACE" ORDER BY mem_no ASC;

 

[ORDER BY DES조회]

MongoDB

db.members.find({type: "ACE"}).sort({mem_no:-1})

SQL

SELECT * FROM members WHERE type = "ACE" ORDER BY mem_no DES;

 

 

 

 

 

아... 일단 여기까지 정리! 다음에 자세히 알아보자...!

오늘도 공부에 도움을 주신 저의 인터넷 멘토분들 너무 감사합니다!

 

 

https://horae.tistory.com/entry/SQL%EB%AC%B8%EB%B2%95%EA%B3%BC-MongoDB-%EB%AC%B8%EB%B2%95-%EB%B9%84%EA%B5%90-%EB%B6%84%EC%84%9D

 

SQL문법과 MongoDB 문법 비교 분석

1. Create & Alter 문 SQL 문장 MongoDB 스키마 문장 CREATE TABLE members(   mem_no varchar(30),   age number,   type char(1),   PRIMARY KEY (mem_no) ); db.members.insert({   mem_no : "T2013001",..

horae.tistory.com

https://edu.goorm.io/learn/lecture/557/%ED%95%9C-%EB%88%88%EC%97%90-%EB%81%9D%EB%82%B4%EB%8A%94-node-js/lesson/174384/mongodb%EB%9E%80

 

구름EDU - 모두를 위한 맞춤형 IT교육

구름EDU는 모두를 위한 맞춤형 IT교육 플랫폼입니다. 개인/학교/기업 및 기관 별 최적화된 IT교육 솔루션을 경험해보세요. 기초부터 실무 프로그래밍 교육, 전국 초중고/대학교 온라인 강의, 기업/

edu.goorm.io

https://velog.io/@ckstn0777/MongoDB%EB%9E%80

 

MongoDB란?

이 시리즈는 유데미의 The Complete Node.js Developer Course (3rd Edition) 강의 중 MongoDB 관련 내용을 듣고 정리한 글입니다.SQL(Structured Query Language)은 관계형 데이터베이스 관리 시스템(RDBM

velog.io

https://coding-start.tistory.com/273

 

DB - MongoDB란?(NoSQL,Document)

요즘 시대에는 구글이나 페이스북과 같은 글로벌 서비스를 제공하는 회사가 늘어나면서 방대한 양의 데이터를 충분히 빠른 속도로 처리할 수 있는 데이터베이스에 대한 필요성이 대두되기 시

coding-start.tistory.com

 

 

** 그냥 하루하루 개인 공부한 것을 끄적 거리는 공간입니다.

이곳 저곳에서 구글링한 것과 강의 들은

내용이 정리가 되었습니다.

그림들은 그림밑에 출처표시를 해놓았습니다.

문제가 될시 말씀해주시면 해당 부분은 삭제 하도록하겠습니다. **

반응형

댓글