데이터베이스 관리 시스템 - 데이터 관련 요구 사항 파악에서 DBMS의 설계와 응용까지
조민호 지음 / 정보문화사 / 2024년 5월
평점 :
장바구니담기


관계형 데이터베이스 관리 시스템 을 알아보자





책을 선택한 이유


데이터베이스 는 여러 사람에 의해 공유되어 사용될 목적으로

통합하여 관리되는 데이터의 집합을 말한다.


관계형 데이터베이스 관리 시스템 의 구조를 알아보기 위해

"데이터베이스 관리 시스템"을 선택한다.




"데이터베이스 관리 시스템"은


1장 데이터베이스 관리 시스템에 관한 개념 정리

2장 데이터베이스 관리 시스템의 설계

3장 SQL을 이용한 관계 데이터베이스 관리 시스템의 사용

4장 사용자가 제작한 프로그램에서 RDBMS를 다루는 방법

5장 관계형 데이터베이스 관리 시스템의 성능 향상 기법


으로 구성되었다.




1장 데이터베이스 관리 시스템에 관한 개념 정리 에서는


컴퓨터에 프로그램 저장 방식이 사용되면서

여러 가지 기능을 수행하는 유니버설 머신 으로 주목받는다.


데이터베이스 관리 시스템 DBMS를 사용하기 위한

과정과 절차 및 운영 과정을 체계적으로 정리한 것이

정보공학 방법론이다.


XP 또는 애자일 방법론은 구조적 방법론이나 정보공학 방법론이

가지는 과도한 문서 작업이나 절차를 간소화하고,

개발에 집중하자는 취지에서 개발된다.


데이터베이스 는 파일의 크기와 숫자가 늘어난 데이터 며,

데이터 관리 시스템 DBMS는 데이터베이스를 관리하기 위한

프로그램 이다.


데이터 웨어하우스, 데이터 마트, 데이터 레이크,

DBMS 개발 역사를 살펴본다.


파일 시스템 의 도입으로 자료 관리 기능과 프로그램 이 분리되어

독립적으로 제공되면서 데이터 관리 프로그램이 제작하기 쉬워진다.


DBMS 는 파일 시스템 의 단점을 극복하고, 다수의 사용자가

더 많은 파일 정보를 공유, 활용하는 환경으로 개발된다.


데이터베이스 는 DBMS가 담당하는 파일의 모임이다.


관계형 데이터베이스 모델, 관계형 DMBS는

테이블과 관계로만 구성되며,


다양한 데이터 관리가 가능하고, 복잡한 조건에 맞는

데이터 처리가 가능한 모델이다.


데이터베이스 관리 시스템을 활용한 데이터 처리 모델을 살펴본다.



관계형 데이터베이스 관리 시스템 RDBMS는

사용자에게 행과 열로 구성된 테이블 형태처럼

저장된 자료를 보여주는 DBMS다.


RDBMS는 테이블 형태로 사용자에게 데이터의 모습을 보여준다.


RDBMS는 테이블과 테이블의 연간 관계로 구성된다.

RDMBS는 관계형 대수를 통해 데이터를 검색, 수정, 삭제 한다.



RDMBS는 데이터를 테이블 형태로 보여주도록 설계되고,

표준화된 조작 방법으로 확장된다.



정보공학 방법론의 기본 개념은 기업의 모든 업무와

컴퓨터를 통합하는 것이다.


정보공학 방법론의 구축 과정의 핵심은 ISP와 BAA 부분의

진행을 위한 상세한 단계와 절차를 규정한다.


몽고 데이터베이스 는 NoSQL에 속하는 DBMS로

문서 지향 데이터베이스다.




2장 데이터베이스 관리 시스템의 설계 에서는


모델링 은 고객이 원하는 프로그램을 개발하기 위해

필요한 정보를 얻기 위한 모델을 만드는 과정이다.


개념 모델링, 논리 모델링, 물리 모델링 등

추상화 단계에 따른 모델링 분류,


PDM은 프로젝트 영역만을 대상으로 하는 데이터 모델이며,

CDM, EDM은 전체 회사를 대상으로 하는 데이터 모델이다.


PDM은 CDM을 염두에 두고 수행해야 하며,

CDM을 CRUD 분석한 후 PDM이 되는 경우가 많다.


프로세스 모델링 은 개발해야 하는 정보 시스템이

수행되는 순서를 중심으로 모델링 하는 방법이다.


구조적 프로그래밍 은 함수를 이용한 프로그램 제작기법이다.


프로세스 모델링 은 구조적 프로그램 제작을 위한

