[WEB] WEB 데이터 저장 방법

웨다(Weda)·2025년 1월 18일
post-thumbnail

WEB의 데이터 저장 방식에 대해 알아보자✨

WEB에서 데이터를 저장하는 방식은 데이터의 저장 위치에 따라 구분할 수 있다

📚 1. Client 저장 방식

클라이언트에 데이터를 저장하는 방식으로 Server와 통신없이 빠르게 접근해 데이터를 유지할 수 있다는 장점이 있다.

1) 쿠키(Cookie): 클라이언트의 브라우저 속 작은 데이터 파일 형태로 저장

  • 특징: 데이터 크기 제한(약 4KB), 유효기간 설정(브라우저 종류 후에도 저장 가능), 보안 취약점(데이터 탈취 가능성)
  • 사용 예시: 로그인 상태 유지, 사용자 선호 설정(언어, 테마 등)

2) 로컬 스토리지(Local Storage): 브라우저 기반 저장소로 데이터를 영구적으로 저장하며 브라우저 탭 간 공유 가능

  • 특징: 데이터 크기 제한(약 5~10MB), 브라우저가 삭제되기 전까지 데이터 유지, HTTP 요청에 포함되지 않음
  • 사용 예시: Application 설정 저장, 캐싱된 데이터 저장

3) 세션 스토리지(Session Storage): 로컬 스토리지와 유사하지만 브라우저 탭 단위 데이터 저장 방식으로 탭 종료시 데이터 삭제

  • 특징: 데이터 크기 제한(약 5~10MB), 브라우저가 삭제되기 전까지 데이터 유지, HTTP 요청에 포함되지 않음
  • 사용 예시: 임시 데이터 저장, 구글 Form 데이터, 검색 기록

4) 인덱스드 디비(Indexed DB): HTML에서 제공하는 비관계형 NoSQL DB로 브라우저에서 대용량 데이터를 구조화하여 저장 가능

  • 특징: 일반적인 웹 스토리지(ex. 로컬, 세션)보다 더 많은 데이터 저장 가능
  • 사용 사례: 오프라인 웹 애플리케이션, 대규모 데이터 관리(이미지, 동영상 메타데이터 등)

5) 웹 스토리지 API: 로컬 스토리지와 세션 스토리지의 통칭

  • 특징: Key-Value 쌍으로 데이터 저장, 간단한 데이터 관리
  • 사용 사례: 클라이언트 측 데이터를 임시 또는 영구 저장

📚 2. Server 저장 방식

서버에서 데이터를 저장하여 중앙에서 관리하고, 클라이언트 통신 이벤트가 발생할 시 데이터를 제공받는다.

1) 세션(Session): 서버에서 사용자 상태 정보를 저장하고 관리

  • 특징: 서버에 데이터 저장, 클라이언트는 세션 ID만 보유, 브라우저 종료 시 기본적으로 세션 종료(세션 변경 가능)
  • 사용 사례: 로그인 상태 관리, 홈페이지 내 장바구니 기능

2) 데이터베이스(DataBase, DB): 서버에서 대규모 데이터를 영구적으로 저장
관계형(RDB): MySQL, PostgreSQL 등, 비관계형(NoSQL): MongoDB, DynamoDB 등

  • 특징: 데이터 무결성, 복잡한 쿼리 지원, 영구적 저장
    +) 데이터무결성: 데이터의 정확성, 일관성, 유효성이 유지되는 것을 말함
  • 사용 사례: 사용자 정보 저장, 애플리케이션 데이터 관리

3) 캐시(Cache): 서버의 메모리에 데이터를 임시 저장하여 빠르게 엑세스할 수 있도록 함 (ex. Redis, Memcached)

  • 특징: 빠른 데이터 접근, 휘발성(메모리 기반)
  • 사용 사례: 자주 조회되는 데이터 저장(ex. 인기상품, 공지사항), 데이터베이스 부하 감소 목적 캐시 활용

📚 3. Hybrid(Client+Server) 저장 방식

하이브리드 방식은 클라이언트와 서버 측 저장 방식을 효율적으로 병합하여 사용하는 방식이다.

  • 특징: 상황에 따라 효율적으로 클라이언트와 서버 측 저장 방식을 조합하여 사용
  • 사용 사례: 세션 ID는 쿠키에 저장하고 실제 세션 데이터는 서버에서 관리, 로컬 스토리지에 임시 데이터를 저장하고 변경 사항만 서버에 동기화

📌 표 총정리

구분클라이언트서버
대표기술쿠키, 로컬 스토리지, 세션 스토리지, IndexedDB세션, 데이터베이스, 캐시
저장위치브라우저서버
데이터 크키제한적(4KB~MB)제한 없음
보안성낮음높음
유효기간사용자 설정 가능서버 설정 가능
사용사례사용자 설정 저장, 임시 데이터 관리인증, 대규모 데이터 관리, 빠른 접근성
profile
인문학도 IT PM

0개의 댓글