기본 콘텐츠로 건너뛰기

방송대 방통대 컴퓨터의이해 7강 - 데이터베이스와 데이터 웨어하우스 - 요약 노트 시험족보 예상문제 - 올에이클래스

컴퓨터의이해 7강 - 데이터베이스와 데이터 웨어하우스

컴퓨터의이해 7강 - 데이터베이스와 데이터 웨어하우스

조직에서 발생하는 대량의 데이터를 효율적으로 저장하고 활용하기 위한 데이터베이스의 기본 원리를 학습한다. 파일 처리 방식의 한계에서 출발하여 DBMS의 역할과 기능, 데이터베이스 언어, 3단계 스키마, 데이터베이스 시스템의 장단점과 데이터 웨어하우스의 특징을 체계적으로 정리한다.

제1장 데이터베이스의 개념과 등장 배경

1. 조직 활동과 데이터

현대 사회의 거의 모든 활동에서는 많은 데이터가 발생한다. 항공 예약 업무에서는 예약자, 출발지, 목적지, 항공사, 탑승 시간, 도착 시간, 좌석 등의 데이터가 만들어진다. 상품 판매 과정에서는 상품 코드, 수량, 단가가 필요하며, 소셜 미디어 게시물에는 게시물 ID, 사용자 ID, 콘텐츠, 해시태그, 첨부 미디어, 게시 일시, 공개 범위 등이 포함된다. 이런 데이터는 서로 무관한 값의 모음이 아니라 특정 업무와 목적에 따라 논리적으로 연결되어 있다.

컴퓨터에서 파일은 보조기억장치에 저장된 데이터의 집합이다. 일반적인 파일은 보관 위치와 이름을 이용하여 접근한다. 데이터가 적고 한 프로그램만 이용할 때는 개별 파일로도 처리할 수 있지만, 조직의 규모가 커지고 여러 응용프로그램이 같은 데이터를 함께 사용하면 파일만으로 데이터를 관리하기 어려워진다.

2. 파일의 저장 구조

순차적 구조

순차적 구조는 레코드를 일정한 순서로 연속하여 저장한다. 앞에서부터 차례대로 데이터를 읽는 처리에는 적합하지만, 중간에 있는 특정 레코드를 찾으려면 그 위치에 도달할 때까지 앞의 레코드를 살펴봐야 할 수 있다. 전체 자료를 순서대로 처리하는 작업과 잘 맞는다.

상대적 구조와 직접 접근

상대적 구조는 키를 변환하여 얻은 상대주소를 이용해 레코드의 위치에 직접 접근한다. 예를 들어 직원 이름과 같은 키를 주소로 변환한 뒤 해당 주소에 있는 직원 레코드를 찾는다. 따라서 앞의 레코드를 모두 거치지 않고 원하는 위치로 이동할 수 있다.

인덱스된 구조

인덱스된 구조는 키와 레코드 위치를 연결하는 별도의 인덱스를 이용한다. 책의 색인이 주제와 페이지를 연결하듯, 인덱스에서 키를 찾은 다음 그 키가 가리키는 레코드에 접근한다.

파일 구조접근 방법핵심 특징
순차적 구조저장 순서대로 접근전체 자료를 차례대로 처리하기에 적합
상대적 구조키를 상대주소로 변환하여 직접 접근원하는 주소의 레코드에 바로 접근 가능
인덱스된 구조키와 위치를 연결한 인덱스를 이용인덱스 검색 후 실제 레코드에 접근

3. 개별 파일 처리의 문제점

과거에는 급여 프로그램이 급여 파일을 관리하고 인사 프로그램이 인사 파일을 관리하는 식으로 응용프로그램마다 별도의 파일을 두었다. 이 방식에서는 데이터의 구조와 접근 방법이 특정 프로그램에 종속된다. 파일 구조가 바뀌면 그 파일을 사용하는 프로그램도 함께 수정해야 한다.

