인파

You Can Become A

늦게 시작해도 누구든지 노력하면 개발자가 될수 있어요 !

공부한 내용을 정리합니다
DBMS/MongoDB

[MONGO] 📚 몽고디비의 데이터 관계 모델링 💯 정리

몽고디비 관계 데이터 방식 몽고디비의 컬렉션간의 관계(조인) 데이터를 가져올때 대표적으로 2가지 방식 종류가 있다. Document - Embedded Embedded 저장 방법은 2가지 종류의 Document가 있을 때, 1개의 Document 데이터를 Document key의 value에 통짜로 저장하는 방법이다. 예를 들어, 여기 2가지 종류의 Person Document 와 Address Document가 있다고 하자. // Person { _id: "joe", name: "Joe Bookreader" } // Address { pataron_id: "joe", street: "123 Fake Street", city: "Faketon", state: "MA", zip: "12345" } 위의 D..

category_image
인파_
2022.07.17
(0)
DBMS/MongoDB

[MONGO] 📚 사용자 계정 관리 하기 (추가/삭제)

몽고디비 계정 관리 다음은 몽고디비에서 계정 관리할때 사용되는 명령어이다. 명령어 설명 db.auth() 데이터베이스에 사용자 인증 db.createUser() Creates a new user. db.updateUser() Updates user data. db.changeUserPassword() 사용자 패스워드 변경 db.dropAllUsers() 데이터베이스에 관련된 모든 사용자를 삭제한다. db.dropUser() 한 사용자를 삭제한다 db.grantRolesToUser() 롤과 권한을 사용자에 허용한다 db.revokeRolesFromUser() 사용자에 부여한 롤을 삭제한다 db.getUser() 지정한 사용자의 정보를 반환한다 db.getUsers() 데이터베이스에 관련된 모든 사용자의 정..

category_image
인파_
2022.07.15
(0)
DBMS/MongoDB

[MONGO] 📚 몽고디비 자동 실행 🚗 설정하기

몽고디비 자동 실행 설정 몽고디비를 실행할때마다 mongod.exe를 실행해 몽고디비 데몬서버를 띄워야 했는데, mysql처럼 자동으로 서버가 돌아가게 하는 방법이 없을 까 고민하다 성공해서 포스팅 해본다. 현재 본인 PC의 몽고디비 설치 경로는 이렇게 되어있다. 몽고디비 경로 -dbpath 경로 [dbpah 설정하는 법 ] 1. mongod.cfg 설정 파일을 열고 다음과 같이 설정해준다. dbpath와 path 경로는 본인이 설치한 경로로 필히 바꿔주자 log폴더와 파일이 없으면 직접 만들어주면 된다. # mongod.conf # for documentation of all options, see: # http://docs.mongodb.org/manual/reference/configuration-..

category_image
인파_
2022.01.25
(0)
DBMS/MongoDB

[MONGO] 📚 배열 수정 연산자

배열 수정 연산자 $ list: [1, 2, 3] 이라는 필드가 있다고 칩시다. // list: [1, 2, 3] // list: 2 를 기억해서 list.2의 요소값을 5로 바꾼다. db.zero.update({ list: 2 }, { 'list.$': 5 }) // list: [1, 5, 3] 위의 쿼리를 통해 두 번째 요소를 바꿀 수 있습니다. 즉 찾은 값의 위치를 기억하는 연산자입니다. $addToSet 배열필드에 해당 요소가 없으면 추가하고, 있으면 아무것도 하지 않습니다. 몽고DB에서 자체적으로 배열에 해당 요소가 있는지 검사해주기 때문에 편합니다. { $addToSet: { 필드1: 값, 필드2: 값, ... } } $pop 배열 메소드처럼 몽고DB 배열에서 맨 앞 또는 맨 뒤 요소를 꺼내는..

category_image
인파_
2021.11.15
(0)
DBMS/MongoDB

[MONGO] 📚 필드 수정 연산자

필드 수정 연산자 다큐먼트의 필드를 수정하는 연산자들입니다. 제일 많이 쓰이는 연산자이기 때문에 꼭 알아둘 필요가 있습니다. $inc 필드 값을 증가시키거나 감소시키는 연산자입니다. 양수면 증가, 음수면 감소입니다. { $inc: { 필드: 1 } } // 필드의 값을 1 증가 $mul 필드 값에 곱하는 연산자입니다. 1보다 큰 수를 곱하면 커지고, 1보다 작은 수를 곱하면 작아집니다. 쿼리의 순서에 조심하세요. $inc는 필드 안의 속성이었다면, 이번에는 필드가 $mul 안의 속성입니다. { $mul: { 필드: 2 } } // 필드의 값을 두배 증가 $rename 필드 이름을 바꾸는 연산자입니다. 여러 필드를 동시에 교체할 수 있습니다. { $rename: { 필드1: 이름, 필드2: 이름, ... ..

category_image
인파_
2021.11.15
(0)
DBMS/MongoDB

[MONGO] 📚 몽고디비 인덱스(Index) 정리

