1. 개요
대량의, 컴퓨터로 구조화된 자료의 집합을 데이터베이스(Database)라고 한다. 공간자료가 아닌 자료의 경우 데이터베이스는 1960년대 이래 은행계좌 관리, 증권 모니터링, 입금관리, 주문처리, 항공예약시스템 등 다양한 목적에 이용되어 왔다. 이러한 시스템은 대부분 자료의 양이 방대하지만 데이터 그 자체는 간단하고 규칙적인 구조를 갖고 있다는 공통점을 보인다.
데이터베이스의 설치는 간단한 작업이라 볼 수 없다. 데이터베이스를 설계하려면 데이터베이스의 목적, 사용자 등에 대한 주의깊은 고려가 필요하다. 이후 사용가능한 자료원, 데이터베이스에 저장된 자료의 포맷 등을 파악한다. 이러한 포맷을 데이터베이스의 구조(Database structure)라 한다. 설계가 완료되면 데이터베이스에 자료를 입력한다. 자료를 최신의 상태로 유지하는 것은 데이터베이스 설계보다 더욱 중요한 작업이라 할 수 있다. 데이터베이스를 정기적으로 유지관리 하기위한 담당자를 별도로 지정하는 것이 좋으며 이러한 과정 중에서 모든 설계에 관한 결정을 문서화 하는 것 역시 중요하다. 이러한 문서는 데이터베이스가 사용되는 기간동안 중요한 역할을 담당한다.
데이터베이스 관리시스템(Database management system, DBMS)은 데이터를 설치하고 사용하며 유지관리하는데 이용되는 소프트웨어 패키지이다. DBMS는 데이터베이스의 조직 및 자료처리에 관한 일반적인 기능을 제공한다. 현재 사용되는 대부분의 PC에서는 Access라는 DBMS를 탑재하고 있는데 이 패키지는 상대적으로 크기가 작은 데이터베이스에만 사용할 수 있다.
2. DBMS의 사용
자료를 저장하고 처리하는데 DBMS를 사용해야 하는 이유에는 여러가지가 있다. 우선 DBMS는 매우 많은 양의 데이터를 저장하고 처리할 수 있다. 데이터의 종류에 따라서는 매우 양이 많아 텍스트 파일이나 스프레드시트로 저장하여 사용하기 어려울 수 있다. 그러한 경우 간단한 검색에 몇분씩 소요되거나 간단한 계산을 수행하는데 몇 시간이 소요되는 경우도 있을 수 있다. DBMS를 사용하면 어느 정도 자료의 정확성을 유지할 수 있다. 일례로 자료의 정확성 문제에서 중요한 것 중에 하나는 입력자료의 점검이다. 즉 자료를 데이터베이스에 입력할 때 명백히 오류가 있는 자료를 입력하지 못하도록 하는 기능이다. 사용자는 연구대상 지역의 영역을 알고 있으므로 위치좌표의 범위가 연구대상 지역 내에 위치하는지를 예상할 수 있고, 이러한 사실을 바탕으로 DBMS에서 점검을 수행하게 할 수 있다. 이는 가장 간단한 법칙의 예로 DBMS에서 정의하여 자동적으로 점검할 수 있도록 하는 무결성 제약조건이라 한다. 복잡한 일관성 조건을 부여할 수도 있으며 이러한 조건은 데이터베이스 개발 과정의 일부로 정의된다.
DBMS는 하나의 데이터베이스를 여러 사용자가 동시에 사용할 수 있다. 또한 사용자에 따라 하나의 데이터셋을 여러 형태로 보이도록 정의할 수 있다. 이러한 방법을 사용하면 각기 개인적인 데이터베이스를 처리하는 것 처럼 느낄 수도 있다. 이러한 기능을 가리켜 동시성 제어라고 한다. 대량의 데이터셋은 오랜 기간에 걸쳐서 제작된다. 데이터 설계과정부터 많은 조사를 필요로 하고 자료수집, 유지관리, 처리 등에 여러 사람의 관여를 거친다. 이러한 데이터셋은 전략적 가치가 높아지고 이러한 이유로 많은 조직에서 데이터베이스를 활용하고 있다.
DBMS는 고차원의 평상어 검색 언어를 지원한다. 컴퓨터 언어에서 가장 중요한 것은 검색을 정의하는 것이다. 검색(query)이란 검색에서 지정한 조건에 맞는 자료를 데이터베이스에서 추출하는 컴퓨터 프로그램이다.
DBMS는 자료 모델(data model)을 사용할 수 있다. 자료모델이란 데이터베이스 구조를 정의하고 저장된 자료를 처리할 수 있는 언어이다. 가장 널리 사용되고 있는 데이터 모델이 관계형 데이터 모델(Relational data model)이다. 관계형 자료모델의 기본요소는 속성 값을 가진 행(record)과 비슷한 행들의 집합인 테이블(relation)이다.
DBMS는 자료를 항상 사용 가능하도록 하기 위해 자료백업과 복구 기능을 제공한다. 많은 종류의 응용에서 자료가 항상 사용가능하도록 유지시키는 것은 매우 중요하다. 어떠한 재난에도 자료를 쉽게 복구할 수 있는 기능이 필요하다. 자료의 정기적인 백업과 자동 복구 기능을 활용하여 자료의 손실을 최소화할 수 있다.
DBMS를 사용하여 자료 중복을 방지할 수 있다. 잘 설계된 데이터베이스는 한 가지 사실을 오직 한번 저장한다. 한 가지의 사실을 여러번 저장하면 서로 모순되는 상황이 발생하여 자료의 유용성을 떨어뜨린다.
3. 자료관리의 대안
현 시점에서 데이터셋을 관리하기 위해 DBMS 이외의 다른 대안은 없을까? 이것은 자료의 양, 자료의 형태, 사용자의 수에 따라 달라질 수 있다. 데이터셋의 크기가 작고 단순한 용도이며 사용자가 한명인 소규모의 응용에 있어서는 간단한 텍스트 파일로도 충분하다. 개인 주소록 또는 간단한 현장조사 자료 등이 이러한 예가 될 수 있다.
데이터셋의 크기가 작고 주로 숫자로 구성되어 있으며 간단한 용도로 사용할 경우에는 스프레드시트 프로그램이 가장 좋다고 할 수 있다. 현장측량자료를 사용하여 통계분석을 수행해야 하는 경우가 그러한 예라 할 수 있다.
군 단위, 국가 단위의 센서스와 같이 조사장소나 조사자가 많고 매우 많은 조사가 필요한 경우에는 모든 종류의 자료를 효율적으로 처리할 수 있는 데이터베이스가 필수적이다. 스프레드시트는 다중 사용자 환경을 지원하지 않기 때문이다.
현재 텍스트 파일이나 스프레드시트에 보관되어 있는 자료가 많지만 용도에 따라 반드시 DBMS를 사용해야 하는 경우가 많다. 일반 텍스트 파일의 경우 정렬 되에 어떠한 자료분석 기능도 지원하지 않는다. 스프레드시트의 경우에는 어느 수준의 자료분석을 지원한다. 한개의 테이블로 구성되어 있을 경우 평균, 합, 최대, 최소 등 계산이 가능하다.