또한 서로 다른 응용이 같은 데이터를 필요로 하면 데이터가 중복된다. 급여 파일과 인사 파일에 사번, 이름, 주민번호, 주소가 각각 저장될 수 있다. 중복은 저장공간을 낭비할 뿐 아니라 한 파일만 갱신될 경우 서로 다른 값이 존재하는 모순을 일으킨다.

파일 처리 방식의 핵심 한계

데이터의 프로그램 종속성과 데이터 중복이 핵심 문제다. 중복 데이터는 저장공간 낭비뿐 아니라 동일한 대상에 서로 다른 값이 기록되는 불일치로 이어질 수 있다.

4. 데이터베이스와 데이터베이스 시스템

데이터베이스는 어떤 조직이나 단체를 유지하고 관리하는 데 필수적인 관련 데이터의 집합이다. 하나 이상의 데이터가 논리적으로 연관되어 있으며, 데이터를 고도로 구조화하여 검색, 갱신, 관리를 효율적으로 수행할 수 있게 한다.

데이터베이스의 저장과 활용, 관리는 데이터베이스 관리 시스템(DBMS)을 통해 이루어진다. 특정 기관이 DBMS를 이용해 데이터를 데이터베이스로 구축하고, 이를 바탕으로 설계한 여러 응용프로그램을 통해 사용자에게 정보 서비스를 제공하는 전체 구성을 데이터베이스 시스템이라 한다. 이 과정에는 데이터를 이용하는 사용자와 데이터베이스의 운영·관리를 담당하는 데이터베이스 관리자(DBA)가 참여한다.

제2장 데이터베이스 관리 시스템

1. DBMS의 정의와 중재자 역할

데이터베이스 관리 시스템(DBMS)은 응용프로그램과 데이터 사이의 독립성을 유지하고 여러 사용자가 데이터를 공동으로 이용할 수 있도록 지원하는 소프트웨어 패키지다. 여러 응용에 필요한 개체의 데이터와 개체 사이의 상관관계를 통합적으로 관리한다.

DBMS는 응용프로그램과 데이터베이스 사이에서 중재자 역할을 한다. 사용자나 응용프로그램은 저장장치의 데이터를 제각기 직접 다루는 것이 아니라 DBMS를 통해 데이터베이스에 접근한다. 인사, 급여, 구매 업무가 각각 분리된 파일을 사용하는 대신 통합 데이터베이스를 공유하면 공통 데이터를 일관되게 관리할 수 있다.

2. DBMS가 제공하는 능력

DBMS는 데이터를 빠르게 저장하고 검색하며 갱신하는 기능을 제공한다. 데이터의 논리적인 모습과 실제 저장 방식을 분리하여 데이터 독립성을 유지하고, 여러 사용자가 데이터를 공유하면서 동시에 작업할 때도 정확한 결과가 유지되도록 실행을 제어한다.

또한 데이터를 빠르고 안전하게 저장하고 파손이 발생했을 때 회복할 수 있는 능력을 제공한다. 표준 질의언어, 질의처리 기능, 응용프로그램 개발환경을 제공하여 데이터 활용을 돕고, 권한이 없는 접근으로부터 데이터를 보호하는 보안 기능도 수행한다.

DBMS의 주요 역할: 빠른 저장·검색·갱신, 데이터 독립성, 데이터 공유, 동시실행 제어, 안전한 저장과 회복, 질의언어와 개발환경 제공, 데이터 보안으로 정리할 수 있다.

3. 데이터 정의 기능

데이터 정의 기능은 다양한 응용프로그램을 지원할 데이터베이스 구조를 정하는 기능이다. 모든 응용을 위한 데이터의 논리적 구조를 정의하고, 데이터베이스를 보조기억장치에 저장하기 위한 물리적 구조도 정의한다. 더불어 논리적 구조와 물리적 구조 사이의 대응 관계인 사상(mapping)을 정한다.

