![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/DxIqP/btqCpPHo1vE/uTwWVtycJwEEFCzQsi0elK/img.jpg)
covered query란? 일단 설명하기 위해 준비를 하자. 다음과 같이 2개의 documents를 넣어주고 name key에대해 single field index를 하나 준비한다. 이제 여기서 max라는 이름의 document를 찾는 과정을 관찰해보자. 쿼리를 진단하는 방법은 explain()메서다. db.customers.explain("executionStats").find({name: "Max"}) 자세히보면 inpuStage의 stage를 보면 단계를 알 수 있다. "IXSCAN" => "FETCH" executionStats key에는 전체 Examined된 documents개수와 returned된 개수를 알 수 있다. 만약 내가 "Max"라는 이름의 사람이 존재하는지만 알면된다면 그 사람에..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/9gdqn/btqClxVjPDL/0IfbBdUHG6UXDsLLGvmiG0/img.jpg)
unique index에서 만약 값을 넣어주지 않는다면? unique인덱스를 생성 x를 일부러 입력하지 않으면 duplicate key error ! index: x_1에서 dup key: { x: null }이라고 나와있다. index는 다음과 같이 생겼을 것이고, [value:{ x:null, y:1}, pointer: address1 }] {value:{x:null, z:1}, pointer: address2}를 인덱스에 추가하려고 하니 에러가 발생했다. 만약 x값이 존재할 수도 있고 아닐 수도 있는 상황에서 x값이 존재할 때만 index를 만들 수는 없을까? 그럴 땐 partialFilterExpression 를 쓸 수 있다. x가 존재하는 document에 대해서만 index를 생성하겠다는 것이..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/njIfT/btqCiorB5gZ/PZBXiRPbKhRvxTGk5OfFX1/img.jpg)
특정 시간이 지난 후에 알아서 DB에서 사라지게 만들고 싶다면 TTL Index를 고려해 볼만하다. What is TTL Index? TTL은 TIME TO LIVE의 약자. '살아있을 시간'이란 뜻에서 알 수 있듯이. 일정 시간이 지나면 expire 된다. TTL인덱스를 만드는 법: db.collection.createIndex({ : 1 }, { expireAfterSeconds: }) 1. eventlog라는 collection에 date객체를 가지고 있는 document를 하나 넣어두고 2. TTL인덱스 생성 3. document를 넣어주고 4. 10초 이상의 시간을 기다린 뒤 이와 같이 사라진 것을 알 수 있다. TTL의 한계: 1. '10초 이상의 시간' 나는 분명히 expireAfterSec..
- Total
- Today
- Yesterday
- index
- virtuals
- pm2 #cluster #Javascript
- mixin
- instance method
- 자료구조 #딕셔너리 #해시
- alias
- MongoDB
- Iterator
- mongoose
- query helper
- static method
- Generator
- 다중상속
- express-session
- map
- 자료구조
- set
- 집합
- Node.js
- 이중 연결리스트
- saveUnitialized
- 다형성
- javascript
- resave
- 선형리스트
- 맵
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |