몽고DB란? 소개, 데이터 모델링, 용어 및 계층
게시 됨: 2020-09-16MongoDB는 방대한 데이터 스토리지 볼륨을 위한 오픈 소스, 문서 지향, 최고의 NoSQL 데이터베이스입니다. 그것은 원시적이지만 상대적으로 매우 진보되고 신뢰할 수 있는 언어 중 하나인 C++로 완전히 코딩되어 있습니다. 테이블과 행의 기본 개념에 정의된 전통적인 관계형 데이터베이스를 사용하는 대신 MongoDB는 키-값 쌍을 포함하고 플랫폼의 기본을 구성하는 문서 및 컬렉션의 사용에 의존합니다.
서로 상호 작용할 수 있는 기능으로 여러 플랫폼에서 작동합니다. MongoDB의 주목할만한 기능 중 일부는 고가용성 시간, 최고의 성능 및 손쉬운 확장성을 포함합니다.
이제 MongoDB가 무엇인지 더 잘 이해하려면 MongoDB가 데이터베이스를 저장하는 구조와 함께 모든 용어를 알아야 합니다.
데이터베이스 : 데이터를 수집하는 물리적인 컨테이너 역할을 합니다. 컴퓨터 시스템의 미리 정의된 경로에 저장됩니다. 여기에는 기계가 읽을 수 있도록 특정 방식으로 배열된 모든 귀중한 데이터가 포함됩니다.
Collection : MongoDB에서 문서의 집합체 역할을 하며 RDBMS 테이블에 해당한다. 컬렉션에는 서로 다른 필드를 가질 수 있지만 유사하거나 관련된 목적을 가진 문서가 포함되어 있습니다.
문서: 일련의 키-값 쌍이 문서를 구성합니다. 그들은 동적 스키마에서 작동합니다. 즉, 모든 문서에서 동일한 집합이나 구조를 사용할 필요가 없고 공통 필드에서 다양한 유형의 데이터를 처리할 필요가 없습니다.

