DBMS/MongoDB
MongoDB GROUP BY와 유사한 Aggregation
Aggregation MongoDB의 aggregation은 데이터를 처리하고 변환하기 위한 강력한 도구입니다. Aggregation 파이프라인은 여러 단계의 데이터 처리 단계를 포함하며, 각 단계는 데이터를 조작하고 변환하여 원하는 결과를 생성합니다. 즉 위에서부터 각 단계마다 입력한 Operators에 따라 데이터가 처리되고 처리 된 데이터가 다음 단계로 넘어간다는 것입니다. Aggregation은 SQL의 GROUP BY와 유사한 작업을 수행할 수 있으며, 데이터의 그룹화, 정렬, 필터링, 변환, 계산 등 다양한 작업을 지원합니다. https://www.mongodb.com/docs/manual/reference/operator/aggregation-pipeline/ Aggregation Stage..
MongoDB 배열 다루는 문법
배열 내 숫자 조건으로 필터링: $elemMatch 배열 내의 숫자를 조건으로 필터링하기 위해선 MongoDB의 배열 쿼리 연산자인 $elemMatch를 사용해야 합니다. # 초기 데이터 { "name": "Kim", "numbers": [5, 10, 15, 20, 25] } $elemMatch 사용하지 않은 경우 db.users.find({ numbers: { $gte: 17, $lte: 19 } }) 이 쿼리는 배열 안에 있는 요소들 중 17이상이고 19이하인 요소가 있는 document를 찾고싶습니다. 위 조건대로 본다면 요소엔 17이상 19이하인 요소는 없기 때문에 위 document는 포함되지 않아야한다 생각합니다. 하지만 결과는 위 document가 결과에 포함됩니다. 그 이유는 위 쿼리는 배..
MongoDB MQL(MongoDB Query Language)
SQL vs MQL SQL에 익숙한 사람은 SQL과 비교하여 학습하면 좀 더 MQP을 쉽게 이해할 것이라 생각합니다. https://www.mongodb.com/docs/manual/reference/sql-comparison/ SQL to MongoDB Mapping Chart — MongoDB Manual Docs Home → MongoDB Manual In addition to the charts that follow, you might want to consider the Frequently Asked Questions section for a selection of common questions about MongoDB.The following table presents the various S..
MongoDB MongoDB 배포 형태: Replica Set & Sharded Cluster
MongoDB 배포 형태: Replica Set와 Sharded Cluster Replica Set Replica Set은 고가용성(HA)과 데이터 복제를 위해 사용되는 구성입니다. 여러 각 노드는 독립적인 데이터베이스 인스턴스로서 역할을 수행합니다. 때문에 예를 들어 Primary 노드에 장애가 발생하더라도 Secondary 노드들은 여전히 서비스를 제공할 수 있습니다. 이는 시스템의 가용성을 높이고, 사용자가 중단 없이 서비스를 이용할 수 있도록 해줍니다. Primary 노드 Replica Set 중 단 하나의 노드입니다. Primary 노드는 데이터 Read / Write 요청을 모두 처리할 수 있습니다. 다른 Secondary 노드들에게 데이터를 복제합니다. Secondary 노드 Replica ..
MongoDB MongoDB: 문서 지향 NoSQL
MongoDB MongoDB는 NoSQL로서, 오픈소스 문서 지향(Document-Oriented) 데이터베이스 시스템입니다. 우리가 기존에 접할 수 있는 RDBMS(MySQL, Oracle)와는 다른 데이터 형식을 갖고 있는 NoSQL에 대해 먼저 설명하도록 하겠습니다. MongoDB의 특징 NoSQL NoSQL은 'Not Only SQL' 또는 'Non-Relational'의 약자로, 관계형 데이터베이스(RDBMS)와는 다른 DB 시스템입니다. NoSQL은 다양한 유형으로 나뉘며, 각 유형마다 특정한 데이터 모델과 사용 사례에 최적화되어 있습니다. 아래와 같은 유형은 NoSQL의 대표적인 유형입니다. Document Store: MongDB Key-Value Store: Redis, DynamoDB ..