4. 데이터 조작 기능

데이터 조작 기능은 사용자의 요구에 따라 데이터베이스에 체계적으로 접근하고 데이터를 처리하는 기능이다. 사용자는 데이터 언어를 통해 검색, 갱신, 삽입, 삭제 등의 연산을 지시한다. 데이터 언어는 배우고 사용하기 쉬워야 하며, 표현이 명확하고 필요한 작업을 완전하게 나타낼 수 있어야 하고, 효율적으로 실행될 수 있어야 한다.

5. 데이터 제어 기능

데이터 제어 기능은 공동으로 사용하는 데이터베이스 내용의 정확성과 안전성을 유지한다. 데이터가 정해진 규칙과 제약조건을 만족하도록 무결성을 제어하고, 정당한 사용자에게만 작업을 허용하도록 권한을 검사하며 보안을 유지한다. 여러 사용자가 동시에 같은 데이터에 접근할 때 작업이 서로 방해하여 잘못된 결과를 만들지 않도록 병행제어도 수행한다.

기능주요 내용
데이터 정의논리적 구조, 물리적 구조, 두 구조 사이의 사상을 정의
데이터 조작검색, 삽입, 수정·갱신, 삭제 연산 지원
데이터 제어무결성, 권한 검사와 보안, 병행제어를 통해 정확성과 안전성 유지

6. 데이터베이스 언어

데이터 정의어

데이터 정의어(DDL, Data Definition Language)는 데이터베이스의 스키마를 생성, 변경, 삭제하는 데 사용하는 언어다. 스키마는 데이터베이스 구조와 제약조건에 대한 명세이므로, DDL은 데이터를 담을 전체 틀을 다루는 언어라고 볼 수 있다.

데이터 조작어

데이터 조작어(DML, Data Manipulation Language)는 DDL로 정의된 데이터베이스에 실제 데이터를 삽입하고 검색하며 수정하고 삭제하는 데 사용하는 언어다. 관계형 데이터베이스 관리 시스템(RDBMS)에서는 SQL(Structured Query Language)이 데이터베이스 언어로 사용된다.

DDL과 DML의 구분

DDL은 데이터베이스의 구조와 제약조건, 즉 그릇을 정의한다. DML은 그 구조 안에 저장된 실제 데이터를 조회하거나 변화시킨다.

제3장 데이터베이스 스키마

1. 스키마의 의미

스키마는 데이터베이스에서 데이터의 구조, 표현 방법, 제약조건 등을 정의한 것이다. 데이터베이스를 바라보는 관점은 사용자, 조직 전체, 물리적 저장장치에 따라 다르므로 하나의 데이터베이스도 여러 단계의 스키마로 설명한다.

2. 외부 스키마

외부 스키마는 개별 사용자나 응용프로그램의 입장에서 바라본 데이터베이스의 모습이다. 사용자마다 필요한 데이터와 업무가 다르므로 외부 스키마는 여러 개 존재할 수 있다. 각 사용자는 전체 데이터베이스를 모두 보는 대신 자신의 업무에 필요한 부분을 중심으로 본다.

3. 개념 스키마

개념 스키마는 조직 전체의 입장에서 데이터베이스의 논리적 구조를 통합하여 나타낸다. 여러 외부 스키마의 요구를 수용하며, 데이터 사이의 관계와 제약조건을 포함한 전체적인 논리 구조를 설명한다.

4. 내부 스키마

내부 스키마는 물리적 저장장치의 입장에서 데이터가 실제로 어떻게 저장되는지를 나타낸다. 저장 데이터베이스와 가장 가까운 단계로서 물리적 저장 구조와 접근 방식에 관련된다.

단계관점특징
외부 스키마개별 사용자·응용프로그램사용자별로 필요한 데이터의 모습이며 여러 개 존재 가능
개념 스키마조직 전체데이터베이스 전체의 통합된 논리 구조
내부 스키마물리적 저장장치데이터의 실제 저장 구조와 방법

