바로 이동

관계형 데이터베이스란 무엇인가요?

관계형 데이터베이스는 데이터가 하나 이상의 열과 행의 테이블(또는 '관계')에 저장되어 서로 다른 데이터 구조가 어떻게 관련되어 있는지 쉽게 파악하고 이해할 수 있도록 사전 정의된 관계로 데이터를 구성하는 정보 모음입니다. 관계는 이러한 테이블 간의 상호작용을 기반으로 설정되는 여러 테이블 간의 논리적 연결입니다.

Google Cloud의 관계형 데이터베이스인 Cloud SQL, Cloud Spanner, PostgreSQL용 AlloyDB가 운영 비용을 절감하고 혁신적인 애플리케이션을 구축하는 데 어떻게 도움이 되는지 알아보세요.

시작할 준비가 되셨나요? 10GB 스토리지를 포함한 90일 Cloud Spanner 무료 체험판 인스턴스를 무료로 만드세요.

관계형 데이터베이스 정의

관계형 데이터베이스(RDB)는 테이블, 행, 열의 정보를 구조화하는 방식입니다. RDB에는 테이블을 조인하여 정보 간 관계 또는 링크를 설정할 수 있는 기능이 있어, 여러 데이터 포인트 간의 관계를 쉽게 이해하고 정보를 얻을 수 있습니다. 

관계형 데이터베이스 모델

1970년대 IBM의 EF Codd가 개발한 관계형 데이터베이스 모델을 사용하면 모든 테이블을 공통 속성을 사용해 다른 테이블과 연관시킬 수 있습니다. Codd는 계층 구조를 사용하여 데이터를 정리하는 대신 데이터가 포함된 테이블을 재구성하지 않고 테이블에 데이터가 저장, 액세스 및 연결되는 데이터 모델을 사용하는 것으로 전환할 것을 제안했습니다.

관계형 데이터베이스는 비즈니스에서 데이터를 구성, 관리, 연결하는 데 도움이 되는 스프레드시트 파일 모음이라고 생각하면 됩니다. 관계형 데이터베이스 모델에서 각 '스프레드시트'는 열(속성)과 행(레코드 또는 튜플)으로 대표되는 정보를 저장하는 테이블입니다.

속성(열)은 데이터 유형을 지정하며 각 레코드(또는 행)는 구체적인 데이터 유형의 값을 포함합니다. 관계형 데이터베이스의 모든 테이블에는 행에서 고유하게 식별 가능한 기본 키라는 속성이 있으며, 외래 키(다른 기존 테이블의 기본 키를 참조)를 사용하여 각 행에서 서로 다른 테이블 간의 관계를 만드는 데 사용할 수 있습니다.

이제 관계형 데이터베이스 모델의 실제 작동 방식을 살펴보겠습니다.

고객 테이블과 주문 테이블이 있다고 가정해 보겠습니다.

관계형 데이터베이스를 사용하면 관련 데이터 간에 논리적 연결을 만들 수 있습니다.

고객 테이블에는 고객에 관한 데이터가 포함됩니다.

  • 고객 ID(기본 키)
  • 고객 이름
  • 청구서 수신 주소
  • 배송지 주소

고객 테이블에서 고객 ID는 고객이 관계형 데이터베이스에서 고유하게 식별되는 기본 키입니다. 동일한 고객 ID를 가지는 다른 고객은 없습니다.

주문 테이블에는 주문에 관한 거래 정보가 포함됩니다.

  • 주문 ID(기본 키)
  • 고객 ID(외래 키)
  • 주문 날짜
  • 배송일
  • 주문 상태

여기에서 특정 주문을 식별하는 기본 키는 주문 ID입니다. 외래 키를 사용하여 고객 테이블의 고객 ID를 연결하여 고객을 주문과 연결할 수 있습니다.

이제 두 테이블이 공유된 고객 ID를 기반으로 합니다. 즉, 두 테이블을 쿼리하여 공식 보고서를 만들거나 다른 애플리케이션에 데이터를 사용할 수 있습니다. 예를 들어 소매 지점 관리자는 특정 날짜에 구매한 모든 고객에 관한 보고서를 생성하거나 지난 달에 배송일이 지연된 주문을 받은 고객을 파악할 수 있습니다.

위의 설명은 간단하지만, 관계형 데이터베이스는 데이터 간의 매우 복잡한 관계를 보여주는 데에도 탁월하기 때문에 데이터가 데이터베이스의 사전 정의된 관계형 스키마를 준수하는 한 더 많은 테이블의 데이터를 참조할 수 있습니다.

데이터가 사전 정의된 관계로 구성되므로 데이터를 선언적으로 쿼리할 수 있습니다. 선언적 쿼리는 시스템이 결과를 어떻게 연산해야 하는지 표현하지 않고 시스템에서 추출할 내용을 정의하는 방법입니다. 이는 다른 시스템과 달리 관계형 시스템의 핵심입니다.

