데이터 관리가 필요한 이유는 무엇일까? 많은 양의 데이터가 저장된 데이터 관리장치에 필요한 데이터를 검색하여서 사용하기 위해서는 저장과 관리 그리고 신속히 검색할 수 있도록 보조하는 장치가 필요한 것이다.
이러한 데이터 관리의 역사는 어떻게 될까?
1946년 컴퓨터가 개발되고 1956년 저장장치가 도입된 이후 1960년 초 파일처리시스템이 사용되기 시작하였다. 이후 1970년대 IBM사의 SQL을 시작으로 80년대 데이터웨어하우스, 90년대 웹의 등장으로 데이터가 폭증하여 2000년 중반 클라우드 컴퓨팅과 빅데이터 분석, 2015년 IoT와 AI가 등장했습니다. 과거의 특정 애플리케이션은 데이터를 저장하는 서버에서 입출력을 해왔는데요 하지만 업무별 애플리케이션이 개별데이터파일을 저장 관리하는 시스템인데요. 여기서 문제점이 나타나게 되는데요.
데이터 종속의 문제
저장된 데이터가 특정한 하드웨어와 사용자나 소프트웨어에서만 사용될 수 있도록 제한된다. 쉽게 데이터공간이 더필요하다면 신규 서버를 사용하기 위해서는 애플리케이션을 항상 수정해야 한다는 어려움이 있다. 이를 물리적 데이터 종속이라고 한다.
또한 데이터의 논리적인 구조(사번, 이름등)가 변경되면 바로 사용할 수 없다. 애플리케이션을 수정해야만 한다. 이를 논리적 데이터 종속이라고 한다.
그리고 동일한 사항에 대한 중복인 데이터는 일관성, 보안성, 경제성 측면에서 문제가 발생된다. 예를 들어 서로 다른 애플리케이션에서 같은 논리에 해당하는 사번이나 이름등이 하나의 애플리케이션에서 변경된다면 서로 개별로 취급하기 때문에 모든 애플리케이션에서 수정을 해야 하는 문제가 많아진다. 이는 일관성, 보안성, 경제성의 문제를 일으킨다. 이를 데이터 중복의 문제라고 한다.
일관성 : 어떤 데이터의 한 개의 데이터 값을 유지
보안성 : 같은 데이터에 대한 같은 수준의 보안을 유지
경제성 : 데이터에 대한 최소한의 저장 공간 만을 점유
신계에서 데이터가 가질 수 있는 가능한 범위를 포함하는 것으로 사람이름이 글로 되어있고 대체로 몇 글자이내라는 제약조건이 있는데 이러한 것을 데이터의 무결성이라고 하고 무결성훼손의 문제가 있다. 이러한 파일시스템은 이러한 무결성을 보장하는 시스템이 없다.
그리고 동시에 서버에 사용자가 접속한다면 데이터의 무결성 일관성이 훼손이 될 수 있다. 파일시스템은 이러한 동시접근을 허용하여 일관싱이 훼손되는 동시접근 문제가 있다.
이러한 파일시스템에 문제를 해결한 것이 데이터베이스인데요.
기존에 파일시스템은 애플리케이션과 저장장소에서의 관계가 둘 사이에 직접적으로 연결되어 사용되어 왔다면 이사이에 데이터베이스가 모든 일을 일임받아서 실제로 데이터에 접근이 가능한 거는 데이터베이스가 하는 것이다.
이러한 데이터 베이스들은 몇 가지 특징이 있습니다.
- 데이터 베이스 시스템의 자기 기술성
데이터와 데이터의 정의와 설명을 포함한다. - 프로그램과 데이터 격리와 추상화
사용자에게 데이터에 대한 개념적인 표현을 제공하여 접근성을 높인다. - 다중 뷰
각 사용자가 관심 있는 데이터베이스의 일부만 표현할 수 있다. - 데이터 공유와 다수 사용자 트랜잭션 처리
다수 데이터 조작 요청을 동시성 제어 기능을 통해 일관성을 보장하며 작업수
10이라는 숫자가 있다고 해보자.
가만히 10이라는 숫자는 데이터가 아니다. 여기서는 값이고 이 10이라는 숫자에 날짜, 그리고 최저기온이라는 두 개이상의 설명 태그가 붙는 것을 데이터라고 하고 날짜와 최저기온을 메타 데이터라고 한다.
이러한 DBMS는 3단계 구조를 가지고 있는데요.
그리고 위에서 다수 사용자에 대한 트랜잭션처리에 대해서 말했습니다.
사용자 A와 B가 있다고 생각해 보겠습니다. A가 데이터베이스에 하나의 작업을 처리하는 동안에는 B의 접근을 금지하는 것으로 하나의 작업을 처리하기 위한 일련의 데이터베이스 명령의 집합이고 이를 트랜잭션(transaction)이고 이 역할을 데이터베이스가 한다.
데이터와 관련된 용어정리
- 데이터 - 어떤 사실을 정량적 특징을 나타낼 수 있는 값
- 데이터 베이스 : 특정 기관의 애플리케이션 시스템에서 사용되는 데이터들의 집합을 말한다.
- 데이터베이스 관리 시스템 DBMS : 데이터 베이스에 저장되어 있는 데이터들의 구성, 저장관리등을 위한 소프트웨어 패키지
- 데이터 베이스 시스템 : 정보를 데이터 베이스에 관리하며 사용자로부터 요구된 형태의 정보로 바꾸어 제공하는 컴퓨터 시스템
구성요소
데이터베이스 언어
DBMS는 사용자가 쉽게 사용하고 다룰 수 있도록 언어형태로 인터페이스를 제공하며 역할에 따라서 1. 데이터정의 언어 DDL(데이터베이스 객체를 생성, 수정, 삭제하기 위한 언어) 2. 데이터 조작언어 DML(사용자가 접근 및 조작할 수 있도록 지원)이 있다. 현대에 와서는 자연어와 유사한 SQL로 표준화되었다.
시스템 아키텍처
중앙 집중방식 - 하나의 단일 서버가 다수의 클라이언트 장치를 작동한다 가격은 저렴해지지만 과부하로 전체적인 성능은 저하되는 특징 있다.
분산 시스템 방식 - 클라이언트 장치의 성능이 향상되어 자체적으로 처리능력을 보유한다. 따라서 중앙서버는 데이터베이스 시스템만 갖게 되어 프로그램 부하의 분산과 유지비용 절감과 이식성의 증가한다.
'척척학사 > 데이터베이스' 카테고리의 다른 글
컴퓨터 데이터 단위 (1) | 2023.12.11 |
---|