Backend/Database

데이터베이스의 목적

땅지원 2022. 4. 15. 20:02

스프레드시트 vs 데이터베이스


공통점

- MySQL과 같이 관계형 데이터베이스의 중요한 특징은 스프레드시트와 마찬가지로 데이터를 표의 형태로 표현해준다는 것
- 공통점에 걸맞게 그 두 가지의 기능이 서로 거의 비슷함


차이점 

- 데이터베이스는 코딩을 통해서 컴퓨터 언어를 통해서 제어할 수 있음
- 데이터베이스는 마치 사람과 대화하는 것처럼 말을 거는 것

 


스프레드시트와 MySQL과 같은 관계형 데이터베이스의 아주 중요한 차이점

- 스프레드시트는 사용자가 클릭해서 데이터를 조작한다면 관계형 데이터베이스는 SQL이라고 하는 컴퓨터 언어를 이용해서 데이터를 제어할 수 있음


- 데이터베이스를 구축하면 이런 특성을 이용해서 데이터베이스에 저장된 데이터를 웹을 통해서 사람들에게 공유할 수도 있고, 앱을 통해서도 공유할 수도 있고, 데이터를 빅데이터나 인공지능을 이용해서 분석할 수 있음


`SELECT * FROM topic WHERE author = 'egoing';`
- `topic`이라는 테이블로부터 `author`라고 하는 열에 값이 `egoing`인 데이터만 선택해서 가져와서 출력
`SELECT * FROM topic WHERE author = 'egoing' ORDER BY id DESC;`
- 큰 숫자가 먼저 나오게 출력
- `DESC` : Descending

1. 데이터베이스를 내부적으로 일종의 중요한 부품으로 사용하는 수많은 사례 중에 하나, 웹사이트의 정보를 데이터베이스에 담을 때 이 두 가지의 기술을 결합하면 데이터베이스의 정보를 전 세계에 있는 누구나 이 웹사이트에 접속해서 볼 수 있게 할 수 있음


2. 누구나 글을 쓰면 우리가 직접 데이터베이스를 제어하도록 하지 않아도 사용자들이 이 사이트에 들어와서 글을 써서 저장할 수 있는데 그 정보는 결과적으로는 결국 데이터베이스에 저장되고 있음

 

 

관계형 데이터베이스(Realtional Database)의 필요성


데이터베이스에 중복된 데이터가 있다 => 개선의 여지가 있다!

데이터가 많이 중복될수록 많은 문제가 야기됨 :
복잡하고 용량이 큰 데이터가 중복될수록,
1. 기술적, 경제적으로 엄청난 손실
2. 데이터를 수정해야 할 때, 낭비되는 시간
3. 데이터의 구분이 어려움

# 테이블을 분리하지 않으면,
모든 데이터를 한 눈에 볼 수 있기 때문에 직관적으로 데이터를 볼 수 있다.

#테이블을 분리하면,
데이터를 볼 때, 해당 데이터에 해당되는 별도의 테이블을 열어서 비교.대조해야 하는 불편함

==> 저장은 분산, 볼 때에는 합쳐서