본문 바로가기
💾 Backend/데이터베이스

📊 데이터베이스(mySQL) - 1. 데이터베이스 시스템

by 정람지 2024. 4. 19.

출처 : MySQL로 배우는 데이터베이스 개론과 실습(2판)


📊 필기


📊 정리

💾 데이터베이스의 정의
조직에 필요한 정보를 얻기 위하여 논리적으로 연관된 데이터를 모아 구조적으로 통합해 놓은 것

-통합된 데이터(integrated data)

-저장된 데이터(stored data)

-운영 데이터 (operational cata)

-공용 데이터(shared data)


💾 데이터베이스의 특징

- 실시간 접근이 가능(real-time accessibility)

- 계속 변화(continuous evolution)

- 동시 공유가 가능(concurrent sharing)

- 내용으로 참조가 가능(content reference)


💾 데이터베이스 시스템의 구성
데이터베이스 관리 시스템(DBMS) + 데이터베이스 + 데이터 모델


💾 정보 시스템의 발전
파일 시스템 :

DBMS가 없는 시스템으로, 데이터는 파일 단위로 저장되며 파일을 다루는 파일 서버가 있음

데이터베이스 시스템:

DBMS을 도입하여 데이터를 통합 관리하는 시스템

웹 데이터베이스 시스템:

데이터베이스를 웹 브라우저에서 사용하도록 제공하는 시스템
웹 서버와 JSP, PHP, 웹 데이터베이스 연동 언어들을 사용

분산 데이터베이스 시스템:

여러 곳에 분산된 DBMS 서버를 연결하여 운영하는 시스템으로 대규모 응용 시스템에 사용된다.


💾 DBMS의 장점

데이터를 공유하여 중복 가능성을 최소화하고 이를 통해 데이터의 일관성을 유지

또 데이터 구조가 변경되더라도 프로그램을 수정할 필요가 없어 데이터 독립성을 유지 가능


💾 SQL
데이터베이스 시스템에 사용하는 전용 언어

- 데이터 정의어(DDL), 데이터 조작어(DVL), 데이터 제어어(DCL)로 구성

데이터 정의어:

DBMS에 저장된 테이블의 구조를 정의

CREATE. ALTER. DROP 문 등

데이터 조작어:

데이터를 검색 • 입력 • 삭제 • 수정하는 데 사용

SELECT. INSERT.DELETE. UPDATE 문 등

데이터 제어어:

데이터의 사용 권한을 관리

GRANT, REVOKE 문 등


💾 데이터베이스 관리자(DBA)
데이터베이스 관리에 대한 모든 권한을 갖고 운영을 총괄하는 사람


💾 데이터 모델
데이터베이스 시스템에서 데이터를 저장하는 이론적인 방법에 관한 것

데이터베이스에 데이터가 어떻게 구조화되어 저장되는지를 결정


💾 3단계 데이터베이스 구조

외부 단계, 개념 단계, 내부 단계

각 단계는 외부 스키마. 개념 스키마, 내부 스키마로 구성

스키마(schema) : 데이터베이스의 조직이나 구조

 

외부 스키마:

서브 스키마(subschema)라고도 부름

뷰(view)의 개념

개념 스키마 중 사용자에게 필요한 부분 스키마를 의미

개념 스키마:

전체 데이터베이스의 정의를 말하는 것으로 통합 조직별로 하나만 존재

저장 장치에 독립적으로 기술되며, 데이터와의 관계(relationship), 제약사항, 무결성에 대한 내용이 포함

내부 스키마:

물리적 저장 장치에서 데이터베이스가 실제로 저장되는 방법을 표현한 것
인덱스, 데이터 레코드의 배치 방법, 데이터 압축 등에 관한 사항이 포함


💾  데이터 독립성

3단계 데이터베이스 구조에서 하위 단계의 내용을 추상화하여 상위 단계에 그 세부 사항을 숨김으로써 한 단계 내의 변경에 대해 다른 단계와 상호 간섭이 없도록 하는 것

 

논리적 데이터 독립성:

외부 단계와 개념 단계 사이의 독립성으로, 개념 스키마가 변경되어도 외부 스키마에는 영향을 미치지 않도록 지원

물리적 데이터 독립성:

개념 단계와 내부 단계 사이의 독립성으로, 저장 장치 구조 변경과 같이 내부 스키마가 변경되어도 개념 스키마에 영향을 미치지 않도록 지원


📊 문제 오답 정리

시스템 카탈로그 (데이터 사전)

데이터베이스에 포함되는 모든 데이터 객체에 대한 정보와 메타 데이터에 관한 정보를 유지 관리

- DBMS가 스스로 생성하고 유지하는 데이터베이스 내의 특별한 데이터를 저장

- 카탈로그에 저장된 정보를 메타 데이터(Meta-Data)

시스템 카탈로그의 존재를 모르는 유저를 위해 SQL을 이용하여 사용자가 직접 정보를 검색 ㄴㄴ DBMS가 함

 

데이터 모델

데이터를 저장하는 이론적인 방법

- 관계 데이터 모델

- 계층 데이터 모델

- 네트워크 데이터 모델

- 객체-관계 데이터 모델

 

데이터 독립성

상위 단계에 하위 단계의 세부 사항을 숨김으로서 상호 간섭 ㄴㄴ

- 논리적 데이터 독립성

- 물리적 데이터 독립성

 

 

DBMS

데이터 조작어(DML)로 스키마의 구조를 기술하여 시스템 카탈로그(데이터 사전)에 저장한 후 필요할 때 활용

질의어 처리기:

질의문을 파싱하고 분석해서 효율적인 데이터베이스 접근코드를 생성한다.

트랜잭선 관리자:

무결성 제약조건 검사 사용자의 권한 검사, 영행제어, 회복 등의 작업

저장 데이터 관리자:

디스크에 저장되어 있는 사용자 데이터베이스와 시스템 카탈로그의 접근을 책임

DML/DDL 컴파일러:

SQL 번역


꿈질