3단계 스키마 구조

여러 외부 스키마가 하나의 개념 스키마와 연결되고, 개념 스키마는 내부 스키마를 거쳐 저장 데이터베이스와 연결된다. 관점을 분리하면 사용자 관점과 저장 방식 사이의 독립성을 높일 수 있다.

제4장 데이터베이스 시스템의 장점과 단점

1. 데이터 중복 최소화

통합 데이터베이스는 여러 응용프로그램이 공통 데이터를 함께 사용하게 하여 불필요한 중복을 최소화한다. 동일한 데이터를 여러 파일에 반복 저장하지 않으므로 저장공간이 절감되며, 서로 다른 복사본에 다른 값이 들어가는 문제를 줄여 데이터 일관성을 확보할 수 있다.

2. 데이터 독립성

데이터베이스 시스템은 논리적 데이터 독립성과 물리적 데이터 독립성을 보장한다. 논리적 데이터 독립성은 데이터베이스의 논리 구조가 일부 변경되어도 사용자 관점이나 응용프로그램에 미치는 영향을 줄이는 성질이다. 물리적 데이터 독립성은 저장장치나 물리적 저장 구조가 변경되어도 논리 구조와 응용프로그램이 영향을 적게 받도록 하는 성질이다.

3. 일관성·무결성·공유·표준화

중복을 줄이면 동일한 데이터가 서로 다르게 저장될 가능성이 낮아져 일관성이 높아진다. 데이터를 갱신할 때는 DBMS가 중앙에서 유효성을 검사하여 무결성을 유지한다. 또한 여러 응용의 요구를 수렴한 통합적 개념 스키마를 통해 조직 구성원이 데이터를 공유할 수 있다. 관계형 데이터베이스에서는 SQL을 이용해 사용자 인터페이스를 표준화할 수 있다.

4. 데이터베이스 시스템의 단점

데이터베이스 시스템을 도입하고 운영하려면 비용이 증가한다. 고가의 DBMS가 필요할 수 있고, 더 높은 CPU 성능과 큰 주기억장치가 요구된다. 여러 응용의 요구를 함께 고려하여 데이터 구조를 설계해야 하므로 처리 방법과 설계가 복잡하며, 고급 설계자와 프로그래머가 필요하다.

통합된 대규모 데이터를 안전하게 보존하려면 백업과 회복 절차도 복잡해진다. 많은 응용과 사용자가 하나의 데이터베이스 시스템에 의존하므로 시스템에 장애가 발생했을 때 영향 범위가 커지는 시스템 취약성도 고려해야 한다.

구분내용
장점중복 최소화, 저장공간 절감, 일관성과 무결성, 논리적·물리적 독립성, 공유, SQL 기반 인터페이스 표준화
단점운영비 증가, 처리·설계의 복잡성, 전문 인력 필요, 백업과 회복의 복잡성, 시스템 취약성

제5장 데이터 웨어하우스

1. 운영 데이터와 의사결정 데이터

일반적인 운영 데이터베이스는 현재 시점의 정확한 데이터를 저장한다. 현재 재직 중인 직원, 생산 중인 상품, 현재 재고와 매출 등이 그 예다. 그러나 조직의 데이터는 시간에 따라 계속 변한다. 경영과 정책에 필요한 의사결정을 내리려면 현재 상태만 확인하는 데서 그치지 않고 시간에 따른 변화와 경향을 분석해야 한다.

2. 데이터 웨어하우스의 정의

데이터 웨어하우스는 의사결정을 지원하기 위한 데이터의 집합체다. 마케팅, 판매, 회계 등 기업 운영 시스템의 여러 데이터베이스에서 데이터를 추출하고, 분석에 알맞은 일관된 형태로 변환하여 통합·저장한다. 이렇게 모은 데이터는 분기별·연도별 현황과 경향 같은 분석 보고서를 만드는 데 활용된다.