사전 단계에서 제작하는 것이다.


프로세스 모델링 은 DFD, DD, Minispec으로 구성된다.


구조적 분석이 정상적으로 이루어지면,

RDBMS 개체 속성도 어느 정도 정리된다.



데이터 모델링 은 정보 시스템에서 필요로 하는 데이터를 찾거나

조직화하여 문서로 만드는 기술이다.


논리적 데이터 모델링 은 데이터에 대한 정보를 논리적으로 정리하며,

물리적 데이터 모델링 은 논리적 데이터 모델링의 결과를 기반으로

DBMS에 생성하는 단계다.


E-R 모델링은 RDBMS를 사용하는 환경에서

개체, 관계, 속성을 사용해서 데이터를 조직화하는 방법이다.


RDBMS를 사용하는 경우, 데이터 모델링은 개체, 속성, 관계라는

3가지 요소로 구성된다.


데이터 모델링 을 위한 IDEF1X, Peter Chen, IE 표기법을 설명한다.


데이터 모델링 은 DBMS 구축의 첫 번째 작업이다.




개체는 관계 있는 데이터를 묶어주는 최소 단위며,

속성은 개체를 구성하는 데이터 다.


개체는 연관 있는 속성을 묶어 놓은 것이다.

개체 모델링 은 개체 와 속성으로 이루어진다.



RDBMS에서 데이터를 다루기 위한 단위는 개체와 속성이다.


데이터가 둘 이상의 개체에 흩어져 있다면

둘 이상의 개체를 관계에 맺어주어야 한다.


관계 모델링 은 사용자가 알고 싶어 하는 데이터가

여러 개체에 흩어져 있을 때 한다.


1:N 관계를 갖는 테이블 간 데이터를 추가할 때,

개발자가 외부 키 값을 추가로 입력해 주어야 하므로,

RDBMS에서 트랜잭션이 필요하다.



백화점 운영 시스템 개발 상황을 통해

E-R 모델링 제작을 단계별로 알아본다.



E-R 모델링 결과를 RDBMS에서 테이블 형태로 구성해 본다.


E-R 모델링 에서 가장 중요한 것은 다른 사람이

제작한 모델을 읽을 줄 아는 것이다.



정규화는 E-R 모델링 에서 개체를 구성할 때

중복되거나 애매한 데이터를 제거하고,

정보의 무결성을 높이고자 개발된 기법이다.


정규화는 데이터 모델링을 정상적으로 수행할 때 불필요한 과정이다.


정규화의 종류와 비정규화, 정규화의 수행 사례를 설명한다.




3장 SQL을 이용한 관계 데이터베이스 관리 시스템의 사용 에서는


관계형 데이터베이스 관리 시스템 RDBMS 설치 방법을 설명한다.


SQL은 RDBMS에서 필요한 모든 작업을 수행하며,

RDBMS의 조작을 위해 필요한 모든 기능을

표준화된 규칙에 따라 제공 받을 수 있다.



SQL 처리 과정, SQL 명령문의 종류와 기능,

물리적 RDBMS 환경의 구성, SQL Plus 사용법,

RDBMS의 데이터 타입에 대해 설명한다.


RDBMS는 원하는 자료를 원하는 시간에

원하는 형태로 얻기 위함이다.


기본적인 질의 기능, 행을 대상으로 동작하는 SQL 함수,

테이블을 대상으로 동작하는 SQL 함수를 알아본다.


조인 은 여러 테이블에 저장된 데이터를 한 번에

조회할 수 있는 기능이다. 조인의 종류 및 사용법을 설명한다.



서브 쿼리 는 하나의 테이블에서 검색한 결과를 다른 테이블에

전달하여 새로운 결과를 검색할 때 사용하는 기술이다.


단일 행 서브 쿼리, 다중 행 서브 퀴리, 다중 칼럼 서브 쿼리,

상호 연관 서브 쿼리 사용법을 설명한다.



RDBMS에서 데이터 조작을 수행하는 SQL 명령어는

Insert, Update, Delete다.


데이터 입력, 데이터 수정, 데이터 삭제에 대해 설명한다.


RDBMS에서 데이터베이스 정의를 수행하기 위해 제공하는

SQL 명령어는 create, alter, drop, rename, truncate다.


테이블 생성은 테이블 구조를 정의하고, 데이터를 저장하기 위한

공간을 할당하는 과정이다.



데이터 딕셔너리 는 DBMS에서 데이터를 효과적으로

관리하기 위한 정보를 저장하는 시스템 테이블의 집합이다.


