데이터베이스

NoSQL

NoSQL은 데이터를 꼭 행과 열의 표에 맞추지 않고, 문서나 키-값처럼 여러 구조로 저장할 수 있는 데이터베이스 방식입니다.

쉬운 설명

NoSQL은 데이터를 꼭 행과 열의 표에 맞추지 않고, 문서나 키-값처럼 여러 구조로 저장할 수 있는 데이터베이스 방식입니다.

배경과 쓰임까지 이해하기

조금 더 자세히

NoSQL은 데이터를 꼭 행과 열로 이루어진 표에 맞추지 않고, 목적에 따라 여러 형태로 저장하는 데이터베이스 방식입니다. MongoDB처럼 JSON과 비슷한 문서로 저장하거나, Redis처럼 키와 값의 형태로 저장하는 방식이 대표적입니다. 앱의 데이터 구조가 자주 바뀌거나 빠른 읽기와 쓰기, 많은 요청의 분산 처리가 중요할 때 선택할 수 있습니다.

이름 때문에 SQL을 전혀 사용하지 않는 하나의 기술처럼 보이지만, 보통 ‘Not Only SQL’이라는 의미로 서로 다른 데이터베이스 계열을 묶어 부르는 말입니다. 데이터 사이의 복잡한 관계와 정확한 거래 처리가 중요하다면 관계형 데이터베이스가 더 잘 맞을 수도 있습니다. 한마디로, NoSQL은 관계형 표 이외의 구조도 활용하는 데이터베이스 방식입니다.

실제로는 이렇게 만나요

MongoDB에는 상품 정보를 JSON과 비슷한 문서로 저장하고, Redis에는 로그인 세션이나 캐시를 키와 값의 형태로 저장할 수 있습니다.

  • 이런 거 할 때 나와요 앱의 데이터 구조가 자주 바뀌거나, 빠른 읽기와 쓰기, 많은 요청의 분산 처리가 중요할 때 NoSQL 데이터베이스를 선택할 수 있습니다.
  • 이렇게 생겼어요 JSON과 비슷한 문서, `키: 값` 형태의 데이터, 또는 데이터 사이의 연결을 나타내는 그래프 형태로 보일 수 있습니다.
  • 나오는 화면 예시 MongoDB 문서 목록, Redis 키 목록 또는 백엔드의 데이터 조회 코드

NoSQL은 SQL을 전혀 사용하지 않는다는 뜻인가요?

반드시 그런 뜻은 아닙니다. NoSQL은 보통 ‘Not Only SQL’로 이해하며, 관계형 표 이외의 데이터 구조와 조회 방식을 사용하는 여러 데이터베이스를 묶어 부르는 말입니다.

헷갈리기 쉬운 점

NoSQL이 언제나 SQL보다 쉽거나 빠른 것은 아닙니다. 데이터 사이의 관계와 트랜잭션이 중요하다면 관계형 데이터베이스가 더 잘 맞을 수 있습니다.

왜 알아두면 좋을까요?

앱의 데이터 구조가 자주 바뀌거나, 빠른 읽기와 쓰기, 많은 요청의 분산 처리가 중요할 때 NoSQL 데이터베이스를 선택할 수 있습니다.

Checklist

실제로 볼 때 확인할 것

  1. 01

    저장할 데이터의 모양과 관계를 먼저 본다

  2. 02

    필요한 조회 방식과 일관성 수준을 정한다

  3. 03

    백업·권한·확장 방법을 확인한다

관계 지도