3. 데이터 웨어하우스의 네 가지 특징

첫째, 의사결정에 필요한 특정 주제를 중심으로 데이터를 구성한다. 둘째, 서로 다른 여러 데이터베이스의 데이터를 일관된 형태로 변환하여 통합한다. 셋째, 일·월·분기·연도 등 정해진 시점별로 변화한 정보를 저장하여 시간에 따른 추이를 분석할 수 있게 한다. 넷째, 저장된 분석 데이터는 일반적으로 갱신하지 않는 읽기 전용 데이터베이스로 활용한다.

특징설명
주제 중심의사결정에 필요한 특정 주제별로 구성
통합여러 원천 데이터베이스를 일관된 형태로 변환하여 결합
시계열정해진 시점별 변화 정보를 저장하여 추이 분석 지원
비갱신일반적인 업무 처리보다 분석을 위한 읽기 전용으로 사용

운영 데이터베이스와 데이터 웨어하우스

운영 데이터베이스가 현재 업무를 정확히 처리하는 데 초점을 둔다면, 데이터 웨어하우스는 여러 운영 시스템의 과거와 현재 데이터를 통합하여 변화의 경향을 분석하고 의사결정을 지원하는 데 초점을 둔다.

핵심 개념 정리

① 데이터베이스: 조직 운영에 필요한 논리적으로 연관된 데이터를 구조화한 집합이다.

② 파일 처리의 한계: 데이터가 프로그램에 종속되고, 응용별 파일에 같은 데이터가 중복되어 낭비와 모순이 발생한다.

③ DBMS: 응용프로그램과 데이터베이스 사이를 중재하며 정의·조작·제어 기능을 제공한다.

④ 데이터 언어: DDL은 스키마를 생성·변경·삭제하고, DML은 데이터를 삽입·검색·수정·삭제한다.

⑤ 스키마: 외부 스키마는 사용자, 개념 스키마는 조직 전체, 내부 스키마는 물리적 저장 관점을 나타낸다.

⑥ 장단점: 중복 최소화와 독립성·일관성·공유는 장점이며 비용, 복잡성, 회복 문제와 취약성은 단점이다.

⑦ 데이터 웨어하우스: 의사결정을 위해 여러 운영 데이터베이스의 데이터를 주제별·통합적·시계열적으로 저장한 비갱신 데이터베이스다.

최종 정리

데이터베이스 시스템의 목적은 데이터를 한곳에 모으는 데 그치지 않는다. DBMS를 통해 구조와 사용을 분리하고, 정확성과 안전성을 유지하며, 여러 사용자가 신뢰할 수 있는 데이터를 공동 활용하게 하는 것이 핵심이다.

예상문제 20선

1. 데이터베이스에 대한 설명으로 가장 적절한 것은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ①
데이터베이스는 조직의 활동에 필요한 관련 데이터를 논리적으로 연결하고 구조화하여 효율적으로 관리한 집합이다.

2. 키를 변환하여 얻은 상대주소로 원하는 레코드에 접근하는 파일 구조는?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ②
상대적 구조는 키를 상대주소로 변환하여 앞의 레코드를 순서대로 거치지 않고 해당 위치에 직접 접근한다.

3. 인덱스된 파일 구조의 특징은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ③
인덱스된 구조는 키를 인덱스에서 검색한 다음 인덱스가 가리키는 실제 레코드에 접근한다.

4. 개별 파일 처리 방식에서 같은 주소가 급여 파일과 인사 파일에 각각 저장될 때 발생하는 핵심 문제는?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ④
같은 데이터를 여러 파일에 저장하면 공간을 낭비하고 일부 파일만 갱신될 때 서로 다른 값이 남을 수 있다.