트랜잭션 은 RDBMS에서 실행되는 여러개의 SQL 명령문을

데이터의 일치성을 기준으로 논리적 작업 단위로 처리한다.



데이터의 정확성을 위하여 트랜잭션 처리 개념이 도입된다.


트랜잭션 은 RDBMS에서 실행되는 SQL 명령문을

데이터 일치성을 기준으로 논리적 작업 단위로 처리하는 개념이다.


데이터 정확성의 기준인 데이터 무결성에 대한

RDBMS 관리 포인트를 설명한다.


데이터 무결성을 위해 사용하는 알고리즘을 설명한다.


데이터 무결성 제약 조건은 RDBMS에서 데이터의 정확성과

일관성을 보장하기 위해 테이블 생성 시 각 칼럼을 정의하는 규칙이다.


무결성 제약 조건의 속성,

무결성 제약 조건의 추가, 조회, 삭제, 활성화, 비활성화 를 설명한다.



RDBMS가 제공하는 보안 정책은 시스템 보안과 데이터 보안으로 구분된다.

grant, revoke를 이용해 권한, 롤, 동의어와 같은 작업을 통해 수행한다.



롤 은 RDBMS에서 다수 사용자와 다양한 권한을 관리하기 위해

서로 관련된 권한을 그룹화한 것이다.


롤 생성, 조회, 삭제 방법을 설명한다.




인덱스 는 SQL 명령문의 처리 속도를 향상하기 위해

칼럼에 대해 생성하는 것이다.


인덱스 는 포인터를 이용해 테이블에 저장된

데이터를 랜덤 액세스하는 목적으로 사용된다.


인덱스의 구조, 인덱스의 사용, 인덱스의 종류 및 생성,

기본 키를 일련 번호로 자동 생성해주는 시퀸스에 대해 설명한다.


뷰 는 하나 이상의 기본 테이블이나 다른 뷰를 이용해

생성되는 가상 테이블이다.


뷰는 단순 뷰와 복합 뷰로 분리할 수 있다.

뷰 생성, 데이터 딕셔너리 조회, 변경, 삭제를 설명한다.



분석 함수는 대량의 데이터를 다차원적으로 분석하는 함수다.


rank, dense_rank, NTILE, row_number, avg, count,

max, min, stddev, sum, variance, first_value,

last_value, LAG, LEAD함수, Top-N 분석을 알아본다.


스토어드 프로시저 는 RDBMS에 프로그래밍 기능을 추가하기 위해

특별히 개발된 것이다.




4장 사용자가 제작한 프로그램에서 RDBMS를 다루는 방법 에서는


SQL 명령문을 RDBMS에 전달하여 작업을 수행하는

JDBC , Mybatis 등이 있다.


클래스와 테이블을 연결하는 개념으로 Hybernate,

EclipseLink, DataNucleus 등이 있다.


JDBC는 자바 언어로 RDMBS에 연결하며,

SQL 명령문을 전달하기 위해 개발된 API다,.


자바 프로그램에서 RDBMS를 연결하는 과정을 실습한다.



JPA는 개체와 테이블 간의 차이를 중간에서 해결해주는

ORM 프레임워크다.



마이바티스 Mybatis는 JDBC를 이용하는

자바 응용 애플리케이션 개발 환경이 가지는 문제점을

개선하기 위해 개발된다.


웹에서 RDBMS를 사용하는 방법을 설명한다.



빅데이터 는 양이 많고, 시계열적인 요소가 강한 데이터 다.


생성된 데이터를 다루고 분석하기 위해서는

통계나 데이터마이닝 기법과는 다른 방식이 필요하다.


데이터 마트 는 특수 목적을 가진 데이터 웨어하우스다.


빅데이터 처리 기술 데이터 파이프라인,

데이터 수집과 전송에 대해 설명한다.



하둡은 다수의 컴퓨터에서 대량의 데이터를 처리하기 위해 개발된 DBMS다.


NoSQL은 특정 업무에 최적화된 DBMS다.



5장 관계형 데이터베이스 관리 시스템의 성능 향상 기법 에서는


RDBMS의 기술적 특성을 고려할 때 성능 개선을 위한

노력이 필요하다.


테이블을 만들 때 기본 키와 인덱스 생성시 차이점,

기본 키 및 인덱스의 칼럼 순서,

기본 키를 식별자와 비식별자로 분리하기,


누적되는 데이터에 대한 처리,

테이블 통합 및 분리 가이드,

개체 구성, 개체 또는 테이블의 구성과 관계,

용어 사전의 활용, 데이터 독립성의 실무 적용,


