몽고DB란? 소개, 데이터 모델링, 용어 및 계층

게시 됨: 2020-09-16

MongoDB는 방대한 데이터 스토리지 볼륨을 위한 오픈 소스, 문서 지향, 최고의 NoSQL 데이터베이스입니다. 그것은 원시적이지만 상대적으로 매우 진보되고 신뢰할 수 있는 언어 중 하나인 C++로 완전히 코딩되어 있습니다. 테이블과 행의 기본 개념에 정의된 전통적인 관계형 데이터베이스를 사용하는 대신 MongoDB는 키-값 쌍을 포함하고 플랫폼의 기본을 구성하는 문서 및 컬렉션의 사용에 의존합니다.

서로 상호 작용할 수 있는 기능으로 여러 플랫폼에서 작동합니다. MongoDB의 주목할만한 기능 중 일부는 고가용성 시간, 최고의 성능 및 손쉬운 확장성을 포함합니다.

이제 MongoDB가 무엇인지 더 잘 이해하려면 MongoDB가 데이터베이스를 저장하는 구조와 함께 모든 용어를 알아야 합니다.

데이터베이스 : 데이터를 수집하는 물리적인 컨테이너 역할을 합니다. 컴퓨터 시스템의 미리 정의된 경로에 저장됩니다. 여기에는 기계가 읽을 수 있도록 특정 방식으로 배열된 모든 귀중한 데이터가 포함됩니다.

Collection : MongoDB에서 문서의 집합체 역할을 하며 RDBMS 테이블에 해당한다. 컬렉션에는 서로 다른 필드를 가질 수 있지만 유사하거나 관련된 목적을 가진 문서가 포함되어 있습니다.

문서: 일련의 키-값 쌍이 문서를 구성합니다. 그들은 동적 스키마에서 작동합니다. 즉, 모든 문서에서 동일한 집합이나 구조를 사용할 필요가 없고 공통 필드에서 다양한 유형의 데이터를 처리할 필요가 없습니다.

_id: 12바이트 16진수를 사용하여 모든 문서의 고유한 부분을 결정합니다. 이것은 4개의 세그먼트로 구성됩니다-

  1. 먼저 타임스탬프용으로 4바이트입니다.
  2. 다음으로 머신 ID를 위한 3바이트입니다.
  3. 다음으로 MongoDB 서버의 프로세스 ID에 대한 2바이트입니다.
  4. 나머지 3바이트는 증분 값입니다.

JSON : 데이터를 주고받는 가장 중요한 기능 중 하나로 JavaScript Object Notation이라고 합니다. 인기의 비결은 일반 텍스트 형식을 사용하여 사람이 읽을 수 있는 특성 때문입니다.

읽기: MongoDB 미래 범위

MongoDB의 데이터 모델링

MongoDB는 유연한 스키마를 따릅니다. 따라서 SQL Database의 경우와 같이 명확한 데이터 저장 구조를 정의할 필요가 없습니다. 특정 사항이 중요하며 MongoDB에서 데이터를 모델링할 때 이를 고려해야 합니다.

  1. 개발 중인 애플리케이션이 필요합니까? 애플리케이션에 대한 비즈니스 요구 사항을 살펴보고 그에 따라 계획하십시오.
  2. 데이터 검색 패턴을 예측하고 인덱싱의 기능을 사용하여 쿼리를 개선하십시오.
  3. 시스템의 안정성을 유지하고 전체 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의 장점은 다음과 같습니다.

  1. JSON 스타일 문서인 문서 지향 스토리지에 데이터를 저장하는 기능.
  2. 자동 샤딩 방법을 사용하여 자동으로 여러 시스템에 데이터를 배포하는 기능.
  3. MongoDB에는 모든 주요 CRUD 작업을 지원하고 전례 없는 텍스트 검색 및 집계 기능을 제공하는 풍부한 쿼리 언어가 내장되어 있습니다.
  4. 작업 복제 및 고가용성은 MongoDB의 주요 이점으로, 플랫폼 자체가 아닌 처리 중인 쿼리에 집중할 수 있도록 도와줍니다. 각 복제본 세트 구성원은 언제든지 기본 및 보조 복제본 역할을 수행할 수 있습니다. 주 복제본은 클라이언트와 사용자의 주요 접점이며 모든 작업을 수행합니다. 보조 복제본은 기본 복제본 데이터의 복사본을 유지 관리하고 기본 복제가 작업 수행에 실패한 경우에만 작업을 시작합니다.
  5. 신속한 업데이트는 모든 개인 및 직업적 요구 사항을 충족하는 정기적인 업데이트를 통해 사무실이나 가정에서 편안하게 최신 상태를 유지하고 시장 가치를 제공합니다.
  6. 오픈 소스 문화로 인해 활발한 포럼 및 개발자 지원을 통해 MongoDB의 전문적이고 헌신적인 지원.
  7. 로드 밸런싱: 자동 샤딩을 사용하면 사용 가능한 데이터를 여러 MongoDB 인스턴스로 분할하여 시스템을 수평으로 확장할 수 있습니다. 여러 서버를 실행하고 노드 또는 서버에 장애가 발생한 경우 그에 따라 부하를 분산할 수 있습니다.
  8. 인덱싱: 우리가 알고 있듯이 인덱싱은 프로그램의 검색 성능을 높이기 위해 수행됩니다. MongoDB의 모든 필드는 인덱싱 절차를 사용하여 인덱싱할 수 있습니다.

MongoDB는 빅 데이터, 콘텐츠 관리 및 전달, 모바일, 소셜 인프라 등 다양한 분야에서 사용됩니다. 사용자 및 전문 데이터 관리 및 데이터 허브 관리

또한 읽기: Firebase 대 MongoDB

마무리

기업은 작업할 새롭고 혁신적인 기술을 찾고 있으며 MongoDB가 그 중 하나입니다. 이러한 새로운 기술은 소프트웨어 개발과 같이 신기술이 발전할 때마다 우선 순위가 변경되는 경쟁 환경에서 번창하는 데 매우 유용합니다. 이러한 신세대 능력을 고려하여 향후 채용이 진행될 예정입니다.

upGrad는 업계 파트너인 Flipkart 및 인도 정보 기술 연구소(Indian Institute of Information Technology)와 협력하여 제공되는 기계 학습 및 AI, 데이터 과학 및 빅 데이터의 PG 디플로마와 같은 다양한 영역에서 이러한 최첨단 기술을 제공하고 있습니다.

당신의 미래는 당신의 꿈을 추구하기 위해 당신의 시간과 노력을 바칠 때만 안전할 수 있습니다. upGrad의 우리는 실시간 입력과 광범위한 배치 지원을 제공하여 이러한 잠재력을 달성하고 기술을 미래의 회사 및 조직을 위한 자산으로 개발할 수 있도록 도와드립니다. 우리와 함께 당신의 미래를 안전하게 만들고 이러한 도전이 당신의 꿈을 박탈하지 않도록 하십시오.

세계 최고의 대학에서 온라인으로 소프트웨어 개발 과정배우십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.

자신의 기술을 향상시키고 미래를 준비하십시오

IIT Bangalore의 빅 데이터 고급 인증 프로그램