데이터베이스, 기본 개념

라용·2022년 9월 17일
0

위코드 - 스터디로그

목록 보기
46/100
post-custom-banner

위코드에서 공부하며 정리한 내용입니다.

데이터베이스

데이터베이스는 컴퓨터 시스템에 저장된 정보나 데이터를 모두 모아놓은 집합입니다. 데이터 모양은 대략 엑셀의 스프레드 시트와 비슷합니다. (모두 그렇진 않습니다.) 이런 데이터들은 보통 데이터베이스 관리시스템 (DBMS, Database Management System)으로 관리하고, 이런 관리시스템과 다른 어플리케이션등을 통틀어 데이터베이스 시스템이라고 부릅니다. (줄여서 데이터 베이스, DB 라고도 합니다.)

데이터베이스를 사용하는 이유

데이터를 오래 안전하게 보존하기 위해 데이터베이스를 사용합니다. 어플리케이션에서도 데이터를 임시로 저장할 수 있지만, 메모리는 데이터를 오래 보존하지 않습니다. 그리고 데이터베이스를 사용하면 데이터를 더 효율적으로 관리할 수 있습니다. 데이터베이스에는 데이터가 체계적으로 정리되어 입력되므로 내가 내가 원하는 정보를 쉽게 읽어낼 수 있습니다.

관계형 데이터베이스

관계형 데이터베이스 (RDBMS, Relational DataBase Management System)는 데이터 사이의 관계에 기초를 둔 데이터베이스 시스템을 말합니다. 보통 행(Column)과 열(Row)로 구성된 2차원 테이블로 표현할 수 있고, 각 Row 는 고유 키(Primary Key)를 가집니다. (스프레드 시트의 첫 컬럼의 id 숫자 값을 생각하면 편합니다.) 관계형 데이터베이스는 이런 테이블들이 서로 상호관련성을 가지고 연결되어 있습니다.

테이블 사이 관계의 종류

테이블 간 연결에는 3가지 종류가 있습니다. One to One One to Many Many to Many (일대일, 일대다, 다대다)

One To One - A, B 테이블이 있을 때, 하나의 A 데이터는 하나의 B 데이터와 연결되고, 하나의 B 데이터 또한 하나의 A 데이터와 연결됩니다. 1:1 매칭이므로 테이블 합칠 수 있습니다.
One To Many - 일대일과 다르게 한 테이블의 로우 하나에 다른 테이블의 로우 여러개가 연결될 수 있습니다. (한쪽 테이블에 중복되는 값이 존재)
Many to Many - 중복된 값을 가진 두 컬럼으로 이루어진 테이블이 있다면, 각 컬럼을 별도 테이블로 만들고, 중간 테이블을 만들어 각자의 id 값을 연결합니다. 이렇게 중간 테이블을 두고 연결된 것을 다대다랗고 합니다.

테이블을 연결하는 이유

하나의 테이블에 모든 정보를 넣으면 동일한 정보들이 중복 저장됩니다. 더 많은 디스크를 사용하고 잘못된 데이터가 저장될 가능성이 높습니다. 고객의 이름은 같은데 아이디가 서로 다른 로우들이 한 테이블에 있다면 해당 아이디의 이름을 찾기 어렵습니다. 이런 이유로 테이블을 나누어서 저장하고 이것을 정규화(normalization)라고 합니다.

profile
Today I Learned
post-custom-banner

0개의 댓글