목록데이터 베이스 (51)
바닥코딩
mongoDB의 Replica Set은 동일한 데이터 세트를 유지 관리하는 인스턴스 그룹입니다. 쉽게 말해 데이터베이스를 복제하는 기능으로 데이터베이스를 복제해 같은 정보를 공유하는 기능을 제공합니다. Replica Set 구성요소 먼저 Replica Set은 세가지 역할로 나누어 집니다 Primary : 클라이언트에서 DB로 읽기/쓰기 작업을 담당하는 주 데이터 베이스 Secondary : 프라이머리로부터 데이터를 동기화 받는 데이터 베이스 Arbiter : 데이터를 동기화하지는 않으며 Replica set의 복구를 돕는 역할 Replica set 내 이 세가지 역할 사이에는 주기적으로10초에 한번씩 ping을 보내 서로의 노드를 확인하는 작업이 이루어 집니다. 이 작업을 MongoDB에서는 Heart..
mongoDB에서 우리는 Read 명령어들을 통해 원하는 document를 조회해보았습니다. https://dkkim2318.tistory.com/126 MongoDB 명령어(Read) 이번 포스트에서는 read 관련 명령어 들에 대해 다루어 보겠습니다. find find 명령어는 앞서 insertOne 이나 insertMany의 결과를 확인하기 위해 사용했던 적이 있어 쉽게 이해할 수 있는 명령어 입니다 h dkkim2318.tistory.com 그렇지만 프로그래밍을 진행하는 과정에서 단순히 데이터베이스의 원자료 값을 조회하는 경우 뿐만 아니라, 데이터베이스로부터 원하는 데이터로 가공하여 출력하는 경우가 빈번하게 발생합니다. 파이프라인이라는 말은, CS 관점에서는 한 데이터 처리 단계의 출력이 다음 단..
이번 포스트 에서는 MongoDB 에서 update와 delete 명령어에 대해 다루어 보겠습니다. updateOne https://dkkim2318.tistory.com/125 MongoDB 명령어(Create & Insert) 이번 포스트 부터는 MongoDB에 명령어를 다루어 보겠습니다. 물론 Compass를 통한 Tool을 통해 더욱 간단하게 명령을 처리 할 수 있지만, 명령을 확실하게 이해하기 위해 CMD로 접속해 직접 명령어를 dkkim2318.tistory.com update 관련 명령어는 일전에 다루었던 insert 명령어와 유사합니다. insertOne을 통해 하나의 document를 insert 하고 insertMany를 통해 여러 document를 한번에 insert 했던 것과 같이 ..
mongoDB는 RDB와 달리 가변적인 값을 가질 수 있습니다. 예를 들어 RDB에서 특정 테이블에 3가지 컬럼 A,B,C가 있을 경우 SELECT * FROM TEST 이와 같은 SQL 쿼리의 모든 결과 레코드는 같은 개수의 컬럼을 가지고 있습니다. 값이 NULL일 경우에도 말이죠. 그렇지만 MongoDB의 경우 각 document 마다 다른 개수의 필드를 가질 수 있으며, 필드의 값을 배열로 가질 수 있습니다. 이번 포스트에서는 이런 가변길이의 특성과 배열 연산자를 알아보겠습니다. 배열 Insert mongoDB는 BSON 구조로 이루어진 데이터베이스 입니다. 따라서 필드의 값이 BSON 구조일 경우 document의 값으로 입력이 가능합니다. 예를 들어 특정 반에 소속된 학생들의 정보를 저장하는 c..
MongoDB에서query는 굉장히 중요한 존재입니다. RDBMS로 치면 SQL의 역할을 query인자로 수행하기 때문에 MongoDB를 제대로 이해하기 위해서는 제대로 활용하기 어렵습니다. 이번 포스트에서는 query를 어떻게 활용할 수 있을지 예제를 통해 살펴보겠습니다. 논리 연산자 MongoDB query에서는 논리 연산자를 통해 원하는 document를 조회할 수 있습니다. 연산자는 연산자명 앞에 $가 붙으며 제공하는 논리 연산자는 다음과 같습니다 만약 컬렉션에서 username이 person1 또는 person 2 인 경우의를 찾고 싶다면 db.user.find({$or:[{username:"person1"}, {username: "person2"}]}) 위와 같은 방법으로 $or 연산자를 통해..
이번 포스트에서는 read 관련 명령어 들에 대해 다루어 보겠습니다. find find 명령어는 앞서 insertOne 이나 insertMany의 결과를 확인하기 위해 사용했던 적이 있어 쉽게 이해할 수 있는 명령어 입니다 https://dkkim2318.tistory.com/125 MongoDB 명령어(Create & Insert) 이번 포스트 부터는 MongoDB에 명령어를 다루어 보겠습니다. 물론 Compass를 통한 Tool을 통해 더욱 간단하게 명령을 처리 할 수 있지만, 명령을 확실하게 이해하기 위해 CMD로 접속해 직접 명령어를 dkkim2318.tistory.com find 명령어는 db.collectionName.find(query, projection) 형태이며 두개의 인자를 가지고 있..
이번 포스트 부터는 MongoDB에 명령어를 다루어 보겠습니다. 물론 Compass를 통한 Tool을 통해 더욱 간단하게 명령을 처리 할 수 있지만, 명령을 확실하게 이해하기 위해 CMD로 접속해 직접 명령어를 입력해 결과를 확인하겠습니다. use use 명령은 데이터베이스를 생성하는 명령어 입니다. use [데이터베이스명] 의 형태로 사용이 되며 만약 Test라는 이름의 데이터 베이스를 생성하고 싶다면 아래와 같이 입력하여 데이터베이스를 생성할 수 있습니다. use Test 그렇지만 해당 데이터베이스가 이미 존재하는 경우가 있을 수 있습니다 이럴 경우 use는 Test라는 데이터베이스를 선택하는 역할을 하게 됩니다. createCollection 데이터베이스를 생성하였다면 다음 단계는 컬렉션을 생성하는..
이번 포스팅 부터는 MongoDB의 명령어를 다루어 보곘습니다. MongoDB에서 쓰이는 문법은 기본적으로 JS로 되어 있습니다 . 그렇기 때문에 MongoDB를 사용할 경우 선수적으로 JS를 공부하는 것을 추천드립니다. 그리고 앞서 Compass를통해 DB를 생성하고 연결 하였는데 물론 Compass를 사용하면 더욱 더 쉽게 명령어를 GUI로 처리할 수 있지만 명령어를 학습하는데 의미를 두기 위해 이번 포스팅에서는 cmd를 통해 MongoDB에 접속해 명령어를 처리해 보겠습니다. https://dkkim2318.tistory.com/123 Compass를 이용한 DB서버 접속 및 생성 MongoDB Compass? RDBMS를 사용해보신 분이라면 DB TOOL에 대한 사용경험이 있을 겁입니다. 예를 들..