본문 바로가기
전공수업/데이터베이스 [DB]

제 1장] 데이터베이스 기본 개념

by wonseok99 2019. 10. 4.

​​1] DB의 필요성!

데이터베이스에 대해 배우기 전, 데이터베이스의 필요성에 대해 이야기 해보자. 우리는 살아가며 개인적이거나 공적인 데이터를 기억하기 쉽게 관리 할 필요가 있다. 물론 학교나 기업같은 큰 조직에서는 더더욱이.

이러한 데이터들을 직관적이고 유용하게 관리해주는 시스템이 데이터베이스이다.

현실세계에서 관찰혹은 측정을 통해 얻은 사실이나 값은 데이터라 하며 이를 의사결정이나 유용하게 사용 가능하게 가공한 것을 데이터라고 한다. 이러한 데이터에서 정보를 추출하는 과정을 정보처리라고 하며 이를 도와주는 두 가지 시스템 계열이 있다.


1] OLTP [ Online Transaction Processing 온라인 트랜잭션 처리 ]

트랜잭션 지향 어플리케이션을 손쉽게 관리할 수 있도록 도와주는 정조 시스템의 한 계열, 일반적으로 데이터 기입 및 트렌잭션 처리를 위해 존재

출처] https://ko.m.wikipedia.org/wiki/온라인_트랜잭션_처리



2] OLAP [ Online Analytical Processing 온라인 분석 처리 ]

​ 의사결정 지원 시스템 가운데 대표적인 예로, 사용자가 동일한 데이터를 여러 기준을 이용하는 다양한 방식으로 바라보면서 다차원 데이터 분석을 할 수 있도록 도와준다.

​출처] https://ko.m.wikipedia.org/wiki/온라인_분석_처리


데이터베이스 트랜잭션은 데이터베이스 관리 시스템 또는 유사한 시스템에서 상호작용의 단위이다.


간단히 요약하자면 OLTP는 날것의 데이터를 관리하게 편하게 데이터의 기입 및 트랜잭션을 위한 시스템이며, OLAP는 사용자가 데이터를 목적에 따라 사용할 수 있도록 다양한 관점에서 데이터 분석을 돕는 시스템이다.



정보 기입 OLTP ——[ 정보처리 ]——> OLAP 분석



조직 운영에 필요한 데이터를 저장하여 필요할 때 처리하여 유용한 정보를 만들어주는 수단을 통틀어 ​정보 시스템​ 이라고 한다. ​​​또한 사용 목적에 따라 부르는 이름이 달라진다.
​Ex) 경영 관리에 필요한 의사 결정용 시스템 = 경영 정보 시스템








​​​2] DB의 정의와 특징!


일반적으로 DB는 특정 조직의 여러 사용자가 ​공유​하여 사용할 수 있도록 통합하여 운영하는 데이터 집합이라 한다.


​[DB의 정의]

​- 공유 데이터

DB는 여러 사용자가 함께 소유하고 이용할 수 있어야 하는 ​공용 데이터이다.



​- 통합 데이터

​DB는 데이터의 중복성을 허용하지 않는다. 데이터가 중복되면 관리에 어려움이 발생하기 때문이다. 하지만 중복을 의도적으로 허용하는 경우도 있으므로 중복을 최소화 하고
​통제가 가능한 중복만 허용하는 데이터 이다.



​- 저장 데이터

​DB의 데이터는 주로 컴퓨터가 처리하므로 컴퓨터가 접근할 수 있는 매체에 저장해야한다




​- 운영 데이터

​DB는 주요 기능을 수행해야 하므로 지속적으로 유지할 수 있어야 한다.





​[DB의 특징]


​- 실시간 접근성

DB는 사용자의 데이터요구에 ​실시간으로 응답할 수 있어야 한다. 몇 초룰 넘지 않는 빠른 시간 내에 데이터를 제공할 수 있어야 한다.



​- 지속적인 변화

​DB는 현실 세계의 유동적인 데이터를 정확히 반영해야 한다. 그러므로 데이터도 계속 변해야 한다.


C.R.U.D = Create. Read. Update. Delete [ 생성. 읽기. 수정. 삭제]



​- 동시 공유 가능


​단순히 여러 사용자가 공유하는 개념이 단순히 시간 차를 두고 같은 데이터 영역을 사용하는게 아닌, 같은 데이터를 동시에 사용할 수 있도록 지원해준다. 하지만 동시 공유를 지원하고 조직하며 관리하기는 쉽지않다.



​- 내용으로 참조가 가능

DB는 저장된 주소나 위치가 아닌 ​내용, 즉 값으로 참조할 수 있다. 일반적으로 주소를 참조하는 컴퓨터의 검색 방식과는 달리 구체적인 조건을 제시하면 조건에 맞는 데이터를 모두 검색할 수 있다.




3] 데이터와 데이터베이스


​ DB의 가장 중요한 목적은 데이터를 한곳에 모아두는것이다. 나에게 필요한 데이터를 수집하기 위해서는 데이터의 유형을 파악할 줄 알아야 한다.

일반적으로 데이터는 ​정형 데이터, 반정형 데이터, 비정형 데이터로 분류할 수 있다.



​- 정형 데이터

정형 데이터란 구조화된 데이터를 말한다. 미리 정해진 행과 열에 의해 지정된 각 칸에 데이터를 저장하는 방식이다. 데이터 구조에 대한 설명과 내용은 별도로 저장한다.



​- 반정형 데이터

​반정형 데이터란 정형 데이터와는 다르게 내용안에
​구조에 대한 설명이 함께 존재한다. 그래서 데이터에 대한 설명, 구조를 파악하는 ​파싱 과정이 필요하다. 대표적으로 웹에서 데이터를 교환하기 위해 작성라는 ​HTML, XML, JSON문서나 웹 데이터가 이에 해당한다.

​Ex]

<친구정보>
​<이름> 이원석 </이름>
​<나이> 23 </나이>
​<성별> 남 </성별>
​</친구정보>


​-비정형 데이터

비정형 데이터란 정해진 구조가 없는 데이터이다. SNS에서 기록되는 텍스트. 영상. 이미지. 워드 등 같은 멀티미디어 데이터가 대표적인 예다. 최근에 스마트폰의 활성화오 SNS 사용자가 떡상하며 생성되는 비정형 데이터의 양 또한 폭발적으로 늘었으며 차세대에 큰 잠재력을 가진 데이터로 사용될 것으로 생각한다.
​​​​