관계형 데이터베이스의 예

이제 관계형 데이터베이스의 작동 방식을 이해했으므로 관계형 데이터베이스 모델을 사용하는 여러 관계형 데이터베이스 관리 시스템에 대해 알아볼 수 있습니다. 관계형 데이터베이스 관리 시스템(RDBMS)은 관계형 데이터베이스를 만들고 업데이트하고 관리하는 데 사용하는 프로그램입니다. 잘 알려진 RDBMS의 예로는 MySQL, PostgreSQL, MariaDB, Microsoft SQL Server, Oracle Database가 있습니다.

Cloud SQL, Cloud Spanner, AlloyDB와 같은 클라우드 기반 관계형 데이터베이스는 데이터베이스 유지보수, 패치, 용량 관리, 프로비저닝, 인프라 지원을 위한 관리형 서비스를 제공하기 때문에 점점 더 많은 인기를 얻고 있습니다.

시작할 준비가 되셨나요? 10GB 스토리지를 포함한 90일 Cloud Spanner 무료 체험판 인스턴스를 무료로 만드세요.

관계형 데이터베이스의 이점

관계형 데이터베이스 모델의 주요 이점은 직관적인 데이터 표현 방법을 제공하고 관련 데이터 포인트에 쉽게 액세스할 수 있다는 점입니다. 그래서 관계형 데이터베이스는 인벤토리 추적부터 트랜잭션 데이터 처리 및 애플리케이션 로깅에 이르기까지 대량의 구조화된 데이터를 관리해야 하는 조직에서 가장 많이 사용합니다.

관계형 데이터베이스를 사용하면 데이터를 관리하고 저장할 때 다음과 같은 여러 가지 장점이 있습니다.

유연성

전체 데이터베이스 구조를 변경하거나 기존 애플리케이션에 영향을 주지 않고 필요할 때마다 간편하게 테이블, 관계를 추가 또는 삭제하고 데이터를 변경할 수 있습니다.

ACID 규정 준수

관계형 데이터베이스는 ACID(원자성, 일관성, 격리, 내구성) 성능을 지원하므로 오류, 실패, 기타 잠재적 오작동에 관계없이 데이터 유효성을 검사할 수 있습니다.

사용 편의성

기술자가 아닌 사용자도 데이터베이스와 상호작용하는 방법을 배울 수 있는 SQL을 사용하여 복잡한 쿼리를 쉽게 실행할 수 있습니다.

공동작업

여러 사용자가 동시에 데이터를 운영하고 액세스할 수 있습니다. 기본 제공되는 잠금 기능으로 업데이트 도중 데이터에 동시 액세스할 수 없습니다. 

내장된 보안 기능

역할 기반 보안을 통해 데이터 액세스가 특정 사용자로 제한됩니다.

데이터베이스 정규화

관계형 데이터베이스는 데이터 중복성을 줄이고 데이터 무결성을 개선하는 정규화라는 설계 기법을 사용합니다. 

관계형 및 비관계형 데이터베이스

관계형 및 비관계형 데이터베이스(NoSQL 데이터베이스)의 주요 차이점은 데이터를 저장하고 구성하는 방법입니다. 비관계형 데이터베이스는 규칙 기반의 테이블 형식 방식으로 데이터를 저장하지 않습니다. 대신 데이터를 연결되지 않은 개별 파일로 저장하며, 문서 또는 리치 미디어 파일과 같은 복잡하고 구조화되지 않은 데이터 유형에 사용할 수 있습니다.

관계형 데이터베이스와 달리 NoSQL 데이터베이스는 유연한 데이터 모델을 따르므로 자주 변경되는 데이터를 저장하거나 다양한 유형의 데이터를 처리하는 애플리케이션에 적합합니다.

Google Cloud로 비즈니스 문제 해결

10GB 스토리지를 포함한 90일 Cloud Spanner 무료 체험판 인스턴스를 무료로 만드세요.
시작하기
Google Cloud 영업 전문가에게 고유한 문제에 대해 자세히 논의해 보세요.
문의하기

Google Cloud는 온프레미스 데이터 센터 사용 중단, SaaS 애플리케이션 실행, 핵심 비즈니스 시스템 마이그레이션에 이르기까지 비즈니스 요구사항에 맞게 구축된 다양한 완전 관리형 관계형 데이터베이스 서비스를 제공합니다.

관계형 데이터베이스 제품을 사용하면 예전보다 더 다양한 워크로드를 클라우드로 이전할 수 있습니다. 개발자가 유연성과 자유를 누리면서 가능한 한 최고의 앱을 빌드하는 데 더 많은 시간을 투자할 수 있습니다.