Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- docker network
- gradle
- jenkins jdk
- vue.js
- java
- nginx
- 리눅스
- jenkins maven
- spring
- Linux
- jenkins github
- Jenkins Pipeline
- jpa
- jenkins github 연동
- JavaScript
- Spring Boot
- REACT
- Docker
- subnetmask
- jenkins install
- MySQL
- jenkins 설치
- error
- grafana
- IntelliJ
- MongoDB
- grpc
- CI/CD
- 리액트
- Jenkins
Archives
- Today
- Total
뭐든 즐기면서 ;)
MongoDB indexing / MongoDB 인덱싱 1(인덱스 생성) 본문
728x90
인덱스를 사용하지 않는 쿼리를 컬렉션 스캔이라고 한다. 이는 '전체 내용을 살펴봐야 함'을 의미한다. 책에서 index없이 정보를 찾을 때 1쪽부터 끝까지 훑어보며 찾는 것과 같은 방식이다.
인덱스 생성
> db.collection.createIndex({"field명": 1})
{
createdCollectionAutomatically: false,
numIndexesBefore: 1,
numIndexesAfter: 2,
ok: 1
}
* createIndex 후 시간이 오래 걸려 결과 반환이 되지 않을 때 진행 상태를 보는 방법
1. 다른 셸에서 db.currentOp() 실행
2. mongod의 로그를 확인
인덱싱된 field를 삽입, 갱신, 삭제할 때에는 더 오랜 시간이 걸린다. 데이터가 변경될 때마다 모든 인덱스(모든 도큐먼트의 해당 field의 인덱스)를 갱신해야 하기 때문이다.
explain 명령어를 통해 인덱스 생성 전/후 실행 시간 차이 확인
728x90
'DB(데이타베이스) > MongoDB' 카테고리의 다른 글
MongoRepository dynamic query / MongoRepository 동적 쿼리 (0) | 2023.06.22 |
---|---|
MongoDB indexing / MongoDB 인덱싱 2(복합 인덱스) (0) | 2023.06.14 |
MongoDB explain / MongoDB 실행 계획 (0) | 2023.06.02 |
MongoDB field 정렬 시 비교 순서 (0) | 2023.06.01 |
MongoDB $elemMatch (3) | 2023.05.30 |
Comments