NoSql을 지원하는 데이터 베이스
Bson 기반의 동적 스키마형 문서를 사용
데이터 타입까지 포함되어 이진형태로 인코딩해서 저장
MongoDB의 기본 데이터 단위로 관계형 데이터베이스의 row와 유사
필드와 값 쌍으로 구성
Document의 그룹이며 관계형 데이터베이스의 테이블과 유사
컬렉션 내의 Document들은 모두 다른 구조로 저장 가능
insertOne(), insertMany()
db.users.inserOne({
"field" : "value",
"field" : "value"
})
find(), findOne()
연산자: $eq, $gt, $lt, $regex
db.users.find({
"age" : {"$gt": 30}
})
updateOne(), updateMany(), replaceOne()
연산자: $set, $inc, $push
db.users.updateOne(
{"_id" : "ObjectId("id")"},
{"$set" : {"email" : "new.email@naver.com"}}
)
db.users.delete({
"_id" : "ObjectId("id")"
})
시계열 데이터를 기준으로 데이터 저장
MongoDB에서는 TimeSeries Collection을 사용하여 효율적으로 데이터를 저장
db.collection("collection_name"{
timeseries: {
timeField : "field_name", <- 필수
metaField : "value", <- 옵션
"field" : "value" ... <- 옵션
}
})
TimeField, MetaField 단위로 버킷이 생성되고, 해당 범위 내로 데이터가 들어 올 경우 동일한 버킷에 저장
참조
https://colevelup.tistory.com/45
https://it-creamstory.tistory.com/entry/MongoDB-60%EC%97%90%EC%84%9C-%EC%B6%94%EA%B0%80%EB%90%9C-Time-Series-Collection-%EC%83%9D%EC%84%B1%EB%B6%80%ED%84%B0-%EC%A1%B0%ED%9A%8C%EA%B9%8C%EC%A7%80
https://hello-world.kr/45