데이터베이스란 ( Database, DB )
일반적으로 컴퓨터 시스템에 전자 방식으로 저장된 구조화된 정보 또는 데이터의 체계적인 집합을 의미한다.
핵심은 데이터베이스는 중복을 최소화하고, 다수의 사용자가 공유할 수 있도록 데이터들을 모아둔 시스템 인것이다.
데이터베이스는 혼자서 사용하는 시스템이 아니기때문에, 여러명의 사용자나 시스템간에 상호 공유가 가능해야 한다.
데이터베이스는 단순히 데이터가 모여있는것을 의미하는것이 아니라, 사용자 요구에 따라 필요한 데이터를 빠르게 검색할 수 있어야 하며, 데이터를 추가, 삭제, 수정 할 수 있도록 구성된 데이터의 집합체 이다.
한마디로 관련된 데이터를 모아 이를 통합하여 관리할 수 있도록 하는 것 이다.
데이터베이스 관리시스템 (DataBase Management System, DBMS)
데이터베이스를 공부할때 데이터베이스 관리시스템(DBMS) 을 빼놓을 순 없다.
DBMS는 모든 응용 프로그램들이 데이터베이스를 공유할 수 있도록 관리해주고, 데이터베이스를 유지하기 위한 일련의 소프트웨어 시스템 이다.
대표적으로 Oracle, MySQL 이 있다.
✔ DBMS기능
- 정의기능(생성)
- 조작기능
- 제어기능
1. 정의기능 (생성)
논리적 구조 정의 : 테이블 등의 논리적 구조를 정의 < Logical >
물리적 구조 정의 : 실제 파일 < Physical >
논리적/물리적 구조 매핑 : 물리적으로 만든 파일과 우리가 볼 수 있는 것을 연결
2. 조작기능
코드를 통해서 데이터를 검색, 삽입, 수정, 삭제 할 수 있는 기능
즉, Select, Insert, Update, Delete 가 가능하다.
3. 제어기능
데이터의 정확성, 안정성을 유지하는 기능 (무결성, 보안)
데이터베이스와 테이블의 관계
💡 데이터베이스라는 큰 통 안에 정보가 들어있는 다수의 테이블이 존재한다.
데이터베이스의 기본 단위. 테이블
테이블 이란, 여러 개의 레코드(데이터)를 담고 있는 논리적인 구조를 말한다.
즉, 테이블을 자료형들을 모아놓은 표 라고 생각하자.
> 모든 자료는 테이블에 등록이 되고, 우리는 테이블로부터 원하는 자료를 꺼내볼 수 있다.
( 우리가 원하는 자료를 찾아보려면 데이터 베이스에 접속하고 테이블을 찾아봐야 한다는것 )
❔ 데이터베이스, 데이터베이스 서버 ...
말이 헷갈리니까 테이블들을 모아놓은 데이터베이스를 스키마 라고도 부르기도 한다.
데이터베이스의 장점
- 데이터 중복 최소화
- 데이터 공유
- 무결성 유지
- 일관성 유지
- 데이터의 보안 보장
데이터베이스의 단점
- 운영비 증대 : 많은 시스템 자원 요구
- 자료 처리의 복잡화 : 고급 프로그래밍 요구
- 복잡한 예비와 회복 : 장애 발생 대비를 위한 작업 필요
- 시스템의 취약성 : 시스템의 성능에 따라 DBMS성능이 좌우됨
데이터베이스의 본질은 CRUD 이다.
Create, Read, Update, Delete
어떤 부분에서는 수정과 삭제가 없을 수 도 있기 때문에, Create, Read를 중요시 한다.
다음은 관계형 데이터베이스 (RDBMS) 에 대해 포스팅 해보도록 하겠다.
참고 자료 : www.youtube.com/watch?v=0pU6_5BQ2Dk&list=PLuHgQVnccGMCgrP_9HL3dAcvdt8qOZxjW&index=15
'DataBase' 카테고리의 다른 글
SQL 소개 (0) | 2021.03.04 |
---|---|
관계형 데이터 RDBMS, 제1정규화 (0) | 2021.03.04 |