gaina***
2021-04-18

몽고DB 기본 개념과 동작 원리부터 활용법까지 설명하는 입문서. 다양한 예제를 통해 애플리케이션을 개발하고 관리하는 방법을 익힌다.
몽고 db는 NoSQL 기반으로 의 DBMS다.
NoSQL
“Non Relational Operation Database SQL” 의 줄임말로써 “관계형 데이터베이스가 아닌 SQL” 입니다.
일반적인 관계형 데이터베이스에서는 데이터의 중복을 제거하고 무결성을 보장하기 위해서 정규화를 하게 되는데 이러한 정규화가 과도한 JOIN으로 인해 성능 저하가 있을 수 있다고한다.
이책은 이러한 문제를 잘극복할수있도록 처음 설치부터 컬렉션을 다루는 방법까지 자세하게 해당 책에서 내용을 담고있다.
몽고 db의 쉘은 자바스크립트 해석기이고, 자바스크립트 프로그램이 실행이 가능하다.> x = 200;200> x / 5;40> Math.sin(Math.PI /2)1> new Date("2019/1/1");ISODate("2018-12-31T15:00:00Z")> "Hello, World!".replace("World","MongoDB");Hello, MongoDB!replace 를 통해 글자를 수정가능하다. //현재 db조회> dbtest//데이터베이스 선택> use videoswitched to db video> dbvideo//db변수에서 컬랙션에 접근한다. > db.moviesvideo.movies//movie 변수를 생성한다. > movie={"title":"Star Wars:Episode IV -A New Hope","director":George Lucas","year":1977}2021-04-03T20:20:48.637+0900 E QUERY [js] SyntaxError: missing } after property list @(shell):1:68> movie={"title":"Star Wars:Episode IV -A New Hope","director":George Lucas","year":1977};2021-04-03T20:20:55.541+0900 E QUERY [js] SyntaxError: missing } after property list @(shell):1:68> movie={"title":"Star Wars:Episode IV -A New Hope","director":"George Lucas","year":1977};{ "title" : "Star Wars:Episode IV -A New Hope", "director" : "George Lucas", "year" : 1977}
collection을 다루고 있는 만큼 key,value 형식으로 값을 입력이 가능했다.
//무비컬렉션에 값을 저장한다.
> db.movies.insertOne(movie)
{
"acknowledged" : true,
"insertedId" : ObjectId("6068501d5890e9d90fadf7ea")
}
find를 통해 결과를 확인한다.
> db.movies.find().pretty()
{
"_id" : ObjectId("6068501d5890e9d90fadf7ea"),
"title" : "Star Wars:Episode IV -A New Hope",
"director" : "George Lucas",
"year" : 1977
}
find와 findone은 컬렉션을 쿼리하는데 사용한다.
> db.movies.findOne()
{
"_id" : ObjectId("6068501d5890e9d90fadf7ea"),
"title" : "Star Wars:Episode IV -A New Hope",
"director" : "George Lucas",
"year" : 1977
}
해당 책을 통해 기본 부터, 활용하는데 익히는데 큰무리가 없었다.
몽고db를 익히고자 하는 데에 이책을 추천하고싶다.