데이터베이스/MongoDB

데이터베이스/MongoDB

인덱스(Index)

Index란🔖 자주 조회되는 필드를 따로 저장해서 조회 및 정렬 시의 속도를 빠르게 하는 기법MongoDB는 Collection Scan(컬렉션 데이터를 하나하나 조회하는 방식)으로 데이터를 찾는다.이를 보안하여 Document Field들에 Index를 걸면, 데이터에 설정된 키 값을 가지고 document들을 가르키는 포인터값으로 이뤄진 B-Tree 구조를 만든다.B-Tree : Balanced Binary search Tree인덱스는 일반 Field 뿐만 아닌, 객체 값을 가지는 Field 내부 속성에도 지정 가능ex) { name: {first: ‘Zero’, last: ‘Cho’}} → createIndex({ ‘name.last’:1});Index의 종류기본 인덱스 : _id기본적으로 Mon..

데이터베이스/MongoDB

JSON & BSON

개요Mongo는 명시적으론 JSON 형태로 데이터를 보여주고, 저장한다.검색 기능을 사용할 때도 JSON 문법에 맞게 입력해준다.하지만 실제 MongoDB에서는 데이터를 BSON 형태로 저장하여 사용하고 있다.JSON 형식💡 JSON (JavaScript Object Notation) Javascript 언어의 일부로 정의되어있는 형식 2013년에 공식화key와 value의 값예제{ "_id": "10009999", "listing_url": "", "name": "Horto flat with small garden", "summary": "One bedroom + sofa-bed ...", "cancellation_policy": "flexible", "last_scraped": { "$date":..

데이터베이스/MongoDB

보안 설정 & 커넥션 생성

MongoDB 보안 설정어드민 권한 설정 방법mongod가 실행되고 있는 상태에서 mongosh에 접속하여 아래 구문 입력$ use admin$ db.createUser({ user: '이름'. pwd: '비밀번호', roles: ['root']});mongod.exe 콘솔을 종료한 후 cmd에서mongod --auth명령어로 접속. (--auth는 로그인이 필요하다는 의미.)mongo를 입력한 콘솔도 종료한 후mongo admin -u 이름 -p 비밀번호로 접속.MongoDB Commection 생성컴패스 접속 (mongod 실행된 상태 진행)Fill in connection fields individually 클릭 후 보안 상태에 connect 진행

데이터베이스/MongoDB

조회(find), query연산자

Mock-Up Sample Data[ { "title": "article01", "content": "content01", "writer": "Velopert", "likes": 0, "comments": [] }, { "title": "article02", "content": "content02", "writer": "Alpha", "likes": 23, "comments": [ { "name": "Bravo", "message": "Hey Man!" } ] }, { "title": "article03", "content": "content03", "writer": "Bravo..

데이터베이스/MongoDB

생성, 제거, 업데이트

Database생성 : use🔖 use DATABASE_NAMEDatabase 생성 명령어생성 후, 생성된 데이터베이스 사용데이터베이스가 이미 존재하는 경우엔 현존하는 데이터베이스 사용> use mongodb_tutorialswitched to db mongodb_tutorial제거 : dropDatabase()🔖 db.dropDatabase()Database 제거명령어 사용 전, use 명령어로 삭제하고자 하는 데이터베이스 선택> use mongodb_tutorialswitched to db mongodb_tutorial> db.dropDatabase();{ "dropped" : "mongodb_tutorial", "ok" : 1 }db현재 사용중인 데이터베이스 확인> dbmongodb_tutori..

데이터베이스/MongoDB

NoSQL

NoSQL?Not Only SQL : 기존의 RDBMS의 한계를 극복하기 위해 만들어진 새로운 형태의 데이터저장소관계형 DB가 아니므로, RDMS처럼 고정된 스키마 및 JOIN이 존재하지 않는다.Document?Document Oriented 데이터베이스== RDMS의 record데이터 구조 : 한개이상의 field-value pair (JSON){ "_id": ObjectId("5099803df3f4948bd2f98391"), "username": "velopert", "name": { first: "M.J.", last: "Kim" }}여기서 _id, username, name 은 field고 그 오른쪽에 있는 값들은 value 입니다._id 는 12bytes의 hexadecimal ..

데이터베이스/MongoDB

설치

MongoDB 설치윈도우https://www.mongodb.com/try/download/community에서 Select package → msi파일 다운로드대부분 next 를 누르면 되고, Choose Setup Type 이 나오면 Complete 를 선택여기서 기본 선택 되어있는 Install MongoD as a Service 를 선택하게 되면 클라우드가 내 데이터베이스 서버가 되는데, 선택 해제 후 Next 해준다.아래 Install MongoDB Compass 를 체크하고 설치를 진행하면 MySQL 워크벤치와 비슷한 역할을 하는 Compass까지 함께 설치된다.시스템 환경변수 처리 C:\Program Files\MongoDB\Server\(현재버전)\bin를 환경변수→Path에 삽입C:\에 d..

MellowHoney
'데이터베이스/MongoDB' 카테고리의 글 목록