홈 > 고객지원 > 기술자료 폴더

기술자료 폴더

[실습파일] MongoDB Master가 해설하는 NoSQL&MongoDB 교재 관련

안녕하세요? MongoDB Master 주종면입니다.
이번에 출간되는 [MongoDB Master가 해설하는 NoSQL&MongoDB] 교재의 실습 파일입니다.
 
꾸준한 학습을 통해 기슬 습득에 최선을 다해주십시오.
감사합니다.


6d8715ce9ffbf6e94ab4dbc3cbd33179_1488734609_938.jpg 

 

-       -

 
1. MongoDB 시작과 종료

   
    1.1 NoSQL 이란 ?

     1.2 NoSQL의 시대적 요구

     1.3 NoSQL의 장점

     1.4 NoSQL의 종류

     1.5 NoSQL 제품군

     1.6 적용 사례

 
2. 데이터의 입력/수정/삭제

2.1 MongoDB ?

     2.1.1 용어 설명

      2.1.2 설치 환경 및 지원 드라이버
2.2 MongoDB 시작과 종료

   2.3 데이터 처리  

      2.3.1 Collection의 생성 및 관리

      2.3.2 Data Insert/Update/Remove

      2.3.3 JSON 타입과 BSON 타입

      2.3.4 Data Type 종류

      2.3.5 Operator 종류

      2.3.6 MapReduce 기능

      2.3.7 CommitRollback

 
3. 인덱스의 생성과 관리 & 사용자 관리

   3.1 인덱스의 생성과 관리

   3.2 인덱스의 재 구성과 삭제

   3.3 인덱스의 종류

     3.3.1 Single-key 인덱스와 Compound key 인덱스

     3.3.2 No-Unique 인덱스 & Unique 인덱스

     3.3.3 Sparse 인덱스

     3.3.4 Background 인덱스

     3.3.5 Covered 인덱스

     3.3.6 GeoSpatial 인덱스

   3.4 사용자 생성과 관리

   3.5 인증

 
4 Collection 설계

 
   4.1 MongoDB의 데이터 모델링

   4.2 MongoDB 설계 기준

   4.3 스키마 설계의 주요 패턴

      4.3.1 Extended Document

     4.3.2 Extend Document

     4.3.3 Linking

     4.3.4 DBRef 함수를 이용한 수동 Linking

     4.3.5 N:M 관계

     4.3.6 상속 관계

      4.3.7 계층형 관계

 
5 논리적 구조와 물리적 구조

   5.1 MongoaDB 구조

   5.2 물리적 구조    

      5.2.1 데이터 파일 & 저널(Journal) 파일

    5.3 논리적 구조

      5.3.1 익스텐트와 데이터 레코드

      5.3.2 익스텐트와 인덱스 레코드

    5.4 메모리 구조

      5.4.1 적정 메모리 요구 사항

       5.4.2 저널 파일

    5.5 MongoDB Lock 정책

       5.5.1 Gobal Lock & PageFault

    5.6 Grid FS

    5.7 MongoDB 환경 명령어

    5.8 MongoDB 관리 명령어

 
6. Sharding System

  6.1 Sharding System 이란 ?

   6.2 Sharding 구축을 위한 시스템 환경

   6.3 Config 서버

   6.4 MongoS 프로세스

   6.5 Sharding 환경 설정

   6.6 사딩 시스템 구축 시 고려 사항

   6.7 샤딩 System의 문제점

 
 
7. Replica & Replica Sets

    7.1 Master & Slave 서버란 ?

      7.1.1 MASTER & SLAVE 서버 환경 설정

    7.2 ReplicaSets이란 ?

      7.2.1 Priority

      7.2.2 Replica Set 환경 설정

      7.2.3 FailOver

      7.2.4 노드의 추가와 삭제

 
8. MongoDB 성능 튜닝

   8.1 성능 튜닝 포인트

   8.2 디자인 튜닝

   8.3 문장 튜닝

     8.3.1 Profiling 시스템

     8.3.2 Profiler 환경 분석  결과 및 상태  확인

     8.3.3 Hint절과 Explain 함수

   8.4 아키텍처 튜닝

   8.5 인스턴스 튜닝

   8.6 하드웨어 튜닝

 
9. MongoDB 유틸리티

   9.1 백업과 복구 유형

    9.2 MongoDump & MongoStore

       9.2.1 MongoDump

       9.2.2 MongoRestore

    9.3 BSONDump

    9.4 MongoImport& MongoExport

       9.4.1 MongoImport

       9.4.2 MongoExport

   9.5 CopyDatabase & CloneDatabase

       9.5.1 CopyDatabase

       9.5.2 CloneDatabase

    9.6 MongoStat& MongoTop

        9.6.1 MongoStat 유틸리티

      9.6.2 MongoTop 유틸리티

        9.6.3 Web Monitoring

        9.6.4 MongoDB Log 수집 & 분석

