MongoDB 스키마 모델링: 요구사항과 성능의 균형 잡기 - 2
·
데이터베이스
이전 포스팅에서는 MongoDB 모델링에 대한 소개와 함께 OLTP 성 모델링을 어떻게 하면 좋을지에 대한 내용이었다.이번에는 더 다양한 사례를 정리한다.예측할 수 없는 행동 게임 로그 모델링게임 로그를 예로 들어, 예측할 수 없는 사용자 행동을 효과적으로 저장하고 분석할 수 있는 NoSQL 스키마 모델링 방법에 대해 알아보자 문제점: 비효율적인 배열 구조각 사용자들의 행동 패턴을 분석하기 위해 하루치 모든 행동을 기록한다고 가정해보자. 그러면 아래와 같은 형태의 스키마를 설계할 수 있다.{ "time": "2024-12-13", "visits": [], // 지역 방문 로그 "quests": [], // 퀘스트 로그 "trades": [], // 아이템 거래 로그 "...":..
MongoDB 스키마 모델링: 요구사항과 성능의 균형 잡기 - 1
·
데이터베이스
스키마 모델링이란?MongoDB는 스키마리스(Schema-less) 데이터베이스로 잘 알려져 있지만, 데이터 모델링은 여전히 중요하다.애플리케이션 요구사항과 데이터베이스 성능 간의 균형을 맞추는 것이 핵심 과제이다.이번 포스팅에서는 스키마 설계를 통해 성능을 최적화하면서도 확장 가능한 구조를 만드는 방법에 대해 다룬다.Embedding vs ReferencingMongoDB 스키마 모델링에서 가장 먼저 마주하는 문제는 임베딩(Embedding)과 레퍼런싱(Referencing)이다.MongoDB의 기본 철학은 역정규화이지만, RDB를 주로 사용해왔던 입장에서는 낯선 방법이다. 아래 장단점을 통해 간단히 알아보자.Embedding (중첩, 내장)장점데이터가 한 문서 안에 있어 **조회 속도(read)**..
MongoDB 정리
·
데이터베이스
MongoDB를 선택하는 이유Schema가 자유롭다.HA와 Scale-Out Solution을 자체적으로 지원해서 확장이 쉽다.Secondary Index를 지원하는 NoSQL이다.다양한 종류의 Index를 제공한다.응답 속도가 빠르다.배우기 쉽고 간편하게 개발이 가능하다.데이터 중복이 발생할 수 있지만, 접근성과 가시성이 좋다.즉, MongoDB는 유연하고 확장성 높은 Opensource Document 지향 DB이다.SQL vs NoSQLSQL 장단점데이터 중복을 방지할 수 있다.Join 성능이 좋다.복잡하고 다양한 쿼리가 가능하다.잘못된 입력을 방지할 수 있다.하나의 레코드를 확인하기 위해 여러 테이블을 Join하여 가시성이 떨어짐스키마가 엄격해서 변경에 대한 공수가 큼NoSQL관계형 데이터베이스에..
noose
'NoSQL' 태그의 글 목록