DB) #1 데이터베이스 시스템

지우·2026년 3월 7일

database

목록 보기
1/9

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

구조에 따른 데이터 분류

1) 정형 데이터 : 행,열 명확 ex)테이블
2) 반정형 데이터 : 일정한 구조는 있지만 고정 x ex)JSON
3) 비정형 데이터 : 구조x ex)이미지,영상

특성에 따른 데이터 분류

1) 범주형 데이터
2) 수치형 데이터

데이터베이스 개념

1) 통합 : 중복 제거해서 하나로 모음
2) 공유 : 여러 사용자 활용
3) 저장 : 영구적 보관
4) 운영 : 실시간 업무 활용

기본 구성 요소

데이터베이스 / DBMS / 데이터 모델

+ 사용자 / 인터페이스

2. DBMS

DBMS 장점

  • 데이터 중복 최소화 (데이터 공유 가능)
  • 데이터 일관성 유지
  • 데이터 독립성 유지 : 데이터 정의와 프로그램 간의 독립성 유지 가능
  • 관리 기능 제공 : 데이터 복구, 보안, 동시성 제어, 데이터 관리 기능 등 수행
  • 프로그램 개발 생산성 향상 : 개발 시간 단축, 장애 발생시 회복 가능
  • 데이터 보안 향상, 표준화 가능

DBMS 단점

  • 백업과 장애 회복 방법 복잡
  • 중앙 집중 관리로 인한 취약점 존재
  • 대규모 사용자 동시 접속 시 성능 저하 발생

DBMS 발전 과정

3. 데이터베이스 시스템의 구성

데이터베이스 / DBMS / 데이터 모델 / 데이터베이스 사용자 / 인터페이스(데이터베이스 언어, 응용프로그램)

데이터베이스 언어(SQL)

  • 사용자와 데이터베이스 관리 시스템 간의 통신 수단

SQL 구성

  • 데이터 정의어(DDL) : DBMS에 저장된 테이블 구조 정의 (관리자)
  • 데이터 조작어(DML) : 데이터 검색, 삽입, 삭제, 수정 (일반 사용자)
  • 데이터 제어어(DCL) : 내부적으로 필요한 규칙이나 데이터의 사용 권한 관리 (관리자)

SQL의 핵심

  • 데이터 조작어 중 데이터 검색하는 질의문
  • SELECT - FROM - WHERE 구조
    -> SELECT (무엇을) FROM (어디서) WHERE (조건)

데이터베이스 사용자

일반사용자

  • 프로그래머가 개발한 프로그램을 이용하여 접근
  • 주로 데이터 조작어 이용
  • 캐주얼 사용자 / 초보 사용자

SQL 사용자

  • 응용 프로그램으로 구현되지 않은 업무를 SQL을 사용해 처리

응용 프로그래머

데이터베이스 관리자 (DBA)

  • 주로 DDL, DCL 이용

데이터 모델

관계 표현 방법

1) 포인터 사용 : 계층 데이터 모델 / 네트워크 데이터 모델
2) 속성값 사용 : 관계 데이터 모델 ( 가장 많이 사용 )
3) 객체 식별자 사용 : 객체 데이터 모델

데이터베이스의 개념적 구조

3단계 데이터베이스 구조

1) 외부 단계 : 개별 사용자 관점

  • 일반 사용자나 응용 프로그래머가 접근하는 계층
  • 전쳬 데이터베이스 중에서 하나의 논리적인 부분
  • 여러 개의 외부 스키마가 있을 수 있음 (사용자마다 다를 수 있음)

2) 개념 단계 : 조직 전체의 관점

  • 통합 조직별로 하나만 존재하며 DBA가 관리
  • 개념 스키마 : 개념 단계에서 전체 데이터베이스의 논리적 구조

3) 내부 단계 : 저장 장치의 관점

  • 물리적 저장 장치에 데이터베이스가 실제로 저장되는 방법 표현
  • 하나의 데이터베이스에는 내부 스키마 하나만 존재

+) 각 단계 간 대응 관계

  • 외부 / 개념 (응용 인터페이스)
  • 개념 / 내부 (저장 인터페이스)

데이터 독립성

하위 단계 추상화 -> 하위 스키마 변경해도 상위는 안변하도록

1) 논리적 데이터 독립성

  • 외부와 개념 단계 사이
  • 논리적 구조가 변경되어도 응용 프로그램에는 영향 x

2) 물리적 데이터 독립성

  • 개념과 내부 단계 사이
  • 내부 스키마(저장구조)가 변경되어도 개념 스키마에 영향 x

후속 활동

DBMS 종류에 대한 선호도 및 국내 점유율

1) 관계형 DBMS (RDBMS)

  • 데이터 테이블 형식 저장
  • SQL 사용하여 데이터에 접근 및 관리
  • 현재 가장 널리 사용되는 데이터베이스 모델

ex. Tibero, Oracle, MySQL, MariaDB

2) 비관계형 DBMS (NoSQL DBMS)

  • 비정형 데이터 처리에 최적화
  • 다양한 데이터 형식 지원
  • 주로 대규모 데이터 처리 및 실시간 데이터 분석에 사용

ex. MongoDB(문서 기반), Cassandra(분산형), Neo4j(그래프) 등

3) 계층형 DBMS

  • 트리 구조
  • 빠른 데이터 접근 가능

4) 객체지향형 DBMS

  • 상속, 다형성 -> 복잡한 관계 쉽게 처리 가능

ex. ObjectDB

5) 객체관계형 DBMS

  • 복잡한 데이터 구조 지원(배열, 객체 등)


관계형 DBMS에 해당하는 MySQL, Oracle이 가장 많이 사용되고 있음

DB 자격증

1) SQLD (SQL 개발자) : 데이터 모델링의 이해 / SQL 기본 및 활용

2) SQLP (SQL 전문가) : 데이터 모델링 / SQL 기본 및 활용 / SQL 고급 활용 및 튜닝

3) DAP (데이터 아키텍처 전문가) : 데이터 아키텍처 설계 / 데이터 거버넌스 / 데이터 품질 관리

4) 빅데이터분석기사 : 빅테이터 수집, 저장, 처리, 분석, 시각화

5) ADP (데이터분석 전문가) : 통계 분석 / 데이터 마이닝 / 빅데이터 처리 기술

0개의 댓글