-
3. Database 생성 및 Collection 생성IT/MongoDB 2021. 3. 17. 00:12
1. Database 생성
* 새롭게 Database를 생성하기 위해 명령어가 필요하지 않습니다. Database를 전환하는 명령어를 입력하고, 데이터를 insert 하면 자동으로 Database와 Collection이 생성됩니다.
use testDB db.testcollection.insertOne({a:1})
* 위와같이 자동으로 생성이 완료됩니다. insertOne() 은 Document 하나를 입력하는 명령어 입니다.
2. Collection 생성
* 존재하지 않는 collection을 생성 해 봅니다.
db.test2.insertOne({b:2}) show collections
* 위에 생성했던 testcollection 과 새롭게 생성된 test2 collection이 보입니다.
3. 명시적인 Collection 생성
db.createCollection(<Collection 명칭>, { capped: <boolean>, autoIndexId: <boolean>, size: <number>, max: <number>, storageEngine: <document>, validator: <document>, validationLevel: <string>, validationAction: <string>, indexOptionDefaults: <document>, viewOn: <string>, pipeline: <pipeline>, collation: <document> } )
* 자세한 옵션의 내용은 다음 링크를 참조합니다.
https://docs.mongodb.com/manual/reference/method/db.createCollection/#db.createCollection
db.createCollection() — MongoDB Manual
validator document Optional. Allows users to specify validation rules or expressions for the collection. For more information, see Schema Validation. The validator option takes a document that specifies the validation rules or expressions. You can specify
docs.mongodb.com
4. Capped Collection
* 제한된 크기의 공간 내에서만 데이터를 저장할 수 있고, 공간이 모두 사용되면 다시 처음으로 돌아가서 기존 공간을 재사용하는 타입의 collection 입니다.
* 로그 데이터를 일정한 크기 내에서만 저장, 관리할 필요가 있는 데이터에 효과적입니다.
* 다음은 100000 바이트 크기의 log라는 명칭의 capped collection 을 생성합니다.
db.createCollection( "log", { capped: true, size: 100000 } )
* 20000 바이트와 5000 Document 한계치를 가진 log2 라는 명칭의 collection 을 생성합니다.
db.createCollection("log2", { capped : true, size : 20000, max : 5000 } )
* collection이 capped 속성을 가지고 있는지 체크하는 함수입니다.
db.log2.isCapped()
* capped 속성이 아닌 collection을 capped 속성으로 변경하는 방법은 다음과 같습니다.
db.runCommand({"convertToCapped": "test2", size: 100000});
'IT > MongoDB' 카테고리의 다른 글
2. MongoDB 설치 및 설정 (0) 2021.03.16 1. NoSQL 과 MongoDB (0) 2021.03.16