9 Comments
1 구르미 2017.04.08 02:21  
감사합니다.
좋은 책 고맙습니다.
2 해커즈 2017.05.01 18:30  
열심히 학습하겠습니다. 자료 감사드립니다.
M 관리자 2017.05.23 10:22  
네.... 홧팅~
1 웨인킴 2017.12.07 13:40  
4.3.4 DBRef 함수를 이용한 수동 Linking

예제에서 department 컬렉션이 없어서 예제를 못 돌려보고 있습니다.

실습파일에도 department에 대한 것이 없고요.
1 웨인킴 2017.12.07 13:44  
실습자료에 내용이 빠져서 다음과 같이 변경해주세요. 다른 분들 혼란스럽겠어요.

/////////////////////////
db.employees.drop()
db.employees.insert({empno:7369 , ename : "SMITH", job : "CLERK", hiredate : "17-12-1980", sal : 800, deptno : 20 })
db.employees.insert({empno:7499 , ename : "ALLEN", job : "SALESMAN", hiredate : "20-02-1981", sal :1600, comm : 300, deptno : 30 })
db.employees.insert({empno:7521 , ename : "WARD", job : "SALESMAN", hiredate : "22-02-1981", sal : 1250, comm : 500, deptno : 30 })
db.employees.insert({empno:7566 , ename : "JONES", job : "MANAGER", hiredate : "02-04-1981", sal : 2975, deptno : 20 })
db.employees.insert({empno:7654 , ename : "MARTIN", job : "SALESMAN", hiredate : "28-09-1981", sal : 1250, comm : 1400, deptno : 30 })
db.employees.insert({empno:7698 , ename : "BLAKE", job : "MANAGER", hiredate : "01-05-1981", sal : 2850, deptno : 30 })
db.employees.insert({empno:7782 , ename : "CLARK", job : "MANAGER", hiredate : "09-06-1981", sal : 2450, deptno : 10 })
db.employees.insert({empno:7788 , ename : "SCOTT", job : "ANALYST", hiredate : "13-06-1987", sal : 3000, deptno : 20 })
db.employees.insert({empno:7839 , ename : "PRESIDENT", job : "CEO", hiredate : "17-11-1981", sal : 5000, deptno : 10 })
db.employees.insert({empno:7844 , ename : "TURNER", job : "SALESMAN", hiredate : "08-09-1981", sal : 1500, deptno : 30 })
db.employees.insert({empno:7876 , ename : "ADAMS", job : "CLERK", hiredate : "13-06-1987", sal : 1100, deptno : 20 })
db.employees.insert({empno:7900 , ename : "JAMES", job : "CLERK", hiredate : "03-12-1981", sal : 950, deptno : 30 })
db.employees.insert({empno:7902 , ename : "FORD", job : "ANALYST", hiredate : "03-12-1981", sal : 3000, deptno : 20 })
db.employees.insert({empno:7934 , ename : "CLERK", job : "CLERK", hiredate : "23-01-1982", sal : 1300, deptno : 10 })
db.employees.find()

db.department.drop()
db.department.insert({deptno : 10, dname : "전산과", locno : 1 })
db.department.insert({deptno : 20, dname : "경영지원과", loc : 1 })
db.department.insert({deptno : 30, dname : "자재과", locno : 2 })
db.department.insert({deptno : 40, dname : "회계과", locno : 1 })
db.department.find().pretty()
1 웨인킴 2017.12.07 13:51  
db.location.drop()
db.location.insert({ locno : 1, lname : "샌프란시스코"  })
db.location.insert({ locno : 2, lname : "뉴욕" })
db.location.insert({ locno : 3, lname : "샌디에이고"})
db.location.insert({ locno : 4, lname : "브루클린" })
db.location.find().pretty()
M 관리자 2018.01.19 14:44  
2018, 1. 19. 자로 실습자료.zip 파일을 업데이트 했습니다.
감사합니다.
1 웨인킴 2018.02.10 23:13  
5장 부터 실습자료가 없네요. 추가 부탁드립니다. 5,4 Text Search 엔진은 삽입 명령어만 있고 find 명령어는 없어요.
1 웨인킴 2018.02.10 23:19  
db.product.createIndex({ p_text: "text" })
db.product.find({ $text : { $search : "boot" }}).pretty()
db.product.find({ $text : { $search : "boot bicycles" }}).pretty()
db.product.find({ $text : { $search : "boot-Velcro" }}).pretty()
Category
State
  • 현재 접속자 3 명
  • 오늘 방문자 26 명
  • 어제 방문자 54 명
  • 최대 방문자 141 명
  • 전체 방문자 56,438 명
  • 전체 게시물 176 개
  • 전체 댓글수 35 개
  • 전체 회원수 1,168 명
Facebook Twitter GooglePlus KakaoStory NaverBand