
세상에 있는 모든 데이터들은 어떠한 저장소에 있다. 이러한 저장소를 데이터베이스라고 하고, 우리가 일상적으로 사용하는 온라인 쇼핑몰, 은행 시스템, SNS 등 모든 디지털 서비스는 데이터베이스를 기반으로 작동한다.
데이터베이스는 단순히 데이터를 저장하는 장소가 아니다. 데이터를 구조화하고, 검색 및 갱신 작업을 최적화하며, 여러 사용자가 동시에 접근할 수 있는 환경을 제공한다.
데이터 베이스의 특징을 보면 아래와 같다.
1. 실시간 접근성 (Real-Time Accessibility)
데이터베이스는 실시간으로 데이터를 저장하고 검색할 수 있는 기능을 제공한다. 그래서 수시로 비정형적인 질의(조회)에 대해 빠르게 응답해야 한다. 이러한 실시간 처리 기능은 다양한 애플리케이션에서 필수적이다.
- ex)
- 전자상거래 시스템 : 상품 검색 시 실시간으로 재고 상태와 가격을 확인할 수 있다.
- 배달 앱: 사용자가 음식을 주문할 때, 실시간으로 예상 배달 시간과 레스토랑의 준비 상태를 확인한다.
- 주식 거래 시스템: 투자자가 주식을 매수하거나 매도할 때, 실시간으로 주가 정보를 제공받는다.
2. 계속적인 변화 (Continuous Evolution)
데이터베이스는 동적인 환경에서 항상 최신 상태를 유지한다. 새로운 데이터의 삽입(Insert), 삭제(Delete), 갱신(Update)이 실시간으로 이루어지며, 데이터를 최신 상태로 유지하기 위해 설계되어 있다.
- ex)
- 소셜 미디어: 새로운 게시물, 댓글, 좋아요 등의 활동이 즉시 반영된다.
- 날씨 앱: 사용자가 확인할 때마다 기상 정보가 실시간으로 갱신되어 최신 데이터를 제공한다.
- 온라인 게임: 게임 플레이 중 누적 점수와 랭킹이 즉시 업데이트된다.
3. 동시공용 (Concurrent Sharing)
데이터베이스는 다수의 사용자가 동시에 접근하고 데이터를 처리할 수 있는 동시성 제어 기능을 제공한다. 이로 인해 여러 사용자가 같은 데이터를 동시에 읽고 쓰더라도 일관성을 유지할 수 있다.
- ex)
- 은행: ATM 시스템에서 여러 사용자가 동시에 계좌 정보를 조회하거나 송금 작업을 수행할 수 있다.
- 공유 문서 서비스: 여러 사용자가 Google Docs나 Office 365에서 동시에 문서를 편집할 수 있다.
- 온라인 예약 시스템: 항공권 예약 시스템에서 다수의 사용자가 동시에 좌석을 선택해도 중복되지 않도록 관리한다.
4. 내용에 의한 참조 (Content Reference)
데이터베이스는 데이터를 참조할 때 물리적인 주소나 위치가 아닌 데이터 내용에 기반하여 검색한다. 사용자는 단순히 원하는 데이터를 질의(Query)로 요청하여 접근할 수 있다.
- ex)
- 이커머스 : "고객 이름이 "김지우"인 데이터를 검색"이라는 질의는 데이터의 실제 저장 위치가 아닌 내용으로 검색한다.
- 음악 스트리밍 서비스: 사용자가 "방탄소년단의 곡"이라고 검색하면, 아티스트 이름과 곡 제목의 내용으로 데이터를 참조하여 검색 결과를 제공한다.
- 도서 관리 시스템: 도서 제목이나 저자의 이름으로 검색하여 데이터베이스에서 해당 정보를 빠르게 가져온다.
'Database' 카테고리의 다른 글
클러스터링과 리플리케이션에 대하여 (2) | 2024.12.27 |
---|---|
RDBMS vs NoSQL (0) | 2024.12.26 |
정규화에 대해서 알아보자. (1) | 2024.12.24 |