몽고디비 인덱스 DB에서 인덱스는 정말 중요한 역할을 합니다. 자주 조회되는 필드를 따로 저장해서 조회 밑 정렬 시의 속도를 빠르게 하는 기법입니다. /* book 컬렉션의 someField 필드에 대해 인덱스를 블록킹 방식으로 생성한다. 명령 실행 후 인덱스 생성이 완료될 때까지 해당 컬렉션에 대한 모든 CRUD는 블록킹 된다. */ db.book.createIndex({name:1}) // name필드에 인덱스 설정 // single field index : 단일 key 인덱스, 1은 오름차순, -1은 내림차순 /* book 필드에 대해 인덱스를 논블록킹 방식으로 생성한다. 명령 실행 후 인덱스 생성이 진행 중이더라도 해당 컬렉션에 대한 모든 CRUD가 가능하다. */ db.someCollection..

category_image
인파_
2021.11.15
(0)
DBMS/MongoDB

[MONGO] 📚 Embedded / 배열 / 객체 검색 쿼리

Embedded Documents 검색 embedded Document란 auther Field처럼 Document 안 배열 형태로 있는 Document 를 말한다. $elemMatch $elemMatch는 조건이 배열 안의 요소와 일치하는 필드를 선택합니다. db.book.find({ "auther":{ $elemMatch: {"name":"park"} // auther배열객체 들 중에서 {"name":"park"} 검색. } }) 일반 배열 검색 db.book.find({"language":"eng"}) // Embedded Document가 아니고 일반 배열일 경우 바로 접근하면 된다. $all $all 쿼리 안에 있는 모든 값을 포함하는 배열을 값으로 가진 태그를 선택합니다. 아래의 배열이 예에서..

category_image
인파_
2021.11.15
(0)
DBMS/MongoDB

[MONGO] 📚 limit / skip 쿼리

limit db.book.find().limit(2) // 2개만 출력한다. skip mysql의 offset이라고 보면 된다 db.book.find().skip(2) // 리스트에서 2개를 skip후 Document를 출력 // 원래 총 3개 조회된다면, 2개를 스킾애서 마지막 1개만 출력

category_image
인파_
2021.11.15
(0)
DBMS/MongoDB

[MONGO] 📚 몽고디비 CRUD 쿼리 문법 명령어 💯 정리

데이터베이스 명령어 데이터베이스 생성 show dbs -- 데이터베이스 리스트가 출력 db -- 현재 사용하고 있는 데이터베이스 출력 db.stats() -- 현재 사용 하고 있는 데이터 베이스 정보 출력 데이터베이스 사용 use database -- 데이터베이스 사용 혹은 생성(존재 하지 않을 경우 생성) -- use 를 통해 생성된 데이터베이스는 그 안에 최소 한개의 Document 가 존재해야 show dbs 를 통해 확인할 수 있다. 데이터베이스 삭제 db.dropDatabase() -- 데이터베이스를 삭제 -- 이 명령어는 use DATABASE_NAME 를 통해 지울 데이터베이스가 선택되어 있어야 합니다. 컬렉션 명령어 컬렉션 생성 // db.createCollection( name [, op..

category_image
인파_
2021.11.13
(0)
DBMS/MongoDB

[MONGO] 📚 몽고디비 한방 설치 & 설정법 정리 👊

MongoDB 설치하기 MongoDB는 수년간 대표적인 NoSQL 제품으로 자리 잡았다. 특히, 전통적인 RDBMS 대비 우월한 샤드 및 스케일 아웃 능력으로 대량 트래픽, 대량 데이터가 발생하는 모던 웹 시대에 걸맞는 저장소로 널리 쓰이고 있다. 이번 포스팅에서는 몽고디비를 설치하고 실행 및 애로사항을 해결해보는 시간을 가져보겠다. MongoDB Community Download Download the Community version of MongoDB's non-relational database server from MongoDB's download center. www.mongodb.com community 버전 다운로드하여 설치 진행, 설치 시 complete 클릭 후 Install MongD ..

category_image
인파_
2021.11.12
(0)
DBMS/MongoDB

[MONGO] 📚 몽고디비 특징 & 비교 & 구조 (NoSQL)

MongoDB 란? MongoDB는 문서 지향 데이터 모델(Document DB)을 사용하는 데이터베이스 이다. 이러한 유형의 모델을 사용하면 정형 및 비정형 데이터를 보다 쉽고 빠르게 통합할 수 있다는 장점이 있다. RDBMS는 MySQL이 많이 쓰이듯이, NoSQL 데이터베이스중 대표격이라고 말할 정도로 가장 많이 쓰인다. [NoSQL DB vs 관계형 DB 비교] 항목 NoSQL RDBMS 적합업무 - 오프라인에서 정형 및 비정형 데이터 분석 업무 - 초당 동시 처리가 중요한 업무 - 로그 및 이력 등의 단순 기록형 업무 - 데이터 무결성 및 일관성이 중요한 트랜잭션 업무 - 온라인에서 다양한 집계 및 통계를 분석하는 업무 - 복잡한 계산 및 실시간 데이터 정합성이 필요한 업무 데이터 모델 - 서비..

category_image
인파_
2021.11.12
(0)