티스토리 뷰
compact 시에 option을 추가할 수 있는데, paddingFactor라는 것이 있다.
paddingFactor란 무엇일까?
MongoDB 공식 가이드에는 아래와 같이 설명되어 있다.
The amount of space added to the end of each document at insert time. The document padding provides a small amount of extra space on disk to allow a document to grow slightly without needing to move the document. mongod automatically calculates this padding factor |
즉, document 저장시 실제 데이터 내용보다 조금 더 넓은 공간을 할당 받아 저장한다는 의미다. 해당 옵션은 1.0 ~ 4.0까지 지정이 가능하다.
예를 들면 1.2라고 옵션을 주면 저장시 실제 데이터보다 20% 넓은 공간을 할당받아서 저장된다는 의미이다.
특정 document가 update되어 커졌을 경우 migration이 일어나지 않도록 하기 위함인 듯 하다. 기본적으로 MongoDB가 자동으로 계산하지만, testDB 내에 collection을 확인해보니 1로 설정되어 있다.
oracle 이 extent 내에 block을 할당 받아서 저장된 후 update로 더 커졌을 때 migration 일어나는 것과 동일한 원리인 듯 하다.
compact의 경우 chunk 내에서 rewrite를 하기 때문에, 최초 collection생성시 paddingFactor 옵션을 1이상으로 주지 않았거나,
자동으로 증가하지 않았다면, compact 후에도 데이터가 차지하는 공간에는 변화가 없는 것이 당연한 것 같다.
단순히 compact가 rewrite하는 방식으로 동작한다고 가이드에서 본 것 같은데, 좀 더 자세히 알아봐야겠다.
'BigData > MongoDB' 카테고리의 다른 글
MongoDB Having 쿼리 적용하기 (0) | 2015.03.05 |
---|---|
MongoDB Aggregation시 Document Size 오류 (0) | 2015.03.05 |
MongoDB 인덱스 관리 (0) | 2015.03.05 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- bigdata
- Sqoop
- 책요약
- Apache Spark
- Django
- spring
- 확률분포
- Oracle
- PYTHON
- jenkins2.0
- mongodb
- Git
- flume
- mysql
- linux
- 데이터과학자
- jackson
- HADOOP
- Learning Spark
- db
- spark
- 알고리즘
- jenkins
- 태그를 입력해 주세요.
- json
- exception
- 데이터 리터러시
- mongo
- Hdfs
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함