_id: 12바이트 16진수를 사용하여 모든 문서의 고유한 부분을 결정합니다. 이것은 4개의 세그먼트로 구성됩니다-
- 먼저 타임스탬프용으로 4바이트입니다.
- 다음으로 머신 ID를 위한 3바이트입니다.
- 다음으로 MongoDB 서버의 프로세스 ID에 대한 2바이트입니다.
- 나머지 3바이트는 증분 값입니다.
JSON : 데이터를 주고받는 가장 중요한 기능 중 하나로 JavaScript Object Notation이라고 합니다. 인기의 비결은 일반 텍스트 형식을 사용하여 사람이 읽을 수 있는 특성 때문입니다.
읽기: MongoDB 미래 범위
MongoDB의 데이터 모델링
MongoDB는 유연한 스키마를 따릅니다. 따라서 SQL Database의 경우와 같이 명확한 데이터 저장 구조를 정의할 필요가 없습니다. 특정 사항이 중요하며 MongoDB에서 데이터를 모델링할 때 이를 고려해야 합니다.
- 개발 중인 애플리케이션이 필요합니까? 애플리케이션에 대한 비즈니스 요구 사항을 살펴보고 그에 따라 계획하십시오.
- 데이터 검색 패턴을 예측하고 인덱싱의 기능을 사용하여 쿼리를 개선하십시오.
- 시스템의 안정성을 유지하고 전체 MongoDB 환경의 효율성을 향상시키려면 빈번한 삽입, 업데이트 및 제거를 확인해야 합니다.
예시:
{
_id: ObjectId(3pv40qe7046d)
제목: 'MongoDB란 무엇입니까?',
설명: '개념에 대한 기본 이해',
작성자: 'upGrad',
URL: 'https://www.upgrad.com/',
태그: ['mongodb', '데이터베이스', 'NoSQL'],
좋아하는 것: 100,
코멘트: [
{
사용자: '첫 번째 사용자',
메시지: '나는 upGrad를 사랑합니다',
dateCreated: 새로운 날짜(2020,1,20,2,15),
좋아요: 10
},
{
사용자: '두 번째 사용자',

메시지: 'upGrad는 기술을 배우고 개발하기에 가장 좋은 곳입니다',
dateCreated: 새로운 날짜(2020,1,25,7,45),
좋아요: 50
}
]
}
체크아웃: 가장 일반적인 MongoDB 명령
용어 및 계층
첫 번째이자 가장 중요한 점은 수많은 컬렉션을 포함하는 데이터베이스를 포함합니다. 이제 컬렉션은 유사한 문서로 구성되고 이러한 문서는 MongoDB에서 제공하는 기본 ID이기도 한 필드, 내장 문서 및 기본 키로 구성됩니다.
MongoDB의 장점은 다음과 같습니다.
- JSON 스타일 문서인 문서 지향 스토리지에 데이터를 저장하는 기능.
- 자동 샤딩 방법을 사용하여 자동으로 여러 시스템에 데이터를 배포하는 기능.
- MongoDB에는 모든 주요 CRUD 작업을 지원하고 전례 없는 텍스트 검색 및 집계 기능을 제공하는 풍부한 쿼리 언어가 내장되어 있습니다.
- 작업 복제 및 고가용성은 MongoDB의 주요 이점으로, 플랫폼 자체가 아닌 처리 중인 쿼리에 집중할 수 있도록 도와줍니다. 각 복제본 세트 구성원은 언제든지 기본 및 보조 복제본 역할을 수행할 수 있습니다. 주 복제본은 클라이언트와 사용자의 주요 접점이며 모든 작업을 수행합니다. 보조 복제본은 기본 복제본 데이터의 복사본을 유지 관리하고 기본 복제가 작업 수행에 실패한 경우에만 작업을 시작합니다.
- 신속한 업데이트는 모든 개인 및 직업적 요구 사항을 충족하는 정기적인 업데이트를 통해 사무실이나 가정에서 편안하게 최신 상태를 유지하고 시장 가치를 제공합니다.
- 오픈 소스 문화로 인해 활발한 포럼 및 개발자 지원을 통해 MongoDB의 전문적이고 헌신적인 지원.
- 로드 밸런싱: 자동 샤딩을 사용하면 사용 가능한 데이터를 여러 MongoDB 인스턴스로 분할하여 시스템을 수평으로 확장할 수 있습니다. 여러 서버를 실행하고 노드 또는 서버에 장애가 발생한 경우 그에 따라 부하를 분산할 수 있습니다.
- 인덱싱: 우리가 알고 있듯이 인덱싱은 프로그램의 검색 성능을 높이기 위해 수행됩니다. MongoDB의 모든 필드는 인덱싱 절차를 사용하여 인덱싱할 수 있습니다.
MongoDB는 빅 데이터, 콘텐츠 관리 및 전달, 모바일, 소셜 인프라 등 다양한 분야에서 사용됩니다. 사용자 및 전문 데이터 관리 및 데이터 허브 관리

또한 읽기: Firebase 대 MongoDB
마무리
기업은 작업할 새롭고 혁신적인 기술을 찾고 있으며 MongoDB가 그 중 하나입니다. 이러한 새로운 기술은 소프트웨어 개발과 같이 신기술이 발전할 때마다 우선 순위가 변경되는 경쟁 환경에서 번창하는 데 매우 유용합니다. 이러한 신세대 능력을 고려하여 향후 채용이 진행될 예정입니다.
upGrad는 업계 파트너인 Flipkart 및 인도 정보 기술 연구소(Indian Institute of Information Technology)와 협력하여 제공되는 기계 학습 및 AI, 데이터 과학 및 빅 데이터의 PG 디플로마와 같은 다양한 영역에서 이러한 최첨단 기술을 제공하고 있습니다.
당신의 미래는 당신의 꿈을 추구하기 위해 당신의 시간과 노력을 바칠 때만 안전할 수 있습니다. upGrad의 우리는 실시간 입력과 광범위한 배치 지원을 제공하여 이러한 잠재력을 달성하고 기술을 미래의 회사 및 조직을 위한 자산으로 개발할 수 있도록 도와드립니다. 우리와 함께 당신의 미래를 안전하게 만들고 이러한 도전이 당신의 꿈을 박탈하지 않도록 하십시오.
세계 최고의 대학에서 온라인으로 소프트웨어 개발 과정 을 배우십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.

