[게임 서버] 8.10 요약 및 더 알아보기

게시:     수정

카테고리:

태그:

이 글은 아래의 책을 자세히 정리한 후, 정리한 글을 GPT에게 요약을 요청하여 작성되었습니다.
게임 서버 프로그래밍 교과서, 배현직 저자

📦 8. NoSQL 기초

👉🏻 10. 요약 및 더 알아보기

📊 관계형 데이터베이스 vs NoSQL

구분 관계형 데이터베이스 NoSQL
레코드 구조 테이블 안의 모든 레코드가 동일한 데이터 구조(필드)를 가져야 한다. 컬렉션 안의 모든 도큐먼트가 서로 다른 데이터 구조(트리)를 가져도 된다.
중요점 데이터의 원자성과 일관성을 중요하게 여긴다. 데이터의 가용성(데이터 액세스 요청 신속 응답)과 수평 확장성을 중요하게 여긴다.
질의 기능 질의 기능이 많고, 표준화 되어 있다. 질의 기능이 상대적으로 적고 표준이 없다.

🎮 게임 서버에서의 활용

  • 게임 서버 개발에서 RDBMS와 NoSQL을 혼용하여 사용한다.
    • RDBMS: 게임 플레이어 데이터를 주로 관리한다.
    • NoSQL: 로그 분석이나 통계 분석에 주로 사용한다.
    • 즉, 하나의 데이터베이스 엔진만 사용하지 않는다.

🔎 MongoDB 추가 특징

  • 오브젝트 ID는 수동 할당도 가능하다.
  • 한번 설정된 샤드 키는 변경할 수 없고, 하려면 샤드를 재구성해야 한다.
  • MongoDB의 인덱스 비용은 RDBMS보다 큰 경향이 있다.
  • 결과적 일관성을 인지하고 프로그래밍해야 한다.
  • upsert 기능: “없으면 넣고, 있으면 수정하라”는 의미이다.

GameServer 카테고리 내 다른 글 보러가기

댓글남기기