1. 현실 세계
실제 세계는 관심 대상이 상주하는 시스템입니다.
≒ 실제 시스템
대학을 예로 들어보자.
대학 시스템은 학생입니다, 교수와 같은 물리적인 요소가 있을 뿐만 아니라
학교 규칙, 비즈니스 프로세스 등 비 물리적 및 보이지 않는 구성 요소가 있습니다.
따라서 존재의 의미는 논리적 존재와 물리적 존재를 모두 포함한다.
.
실제 세계에서 구성 요소는 상호 작용할 때 기능을 수행합니다.
.
대부분의 경우 각 구성 요소는 다른 시스템이 될 수 있습니다.
. ≒ 서브시스템
일반적으로 현실 세계에서 시스템의 상태는 자체 기능을 수행하는 과정에서 끊임없이 변화합니다.
.
현실 세계에서 필요한 정보를 정확하게 얻기 위해서는 현재 상태를 정확하게 반영하는 데이터가 필요합니다.
.
또한 어떤 경우에는 각 상태에 대한 모든 데이터가 시간이 지남에 따라 변경되도록 하는 것이 바람직할 수 있습니다.
.
2. 시스템
시스템은 하나 이상의 구성 요소가 상호 연결된 시스템입니다.
당신은 무엇을 쫓는가, 다른 시스템과 관련된 기능과 역할을 담당하는 집합체입니다.
사실 우리 자신이 시스템이지만 한편으로는 시스템의 구성원이기도 합니다.
.
데이터베이스는 시스템 관점에서 이해하고 구성하고 관리해야 하므로 시스템에 대한 일반적인 개념이 필요합니다.
.
시스템에는 세 가지 특성이 있습니다.
1) 시스템은 하나 이상의 구성 요소로 구성됩니다.
(강의 시스템)
구성 요소로 교수, 학생, 주제, 강당 포함할 수 있다.
교수지식을 전달하는 기능과 기능을 가지고 있습니다.
,
학생지식을 얻다,
주제교수의 강의의 대상이자 학생의 접대 대상이며 그 사이에서 매개체 역할을 한다.
.
강당교수와 학생들이 지식을 전수하고 습득하는 공간입니다.
.
2) 시스템은 구성 요소 간에 상호 관계가 있습니다.
(강의 시스템)
교수예 지식 이전그리고 학생은 지식 이전 다이나믹과 상호 작용.
교수그리고 주제 사이 책임이 있는 관계가 있습니다
학생수업 주제 ~ 사이 가입하기 존재관계.
강당은 주제도착하다 일그래서 둘 사이에 일 관계가 있음을 알 수 있다.
지식의 보급과 획득 사이의 관계는 역동적이고 상호작용적인 관계로 볼 수 있습니다.
책임이 있는, 가입하기, 일 교환 사이에 중개자가 없기 때문에 관계는 정적인 것으로 볼 수 있습니다.
.
삼) 시스템의 목적은 다른 시스템과 관련하여 기능이나 역할을 추구하거나 가정하는 것입니다.
.
(강의 시스템)
강의 시스템의 궁극적인 목표는 지식의 빠른 전달과 습득이 될 수 있습니다.
관점에 따라 코스 학점을 완료하는 것이 가능할 수 있습니다.
.
(하드웨어 시스템)
구성 요소는 입력 장치입니다.
, 출력 장치, 저장 등으로 구성되어 있습니다.
각각 고유한 기능을 가진.
입력장치는 외부에서 내부로 데이터를 입력하는 기능과 기능을 갖는다.
,
출력 장치의 기능은 내부 데이터를 외부로 출력하는 것입니다.
,
메모리는 일시적 또는 영구적으로 데이터를 저장하는 기능과 효과를 담당합니다.
,
이러한 구성 요소는 서로 데이터를 교환하여 기능과 역할을 수행합니다.
.
하드웨어 시스템 소프트웨어가 처리하는 작업을 물리적 기능으로 처리하는 책임.
3. 데이터베이스
특정 기관의 응용 업무에서 공용으로 사용하기 위해 필요한 자료
완벽한, 비중복, 컴퓨터 메모리에 구조화되고 저장되는 데이터 모음입니다.
.
데이터 베이스, 데이터베이스 관리 시스템(DBMS), 사용자 이용 정보,
애플리케이션, 데이터베이스 구축 및 검색, 데이터 언어, 데이터베이스 관리자
다음을 포함하여 구축, 사용 및 관리와 관련된 모든 요소와 그들의 유기적 관계에 대한 일반적인 용어
데이터베이스 시스템이라고 합니다.
.
이들 중 DBMS(데이터베이스 관리 시스템)은
여러 기능을 가진 고도로 복잡한 소프트웨어 프로그램으로서,
데이터베이스 시스템에서 매우 중요한 역할을 합니다.
.
데이터베이스 시스템의 특징
데이터베이스 시스템에는 몇 가지 특성이 있습니다.
.
하나) 실시간 접근성
오늘날 급변하는 환경 속에서, 데이터베이스는 실시간으로 처리하고 대응할 수 있어야 합니다.
.
2) 지속적인 변화
데이터베이스의 상태는 끊임없이 변화하는 실제 세계를 반영해야 하므로 정적이 아니라 동적입니다.
삼) 동시에 공유
데이터베이스의 데이터 요소는 항상 동시에 공유할 수 있도록 처음부터 구성하고 관리해야 합니다.
4) 내용별 인용
데이터 참조는 데이터 내용, 즉, 데이터에 포함된 값에 의해 참조됩니다.
.
데이터베이스 추상화 수준 및 데이터 독립성
데이터베이스 관리 시스템 사용자가 액세스하고 관리할 수 있는 관련 파일 및 프로그램 모음입니다.
.
데이터베이스 시스템의 주요 목적 중 하나는 사용자에게 데이터의 추상적 보기를 제공하는 것입니다.
제공된다.
사용자가 데이터의 물리적 저장 구조 및 유지 관리에 대한 세부 사항을 알지 못하더라도
해당 데이터에 대한 논리적 개념만 사용하여 해당 데이터를 참조할 수 있습니다.
.
데이터 추상화(데이터 추상화)
데이터에 효율적으로 액세스하려면 데이터를 나타내는 복잡한 데이터 구조를 설계해야 합니다.
.
시스템과의 사용자 상호 작용을 용이하게 하기 위해 개발자는
다단계 추상화(추상화 수준)사용할 수 있는 환경 제공.
일반적인 추상화 수준은 아래 그림에 나와 있습니다.
삼단계로 구성되어 있으며 각 추상화 수준의 특징은 다음과 같다.
.
하나) 물리적 수준(물리적 수준)
디스크의 데이터 실린더, 길, 부서의 위치, 데이터 크기, 다른 데이터에 대한 포인터, 데이터 액세스 방법과 같은 물리적 속성을 포함하여 매우 복잡한 저수준 데이터 구조를 자세히 설명합니다.
.
2) 로직 레이어(논리 수준)
데이터베이스를 구성하는 정보의 종류는 데이터베이스 관리자(DBA)가 결정합니다.
논리적 수준에서 데이터 유형과 유형 간에 존재하는 관계를 나타냅니다.
.
따라서 논리적 수준에서 전체 데이터베이스는 물리적 수준에서보다 적은 수의 단순한 구조로 표현됩니다.
.
삼) 보기 수준(보기 수준)
전체 데이터베이스의 일부만 나타냅니다.
. 논리적 수준에서 단순한 구조를 사용함에도 불구하고
데이터베이스의 크기가 크기 때문에 여전히 약간의 복잡성이 있습니다.
.
시스템은 동일한 데이터베이스에 대한 여러 보기를 제공할 수 있습니다.
.
예(예)및 스키마(모델)
데이터베이스는 데이터가 삽입되고 삭제됨에 따라 시간이 지남에 따라 변경됩니다.
.
특정 시점에 데이터베이스에 저장된 데이터 모음을 해당 데이터베이스의 인스턴스라고 합니다.
.
데이터베이스의 전반적인 설계를 데이터베이스 스키마라고 하며 스키마는 자주 변경되지 않습니다.
.
스키마는 프로그래밍 언어의 유형 정의에 해당합니다.
. 주어진 유형의 변수는 주어진 시점에서 특정 값을 갖습니다.
.
그래서, 프로그래밍 언어의 변수 값은 데이터베이스 스키마의 인스턴스에 해당합니다.
.
데이터베이스 시스템은 위에서 논의한 추상화 수준으로 정의할 수 있습니다.
물리적 수준에서 물리적 모델(물리 모드),
논리적 수준에서 논리적 패턴(로직 모드),
보기 수준 하위 패턴(하위 모드) 와 같은 여러 패턴이 있습니다.
.
데이터베이스 시스템은 일반적으로
하나의 물리적 스키마와 하나의 논리적 스키마, 여러 하위 패턴을 지원합니다.
.
데이터 독립성(데이터 독립성)
개략도 삼등급(물리적 수준, 로직 레이어, 보기 수준)존재하다
레벨이 주어지면 상위 레벨 모드에는 영향을 미치지 않습니다.
수준을 변경할 수 있는 속성은 데이터 독립성입니다.
(데이터 독립성)~라고 불리는.
데이터 독립성은 두 가지 범주로 나뉩니다.
.
하나) 물리적 데이터 독립성(물리적 데이터 독립성)
물리적 모드는 애플리케이션 변경을 유발하지 않습니다.
(물리적 계층 아키텍처를 나타냅니다.
)변경할 수 있음을 의미.
때때로 성능 향상을 위해 물리적 변화가 필요합니다.
.
2) 논리적 데이터 독립성(물리적 데이터 독립성)
애플리케이션을 변경하지 않는 논리적 아키텍처(논리적 계층 스키마를 참조합니다.
)변경할 수 있음을 의미.
논리적 수준의 변경은 데이터베이스의 논리적 구조가 변경될 때 발생합니다.
.
데이터베이스 시스템 구성
일반적으로 데이터베이스 시스템은 데이터 모음인 데이터베이스입니다.
, 나만의 데이터베이스 만들기, 작업, 데이터베이스 관리 시스템, 관리 소프트웨어(데이터베이스 관리 시스템), 데이터베이스 관리 시스템에서 기능 실행을 요청하는 수단으로서의 데이터 언어(데이터 언어), 비즈니스 목적으로 데이터베이스에 간접적으로 액세스하는 애플리케이션(애플리케이션), 데이터베이스 관리자, 데이터베이스 전체를 설계하고 관리하는 사람(데이터베이스 관리자), 사용자에는 일반 사용자 및 응용 프로그램 프로그래머가 포함됩니다.
(사용자) 으로 구성되다. 이러한 구성 요소는 필요한 데이터를 저장하고 여러 사용자가 저장된 데이터에 동시에 액세스할 수 있도록 데이터베이스를 설계합니다.
(동시 액세스)데이터에 대한 사용자 액세스(권한)다음과 같이 데이터와 관련된 다양한 작업을 수행하는 데 필수적인 요소입니다.
.
데이터베이스 관리 시스템(DBMS)
애플리케이션, 사용자 및 데이터베이스 간의 데이터 중재자 역할을 합니다.
공유용 데이터베이스를 관리하는 소프트웨어입니다.
.
데이터베이스의 모든 데이터는 DBMS를 통해서만 액세스할 수 있습니다.
.
DBMS는 물리적 데이터베이스를 구성합니다.
, 방법, 데이터 관리 및 유지 관리와 관련된 모든 기능을 담당합니다.
.
원하는 데이터를 요청하기만 하면 됩니다.
데이터베이스 접근 및 처리 결과는 DBMS에서 반환.
DBMS는 데이터를 정의하는 기능입니다.
, 작동 기능제어 기능, 관리 기능 등을 담당합니다.
.
1) 데이터 정의 기능
디자이너가 데이터베이스 언어를 통해 스키마와 뷰를 선언할 수 있는 기능입니다.
.
뷰 선언은 뷰와 논리 스키마 사이의 매핑으로 표현됩니다.
.
2) 데이터 조작 기능
데이터를 검색하거나, 삽입 또는, 삭제 또는, 업데이트된 산술 함수를 나타냅니다.
.
이러한 기능은 사용자 또는 응용 프로그램의 요청에 따라 DBMS에서도 수행됩니다.
.
3) 제어 기능
데이터 조작으로 인한 데이터 간 불일치 방지
합법적인 사용자만 데이터에 액세스할 수 있도록 보장
권한 확인(권한 확인)보안 감각(안전) 기능,
또한 여러 사용자 또는 응용 프로그램이 동시에 데이터에 액세스할 수 있도록 데이터를 관리하는 기능을 의미합니다.
.
4) 데이터 관리 기능
또한 데이터 백업은 손상된 데이터를 원래 상태로 복원합니다.
(지원)그리고 회복(다시 덮다)포함하다.
애플리케이션
여기에는 해당 언어로 작성된 프로그램의 데이터베이스 액세스를 위한 데이터 정의 언어 또는 운영 언어가 포함됩니다.
.
앱은 일반적으로 2단계 번역 프로세스를 거칩니다.
.
1) 응용 프로그램에 포함된 데이터 조작어 부분을 호스트 언어로 변환하고 데이터베이스 관리 시스템에 기능 요청을 한다.
.
프로세스 전처리(전처리) 그것을 일이라고 부르십시오.
2) 일반적인 컴파일 및 링크 과정을 거쳐 실행 가능한 프로그램으로 만들고,
마지막으로 사용자의 실행 명령에 따라 실행되며 데이터베이스 관리 시스템과 상호 작용합니다.
.
사용자
DBMS를 사용하는 모든 사람이 사용자가 됩니다.
.
기능을 요청하는 방법에 따라
일반 사용자, 애플리케이션 프로그래머, 및 데이터베이스 관리자(데이터베이스 관리자) 다음과 같은 세 그룹으로.
1) 일반 사용자는 쿼리 언어나 애플리케이션을 이용하여 직접 또는 간접적으로 데이터베이스를 사용하는 자를 말한다.
.
일반 사용자는 컴퓨터에 대한 특별한 지식이 없습니다.
데이터베이스에 대한 간접 액세스.
2) 응용 프로그램 프로그래머는 일반 사용자가 데이터베이스를 쉽게 사용할 수 있도록 합니다.
호스트 언어와 데이터 조작 언어를 사용하여 비즈니스 지향 응용 프로그램을 개발하는 그룹입니다.
.
삼) 데이터베이스 관리자
데이터베이스 설계,
데이터 정의 언어 사용 생성, 관리,
사용자 요청 및 불만 접수 및 해결
시스템 성능 모니터링 및 조정
전체 데이터베이스 시스템을 감시하고 관리할 책임과 권한을 가진 개인 또는 집단입니다.
.
이 세 가지 유형의 사용자는 데이터베이스에 액세스하는 목적이 다릅니다.
.
일반 사용자는 일반적으로 업무를 수행하기 위해 데이터베이스에 접속하며,
응용 프로그래머는 일반 사용자가 데이터베이스에 쉽게 접근할 수 있도록 프로그램을 제공합니다.
.
데이터베이스 관리자는 전체 데이터베이스 시스템을 모니터링, 조정 및 관리할 목적으로 데이터베이스에 액세스할 수 있습니다.
.
데이터 언어
사용자DBMS와 DBMS 간의 인터페이스 제공.
데이터 언어는 DBMS가 특정 기능을 수행하도록 요청하는 방법입니다.
.
사용자데이터 언어 사용 데이터 정의, 작업, DBMS에서 요청 관리 관련 기능.
DBMS는 자체 기능을 수행하고 그 결과를 사용자에게 반환합니다.
를 제공함으로써 응답 요청.
데이터 언어는 기능 요청 유형과 사용자 인터페이스의 특성에 따라 다릅니다.
데이터 정의 언어(DDL: 데이터 정의 언어),
데이터 조작 언어(DML: 데이터 조작 언어),
검색어(쿼리 언어) 와 같은 세 가지 범주로.
하나) 데이터 정의 언어(DDL)
1-1) 개념 수준의 데이터베이스를 선언합니다.
데이터베이스를 선언하려면 각 개체와 관계를 선언합니다.
객체를 선언할 때 객체의 이름, 속성속성이 취할 수 있는 이름 및 값 유형 선언.
개념적 수준에서 표현된 모든 엔터티 및 속성 DBMS를 통해 각각은 파일 및 필드의 물리적 수준에 매핑됩니다.
.
1-2) 뷰 레벨 뷰를 선언합니다.
다시 말해서데이터베이스 관리 시스템은 DDL에 선언된 객체 및 속성 사용
각 물리 계층 파일과 파일을 구성하는 레코드 필드는 저장 장치에 생성됩니다.
개념적 수준과 물리적 수준 간의 매핑 관계(다시 말해서, 개체 및 파일, 속성과 필드 간의 대응)정보 생성.
데이터 보기는 DDL 선언을 사용하여 개념적 수준에서 선언된 일부 엔터티 및 관계를 중심으로 보기를 만듭니다.
.
2) 데이터 조작 언어(DML)
데이터 조작은 정보 검색, 새로 생성된 정보 삽입, 데이터 업데이트, 불필요한 데이터 삭제 작업 등을 말합니다.
.
DML을 통해 사용자는 DBMS를 생성할 수 있습니다.
데이터 조작 기능을 수행하기 위한 요청을 위한 언어입니다.
.
그래서 DML 검색, 끼워 넣다, 고쳐 쓰다, 삭제를 요청하는 명령어로 구성.
DML에는 두 가지 언어가 있습니다.
2-1) 프로그램 조작 언어: 조작 방법을 단계별로 말하십시오.
2-2) 비절차적 조작어: 세부 절차를 제시하지 않음 데이터의 조건과 주제의 내용만 렌더링 -> 데이터 조작
삼) 쿼리 언어
사용자가 DBMS가 데이터 생성 및 액세스를 수행하도록 허용하는 두 가지 방법이 있습니다.
.
1) 해당 언어로 작성된 응용 프로그램에 DDL 또는 DML을 포함하여 데이터에 액세스하는 방법입니다.
.
또는 DML을 포함하는 애플리케이션 작성을 위한 범용 언어인 호스트 언어.(호스트 언어)설명하다.
2) 사용자가 쿼리 언어를 통해 DBMS 기능을 직접 요청하는 방식이다.
.
DBMS는 사용자가 DBMS에서 직접 기능을 요청할 수 있는 인터페이스를 제공합니다.
.
이 인터페이스에서 사용자는 쿼리를 요청하여 데이터 액세스를 요청합니다.
.
쿼리 언어에는 데이터를 정의, 조작 및 관리하기 위한 명령이 포함되어 있습니다.
.
4. 컨셉 디자인(컨셉 디자인)
데이터베이스 설계의 첫 단계로, 요구 사항을 수집하고 개념 모델을 구축하는 프로세스입니다.
.
이 단계에서는 데이터베이스에서 관리해야 하는 데이터와 이들 간의 관계를 식별하고 결정합니다.
, 논리적으로 표현.
개념 설계의 주요 단계는 다음과 같습니다.
.
1) 요구 사항 수집: 비즈니스 요구 사항 수집 및 분석.
사용자 및 도메인 전문가와 대화하여 데이터베이스에 어떤 정보가 필요한지 알아내고,, 데이터 요구 사항 문서 만들기.
2) 개념 모델링: 수집된 요구 사항을 기반으로 개념 모델 구축.
개념적 모델은 비즈니스 프로세스입니다.
, 데이터 구조, 관계 포함, 이것 응급실그래픽으로 표현.
3) 확인 및 수정: 구축된 개념 모델의 유효성을 검사하고 필요한 수정을 합니다.
.
다양한 비즈니스 시나리오를 시뮬레이션하여 모델을 검증합니다.
, 수리가 필요한 부분 파악.
4) 모델 문서: 구축된 개념 모델을 문서화하고, 관련 설계 결정 및 이유 문서화.
이는 추후 물리적인 데이터베이스를 설계할 때 중요한 참고 자료가 됩니다.
.
5. ER 모델링
ER 모델링은 Entity-Relationship Modeling의 약자입니다.
엔터티 간의 관계를 사용하여 데이터를 나타내는 방법입니다.
ER 모델링은 엔티티, 관계 및 속성의 개념을 사용합니다.
- 엔터티: 정보 시스템에서 표현되는 사물, 개념 또는 사람.
예를 들어, 학생, 교수, 과목 등은 모두 가능한 개체입니다.
- 관계: 엔터티 간의 연결을 나타냅니다.
예를 들어, 학생과 과목의 수업 관계, 교수와 과목의 강의 관계 등이 될 수 있다.
- 속성: 엔터티 또는 관계의 특성을 나타내는 데이터입니다.
예를 들어 학생의 ID 번호, 이름, 주소 등이 모두 속성일 수 있습니다.
ER 모델링에서는 ERD(Entity Relationship Diagram)가 주로 사용됩니다.
ERD에서 엔터티는 사각형, 관계는 다이아몬드, 속성은 타원으로 표시됩니다.
객체와 관계는 선으로 연결되고 속성은 객체와 연결된 선에 표시됩니다.
ER 모델링을 사용하여 데이터베이스를 설계하면 데이터의 구조와 관계를 명확하게 이해할 수 있습니다.
데이터 중복을 줄일 수 있어 효율적인 데이터 관리가 가능합니다.
6. 데이터베이스가 필요한 실용화
은행 업무 및 재원 : 고객 계정 정보, 거래기록, 대출 정보, 보안 등
온라인 쇼핑 및 전자 상거래 : 대량의 제품 및 주문 정보를 저장합니다.
, 고객 정보, 결제 정보 등
보건 의료 : 환자 정보, 의료 기록, 처방 및 진단 정보 등
항공 화물 : 비행 일정, 비행 정보, 승객 명단, 좌석 및 운임 안내 등
정부와 대중 : 공공 안전, 인구통계, 건강과 웰빙, 지리정보시스템 등
인터넷 서비스 제공자(인터넷 서비스 제공자): 네트워크 및 사용자 관리, 계정 정보, 이메일 등
호텔과 여행 : 고객 예약 정보, 호텔 및 항공편 정보, 수수료 등
소매 : 재고 관리, 판매 추적 및 고객 정보 등
물류 센터 : 제품 및 재고 정보, 교통 경로 정보, 인적자원관리 등
보안 및 법률 : 범죄 정보, 법적 문서 및 기록, 보안 카메라 렌즈 등
게임 및 엔터테인먼트 : 게임 데이터, 사용자 정보, 게임 로그 등
에너지와 자원 : 리소스 정보, 산출, 판매 등
건설 및 부동산 : 건설 프로젝트 정보, 건물 및 부동산 정보, 거래정보 등
운동가 다운 : 플레이어 정보, 경기 일정, 티켓 정보 등
엔터프라이즈 데이터 관리: 주문하다, 판매, 재고, 인사말, 금융 등
의료 분야: 환자 정보, 의료 기록, 진단 정보 등
교육 분야: 학생 정보, 교사 정보, 학술 정보 등