트랜잭션 관리의 실무 적용, 정규화의 실무 적용,

반정규화의 실무 적용, 모델 개선을 통한 성능 향상,

테이블 수직/수평 분할에 의한 성능 향상 등을 설명한다.





"데이터베이스 관리 시스템"은

데이터베이스 관리 시스템의 개념, 설계,

RDBMS와 SQL Plus의 SQL 명령문,

JDBC, Mybaits 등 SQL Mapper,

JPA, 웹에서 RDBMS 사용, 빅데이터 사용,

RDBMS 성능 향상 기법을 다룬다.



데이터베이스 관리 시스템 DBMS를 사용하기 위한

과정과 절차 및 운영 과정을 체계적으로 정리한 것이

정보공학 방법론이다.


데이터베이스 는 파일의 크기와 숫자가 늘어난 데이터 며,

데이터 관리 시스템 DBMS는 데이터베이스를 관리하기 위한

프로그램 이다.


DBMS 는 파일 시스템 의 단점을 극복하고, 다수의 사용자가

더 많은 파일 정보를 공유, 활용하는 환경으로 개발된다.


데이터베이스 는 DBMS가 담당하는 파일의 모임이다.


관계형 데이터베이스 관리 시스템 RDBMS는

사용자에게 행과 열로 구성된 테이블 형태처럼

저장된 자료를 보여주는 DBMS다.


관계형 데이터베이스 모델, 관계형 DMBS는

테이블과 관계로만 구성되며,


다양한 데이터 관리가 가능하고, 복잡한 조건에 맞는

데이터 처리가 가능한 모델이다.


RDMBS는 데이터를 테이블 형태로 보여주도록 설계되고,

표준화된 조작 방법으로 확장된다.



모델링 은 고객이 원하는 프로그램을 개발하기 위해

필요한 정보를 얻기 위한 모델을 만드는 과정이다.


프로세스 모델링 은 개발해야 하는 정보 시스템이

수행되는 순서를 중심으로 모델링 하는 방법이다.


구조적 프로그래밍 은 함수를 이용한 프로그램 제작기법이다.


프로세스 모델링 은 구조적 프로그램 제작을 위한

사전 단계에서 제작하는 것이다.


데이터 모델링 은 정보 시스템에서 필요로 하는 데이터를 찾거나

조직화하여 문서로 만드는 기술이다.


RDBMS를 사용하는 경우, 데이터 모델링은 개체, 속성, 관계라는

3가지 요소로 구성된다.


E-R 모델링은 RDBMS를 사용하는 환경에서

개체, 관계, 속성을 사용해서 데이터를 조직화하는 방법이다.



데이터 모델링 은 DBMS 구축의 첫 번째 작업이다.


개체 모델링 은 개체 와 속성으로 이루어진다.


개체는 관계 있는 데이터를 묶어주는 최소 단위며,

속성은 개체를 구성하는 데이터 다.



RDBMS에서 데이터를 다루기 위한 단위는 개체와 속성이다.


데이터가 둘 이상의 개체에 흩어져 있다면

둘 이상의 개체를 관계에 맺어주어야 한다.


E-R 모델링 에서 가장 중요한 것은 다른 사람이

제작한 모델을 읽을 줄 아는 것이다.


정규화는 E-R 모델링 에서 개체를 구성할 때

중복되거나 애매한 데이터를 제거하고,

정보의 무결성을 높이고자 개발된 기법이다.



SQL은 RDBMS에서 필요한 모든 작업을 수행하며,

RDBMS의 조작을 위해 필요한 모든 기능을

표준화된 규칙에 따라 제공 받을 수 있다.



RDBMS는 원하는 자료를 원하는 시간에

원하는 형태로 얻기 위함이다.


기본적인 질의 기능, 행을 대상으로 동작하는 SQL 함수,

테이블을 대상으로 동작하는 SQL 함수를 알아본다.


조인 은 여러 테이블에 저장된 데이터를 한 번에

조회할 수 있는 기능이다.



서브 쿼리 는 하나의 테이블에서 검색한 결과를 다른 테이블에

전달하여 새로운 결과를 검색할 때 사용하는 기술이다.


RDBMS에서 데이터 조작을 수행하는 SQL 명령어는

Insert, Update, Delete다.


RDBMS에서 데이터베이스 정의를 수행하기 위해 제공하는

SQL 명령어는 create, alter, drop, rename, truncate다.


테이블 생성은 테이블 구조를 정의하고, 데이터를 저장하기 위한

공간을 할당하는 과정이다.



데이터 딕셔너리 는 DBMS에서 데이터를 효과적으로

