부스트코스 교육내용(출처)을 바탕으로
학습 자료를 추가하였습니다.
< intro >
들어가기 전에
프로그램에서 다루는 데이터가 많아질수록, 그 데이터를 동시에 사용하는 사람이 많아질수록 데이터의 관리는 어려워집니다.
이러한 데이터를 쉽고 편리하게 다룰 수 있도록 하기 위해서 등장한 것이 데이터베이스 메니지먼트 시스템입니다.
이번 시간엔 데이터베이스와 데이터베이스 메니지먼트 시스템에 대해서 알아보도록 하겠습니다.
학습 목표
- 데이터베이스와 데이터베이스 메니지먼트 시스템에 대해서 이해하고, 설명할 수 있다.
핵심 개념
- 데이터베이스 (Database)
- 데이터베이스 메니지먼트 시스템 (DBMS)
데이터베이스
데이터베이스(DB)의 기본개념 (정의)
- 어느 한 조직의 다양한 응용 프로그램들이 공동으로 사용하는 데이터들을 통합해 저장하고 운영하는 데이터의 집 (a Set of Data)
- 여러 응용 시스템(프로그램)들의 통합된 정보들을 저장하여 운영할 수 있는 공용(share) 데이터의 집합
- 효율적으로 저장, 검색, 갱신할 수 있도록 데이터 집합들끼리 연관시키고 조직화되어야 한다.
- 기능이나 구조를 나타내는 추상적인 개념
데이터베이스의 특성
- 실시간 접근성(Real-time Accessability)
- 사용자의 요구(Query)를 실시간 처리 및 응답할 수 있다.
- 계속적인 변화(Continuous Evolution)
- 정확한 값을 유지하려고 삽입·삭제·수정(갱신) 등의 동적인 작업을 통해 데이터를 지속적으로 갱신할 수 있다.
- 동시 공유성(Concurrent Sharing)
- 사용자마다 서로 다른 목적으로 사용하므로 여러 사용자가 동일한 데이터 동시에 접근 및 이용할 수 있다.
- 내용 참조(Content Reference)
- 저장한 데이터 레코드의 위치나 주소가 아닌 사용자가 요구하는 데이터의 내용, 즉 데이터 값에 따라 참조할 수 있어야 한다.
데이터베이스 관리시스템 DBMS
데이터베이스 관리 시스템 (Database Management System = DBMS)
- 데이터베이스를 생성 및 관리하며 응용 프로그램들이 데이터 베이스를 공유하며 사용할 수 있는 환경을 제공하는 소프트웨어
- 데이터와 응용 프로그램 사이를 중계 (DB<-DBMS->응용프로그램)
- 데이터베이스를 직접 응용 프로그램들이 조작하지 않고 DBMS를 통해 조작, 관리한다.
- 여러 응용 소프트웨어(프로그램) 또는 시스템이 동시에 데이터베이스에 접근하여 사용할 수 있게 한다
데이터베이스 관리 시스템의 장/단점
- 장점
- 데이터 중복 최소화
- 데이터의 일관성 및 무결성 유지
- 데이터 보안 보장 - 단점
- 운영비가 비싸다
- 백업 및 복구에 대한 관리 복잡
- 부분적 데이터베이스 손실이 전체 시스템을 정지
데이터베이스와 데이터베이스 관리 시스템
- Q> 데이터베이스와 데이터베이스 관리 시스템을 어린이도 알 수 있을 정도로 설명해주세요.
- A> 어린이가 가지고 있는 책(정보)들을 데이터베이스라고 한다면, 그 책을 관리해주는 엄마는 데이터베이스 관리 시스템이라고 말할 수 있습니다.
대표적인 DBMS (출처)
Oracle사의 Oracle
오라클에서 만들어 판매중인 상업용 데이터베이스
윈도우즈 리눅스 유닉스 등 다양한 운영체제에 설치를 할 수 있다.
MS_SQL , MY_SQL보다 대량의 데이터를 처리하기 좋음
대기업에서 주로 사용하며 글로벌 DB시장 점유율 1위
비공개 소스, 폐쇄적인 운영
MySQL사의 MySQL
MySQL사에서 개발, 썬마이크로시스템즈를 거쳐 현재 오라클에 흡수합병됨
윈도우즈 리눅스 유닉스 등 다양한 운영체제에 설치를 할 수 있다.
오픈소스로 이루어져있는 무료 프로그램(상업적 사용시 비용있음)
가격등의 장점을 앞세워 다수의 중소기업에서 사용중
MS의 MSSQL
마이크로소프트 사에서 개발한 상업용 데이터베이스
다른 운영체제도 사용가능하지만 윈도우즈에 특히 특화되어있음
비공개 소스로 폐쇄적인 정책 (리눅스버전은 오픈소스)
비교적 중소기업에서 주로 사용함
추가 참고 자료 : 출처
'○ WEB > 19.07 BoostCourse_DB연결 웹앱' 카테고리의 다른 글
5-1 MySQL설치 / MySQL 실행 / MySQL 종료 (0) | 2019.07.17 |
---|---|
[에러/해결] MySQL the specified port already in use (5) | 2019.07.17 |
JSP, Spring의 차이점 (0) | 2019.07.16 |
3-1. application scope (0) | 2019.07.15 |
3. scope란? / page scope / request scope / session scope (0) | 2019.07.15 |