5. DBMS의 역할로 가장 적절한 것은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ①
사용자와 응용프로그램은 DBMS를 통해 데이터베이스에 접근하며, DBMS는 데이터의 독립성과 공용을 지원한다.

6. DBMS의 데이터 정의 기능에 포함되지 않는 것은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ②
특정 레코드를 검색하는 것은 데이터 조작 기능이다. 정의 기능은 데이터베이스의 논리·물리 구조와 그 사이의 사상을 정한다.

7. 데이터 조작 기능이 지원하는 연산의 조합으로 옳은 것은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ③
데이터 조작 기능은 데이터 언어를 통해 실제 데이터의 검색, 갱신, 삽입, 삭제를 지시한다.

8. 여러 사용자가 동시에 데이터에 접근해도 정확한 결과가 유지되도록 하는 기능은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ④
병행제어는 여러 사용자의 동시 접근이 서로 간섭하여 데이터 정확성을 훼손하지 않도록 제어한다.

9. 데이터 정의어(DDL)의 사용 목적으로 옳은 것은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ①
DDL은 데이터베이스 구조와 제약조건의 명세인 스키마를 생성하고 변경하거나 삭제하는 언어다.

10. DML에 대한 설명으로 옳은 것은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ②
DML은 DDL로 정의된 구조 안의 실제 데이터를 조회하거나 변화시키는 데 사용한다.

11. 개별 사용자나 응용프로그램의 관점에서 본 데이터베이스의 모습은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ③
외부 스키마는 사용자별로 필요한 데이터의 관점을 나타내므로 하나의 데이터베이스에 여러 개 존재할 수 있다.

12. 조직 전체의 통합된 논리적 데이터 구조를 나타내는 것은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ④
개념 스키마는 여러 사용자의 요구를 통합하여 조직 전체 데이터베이스의 논리 구조를 나타낸다.

13. 내부 스키마가 나타내는 관점은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ①
내부 스키마는 저장 데이터베이스와 가장 가까우며 데이터의 물리적 저장 구조와 접근 방법을 나타낸다.

14. 저장장치나 물리적 저장 구조가 바뀌어도 논리 구조와 응용프로그램의 영향을 줄이는 성질은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ②
물리적 데이터 독립성은 실제 저장 방식의 변경이 상위 논리 구조와 응용에 미치는 영향을 최소화한다.

15. 데이터 중복을 최소화하여 얻는 효과로 옳지 않은 것은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ③
중복 최소화는 동일 데이터의 모순을 줄이고 일관성을 높이므로 ③은 반대되는 설명이다.

16. 데이터베이스 시스템의 단점으로 가장 적절한 것은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ④
고가의 DBMS와 높은 사양이 필요할 수 있고 통합 구조 설계, 백업과 회복도 복잡해진다.

17. 데이터 웨어하우스의 주된 목적은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ①
데이터 웨어하우스는 여러 운영 데이터를 분석 가능한 형태로 모아 분기별·연도별 현황과 경향을 파악하도록 돕는다.

18. 여러 운영 데이터베이스의 서로 다른 표현을 일관된 형태로 바꾸어 결합한 데이터 웨어하우스의 특징은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ②
통합성은 서로 다른 원천의 데이터를 일관된 표현과 형식으로 변환하여 함께 저장하는 특징이다.

19. 일·월·분기·연도별로 변화한 정보를 저장하는 데이터 웨어하우스의 특징은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ③
시점별 변화 데이터를 보존하는 시계열성 덕분에 시간에 따른 추이와 경향을 분석할 수 있다.

20. 운영 데이터베이스와 데이터 웨어하우스의 비교로 옳은 것은?

정답입니다.

오답입니다. 답안을 다시 선택해 보세요.

정답 및 해설 보기

정답: ④
운영 데이터베이스는 현재의 정확한 업무 데이터를 처리하고, 데이터 웨어하우스는 여러 원천의 데이터를 누적해 분석하는 데 초점을 둔다.

댓글