데이터베이스와 빅데이터에 대한 나름대로의 고찰
파일시스템의 단점
1. 파일 시스템에 있는 데이터를 읽고 메모리에 올리는 부분이 컴퓨터의 연산 과정 중에 제일 느리다. 왜냐하면 파일시스템은 목차가 없는 책처럼 원하는 정보에 대한 위치를 모르기 때문에 처음부터 끝까지 찾아야한다.
2. 동시성 제어라는 문제가 있다. 어떤 두 사람이 같은 데이터를 사용할 경우 발생하는 문제를 말한다.
3. 보안 문제. 파일에 데이터를 저장해 놓으면 파일에 접근할 수 있는 사람은 누구나 데이터를 볼 수 있으며 악의적인 사용자라면 남용할 수 있다.
데이터베이스
데이터 베이스는 위와 같은 파일시스템의 단점들을 보완하고 편의성을 높이기 위해 고안해낸 것이다. 그리고 데이터베이스를 도서관으로 비유하자면 , 도서관의 구성요소는 책, 책꽂이, 도서 관리 시스템이라 할 수 있다.
책은 데이터라 할 수있고
책꽂이는 테이블이라 할 수 있으며
도서 관리 시스템은 데이터 베이스의 종류 중 하나 일 것이다.
테이블 & 기본키
테이블은 데이터를 잘 정리해 나열해 놓은 곳이라 할 수 있다. 우리가 사용하는 표처럼 열(column)과 행(row)로 구성되어 있다.
각 데이터은 기본키를 가져야한다는 기본 규칙을 따라야한다. 기본키는 테이블에서 각각의 데이터를 유일하게 구분하는 키라고 한다. 책으로 예를 들자며 도서관에서 그 책만이 가지는 식별값을 가져야한다는 것이다. 식별값 중에 ISBN을 예로 들 수 있겠다.
정규화
정규화란 의미 있는 데이터끼리 하나의 테이블에 속하게끔 테이블을 분리하여 정리하는 것이다.
3개 이상의 규칙이 있지만 보통 3번째까지만 정규화를 한다.
(http://wiki.gurubee.net/pages/viewpage.action?pageId=1507663)
정규화의 기본 원칙은 한 테이블에 중복된 데이터를 없애는 것이다.
제 1 정규화
제 2 정규화
제 3 정규화
빅데이터
빅데이터는 옛날에 내가 게시했던 데이터 사이언스와 유사한 것 같다. 빅데이터 분석이 주를 이루고 있으며 RDBMS 구조를 가진 데이터 베이스보다는 NoSQL을 선호한다.
빅데이터를 분석의 예를 들자면 미국이 겨울이 되면 감기가 시작되고 어느 주에서 어느 주로 감기가 이동하는지 제일 빨리 아는 곳은 어디일까? 정답은 구글이다.
구글은 빅데이터 분석으로 미국 보건복지부보다 더 정확히 알고 있다.
잘 알려진 빅데이터의 속성 4V는 Volume , Variety , Velocity , Value 이다.
자세한 설명은 생략한다.
위와 같은 속성들을 데이터 베이스에 저장하기엔 RDBMS 구조는 적정하지 않았다. 왜냐하면 Variety 속성을 만족시키지 못했다. RDBMS 에서는 예를 들어 성별이면 남과 녀 중에 하나 문자열을 써야 했지만 빅데이터는 Variety 를 추구해 이미지나 동영상이나 문장을 저장하게 해야했기 때문이다.
(http://develop.sunshiny.co.kr/883)
Reference
책 - 개발자가 되고 싶으세요?
http://develop.sunshiny.co.kr/883
http://wiki.gurubee.net/pages/viewpage.action?pageId=1507663
댓글
댓글 쓰기