Seung's Learning Record

[SQL] 관계형 데이터 베이스 본문

프로그래밍/SQL

[SQL] 관계형 데이터 베이스

70_0ewd 2024. 4. 24. 00:05
목차

     

    관계형 데이터베이스 (RDBMS) 개념

    관계형 데이터베이스는 데이터를 테이블 형식으로 저장하고 관리하는 데이터베이스 시스템이며, SQL 언어로 데이터를 조작할 수 있다.
    관계형 데이터베이스는 크게 프로덕션 데이터베이스와 데이터 웨어하우스로 종류를 나눠볼 수 있다.

    프로덕션 데이터베이스

    프로덕션 데이터베이스는 주로 실시간 트랜잭션 처리(OLTP, Online Transaction Processing)를 위해 설계된 데이터베이스이다. 이 데이터베이스는 업무 처리, 주문 처리, 고객 관리 등의 다양한 업무 프로세스를 지원하기 위해 사용되기 때문에 처리 속도에 집중된 데이터베이스이다. MySQL, PostgreSQL, Oracle 등 백엔드 개발자들이 다루는 데이터베이스가 이에 속한다.

    해당 데이터베이스는 주로 Star Schema 방식을 사용하여 데이터를 저장한다. Star schema는 중앙의 큰 테이블을 중심으로 여러 개의 차원 테이블로 둘러싸여 있는 구조이다. 데이터를 논리적 단위로 나눠 저장하고 필요시 조인만 하면 되기 때문에 스토리지의 낭비가 덜하고 업데이트가 쉽다는 장점이 있다.

     


    데이터 웨어하우스

    데이터 웨어하우스는 기업의 다양한 소스에서 추출한 데이터를 통합하여 저장하고, 분석 및 의사결정 지원(OLAP, OnLine Analytical Processing)을 위해 최적화된 구조로 변환된 데이터베이스이다. 데이터 웨어하우스는 모델 빌딩이나 데이터 분석을 위한 목적으로 사용되기 때문에 처리 용량에 집중된 데이터베이스이다. Redshift, Snowflake, BigQuery, Hive 등 데이터 엔지니어들이 다루는 데이터베이스가 이에 속한다.

    해당 데이터베이스는 주로 Denormalized Schema 방식을 사용하여 데이터를 저장한다. Denormalized Schema는 정규화 과정을 거치지 않고 하나의 큰 테이블에 모든 정보를 집중시키는 스키마 설계 방법dl다. 이는 스토리지를 더 사용하지만 조인이 필요없기에 빠른 계산이 가능하다.