관리하기 위한 정보를 저장하는 시스템 테이블의 집합이다.


트랜잭션 은 RDBMS에서 실행되는 여러 개의 SQL 명령문을

데이터의 일치성을 기준으로 논리적 작업 단위로 처리한다.



데이터의 정확성을 위하여 트랜잭션 처리 개념이 도입된다.


트랜잭션 은 RDBMS에서 실행되는 SQL 명령문을

데이터 일치성을 기준으로 논리적 작업 단위로 처리하는 개념이다.


데이터 정확성의 기준인 데이터 무결성 제약 조건은

RDBMS에서 데이터의 정확성과 일관성을 보장하기 위해

테이블 생성 시 각 칼럼을 정의하는 규칙이다.



RDBMS가 제공하는 보안 정책은 시스템 보안과 데이터 보안으로 구분된다.


롤 은 RDBMS에서 다수 사용자와 다양한 권한을 관리하기 위해

서로 관련된 권한을 그룹화한 것이다.


인덱스 는 SQL 명령문의 처리 속도를 향상하기 위해

칼럼에 대해 생성하는 것이다.



뷰 는 하나 이상의 기본 테이블이나 다른 뷰 를 이용해

생성되는 가상 테이블이다.


분석 함수는 대량의 데이터를 다차원적으로 분석하는 함수다.



SQL 명령문을 RDBMS에 전달하여 작업을 수행하는

JDBC , Mybatis 등이 있다.


클래스와 테이블을 연결하는 개념으로 Hybernate,

EclipseLink, DataNucleus 등이 있다.



JPA는 개체와 테이블 간의 차이를 중간에서 해결해주는

ORM 프레임워크다.



마이바티스 Mybatis는 JDBC를 이용하는

자바 응용 애플리케이션 개발 환경이 가지는 문제점을

개선하기 위해 개발된다.



빅데이터 는 양이 많고, 시계열적인 요소가 강한 데이터 다.


생성된 데이터를 다루고 분석하기 위해서는

통계나 데이터마이닝 기법과는 다른 방식이 필요하다.


데이터 마트 는 특수 목적을 가진 데이터 웨어하우스다.


하둡 은 다수의 컴퓨터에서 대량의 데이터를 처리하기 위해 개발된 DBMS다.


NoSQL은 특정 업무에 최적화된 DBMS다.



RDBMS의 기술적 특성을 고려한 성능 개선 팁을 소개한다.



방대한 데이터베이스 에서 목적에 맞는 데이터를 얻기 위해서는

데이터베이스 관리 시스템 을 활용해야 한다.


"데이터베이스 관리 시스템"은 관계형 데이터베이스 관리시스템,

RDBMS에 대해 개괄적으로 다룬다.


데이터베이스 관리시스템, DBMS의 개념과 역사를 살펴보고,

DBMS 모델링 개념, RDBMS의 E-R 모델링을 설명한다.


RDBMS에서 사용하는 데이터베이스 언어 SQL의 사용법,

인덱스, 시퀸스, 뷰, 분석 함수 사용법을 안내한다.


SQL Plus, JDBC 등 API를 소개하고,

SQL Mapper, ORM 등 개발 프레임워크를 알아본다.


구축된 RDBMS의 성능 개선을 위해 엔지니어가

알아야 할 기법을 안내한다.



데이터베이스 관리 시스템은 대량의 데이터 자료에서

필요한 정보를 찾아내는 컴퓨터의 핵심 기능이다.


"데이터베이스 관리 시스템"은 데이터베이스의 개념,

데이터베이스 관리 시스템 설계, 사용 방법,

연관 소프트웨어, 성능 튜닝 기술 등을 소개한다.


간략하게 핵심 이론을 설명하고, 실습 중심으로

RDBMS 사용법을 설명하여, 개념을 익히도록 한다.


"데이터베이스 관리 시스템"은 실무에서 요구하는

내용을 중심으로 RDMS에 대해 전반적으로 이해하면서

기초부터 응용까지 실력을 키울 수 있다.


"데이터베이스 관리 시스템"은 RDBMS의 기초를 익히고,

전반적 활용법과 연관 프로그램, 성능 개선 팁까지 다루면서,

데이터베이스 실무 능력을 빠르게 향상할 수 있도록 돕는다.


정보문화사 와 컬처블룸 서평단에서

"데이터베이스 관리 시스템"을 증정해주셨다.

감사드린다.


#데이터베이스관리시스템 #정보문화사 #서평 #조민호

#컬처블룸 #컬처블룸서평단




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo