티스토리 뷰
1. dbca ( Database Configuration Assistance )
- Oracle Instance + Databases(진짜 데이터가 들어가 있는 파일) => dbca
2. 데이터 / 정보 / 지식의 정의
- 데이터 : 관찰의 결과로 나타나는 정량적 혹은 정성적인 실제 값 ( 관측치 )
- Ex. 에베레스트 산의 높이는 8,848m이다.
- 정보 : 데이터에 의미를 부여한 것
- Ex. 에베레스트는 세계에서 가장 높은 산이다.
- 지식 : 사물이나 현상에 대한 이해
- Ex. 에베레스트 보고서
3. 데이터베이스
- 데이터베이스는 조직에 필요한 정보를 얻기 위해 논리적으로 연관된 데이터를 모아 구조적으로 통합해 놓은 것을 의미한다.
- Ex. 학생 데이터를 모아 학사 데이터베이스에 통합해 놓거나, 신용카드 데이터를 모아 은행 데이터베이스에 통합해 놓은 것을 말한다.
- 데이터베이스 시스템(DBS)는 데이터의 검색과 변경 작업을 주로 수행한다.
- 변경이란 시간에 따라 변하는 데이터의 값을 데이터베이스에 반영하기 위해 수행하는 삽입, 삭제, 수정 등의 작업을 의미한다. (CRUD 작업)
- 검색과 변경 빈도에 따른 데이터베이스의 유형은 4개로 구분된다.
- (1) 유형 1 (검색빈도 적음, 변경빈도 적음)
- : 검색이 많지 않아 데이터베이스를 구축할 필요가 없으며, 보존가치가 있는 경우에 구축한다. ( ex. 역사 데이터베이스, 공룡 데이터베이스 )
- (2) 유형 2 (검색빈도 많음, 변경빈도 적음)
- : 사용자 수는 보통으로, 검색은 많지만 데이터에 대한 변경을 적을 때 사용한다. ( ex. 도서 데이터 베이스 )
- (3) 유형 3 (검색빈도 적음, 변경빈도 많음)
- : 예약 변경/취소 등 데이터 변경은 많지만 검색은 적음, 검색은 변경을 위해 먼저 시도된다.
- : 실시간 검색 및 변경이 중요하다. ( ex. 비행기 예약 데이터베이스 )
- (4) 유형 4 (검색빈도 많음, 변경빈도 많음)
- : 사용자 수가 많으며, 검색도 많고 거래로 인한 변경도 많다. ( ex. 증권 데이터베이스 )
- 유형 1이 가장 쉬우며 유형 4로 갈수록 점점 구축이 어려워진다.
4. 데이터베이스의 개념
- 1) 통합된 데이터 ( integrated data )
- : 데이터를 통합하는 개념으로, 각자 사용하던 데이터의 중복을 최소화하여 중복으로 인한 데이터 불일치 현상을 제거한다.
- 2) 저장된 데이터 ( stored data )
- : 문서로 보관된 데이터가 아니라 디스크, 테이프 같은 컴퓨터 저장장치에 저장된 데이터를 의미한다.
- 3) 운영 데이터 ( operational data )
- : 조직의 목적을 위해 사용되는 데이터를 의미한다. 즉, 업무를 위한 검색을 할 목적으로 저장된 데이터를 의미한다.
- 4) 공용 데이터 ( shared data )
- : 한 사람 또는 한 업무를 위해 사용되는 데이터가 아니라 공동으로 사용되는 데이터를 의미한다.
5. 데이터베이스의 특징
- 1) 실시간 접근성
- : 데이터베이스는 실시간으로 서비스된다. 사용자가 데이터를 요청하면 몇 시간이나 몇 일 뒤에 결과를 전송하는 것이 아니라 수 초 내에 결과를 서비스한다.
- 2) 계속적인 변화
- : 데이터베이스에 저장된 내용은 어느 한 순간의 상태를 나타내지만, 데이터의 값은 시간에 따라 항상 바뀐다.
- 3) 동시 공유
- : 데이터베이스는 서로 다른 업무 또는 여러 사용자에게 동시에 공유된다. 동시는 병행이라고도 하며, 데이터베이스에 접근하는 프로그램이 여러 개 있다는 의미이다.
- 4) 내용에 따른 참조
- : 데이터베이스에 저장된 데이터는 물리적인 위치가 아니라 데이터의 값에 따라서 참조된다.
6. 데이터베이스 시스템(DBS)를 구성하는 3가지
- 1) DBMS : 사용자와 데이터베이스를 연결시켜주는 소프트웨어
- 2) 데이터베이스 : 데이터를 모아둔 토대
- 3) 데이터 모델 : 데이터가 저장되는 기법에 관한 내용
7. 정보 시스템의 발전
- 1) 파일 시스템
- : 데이터를 파일 단위로 파일 서버에 저장한다.
- : 각 컴퓨터는 LAN을 통해서 파일 서버에 연결되어 있고, 파일 서버에 저장된 데이터를 사용하기 위해 각 컴퓨터의 응용 프로그램에서 열기/닫기를 요청한다.
- : 각 응용 프로그램이 독립적으로 파일을 다루기 때문에, 데이터가 중복 저장이 될 가능성이 있다.
- : 동시에 파일을 다루기 때문에 데이터의 일관성이 훼손될 수 있다.
- 2) 데이터베이스 시스템
- : DBMS를 도입하여 데이터를 통합 관리하는 시스템이다.
- : DBMS가 설치되어 데이터를 가진 쪽을 서버, 외부에서 데이터를 요청하는 쪽을 클라이언트라고 한다.
- : DBMS 서버가 파일을 다루며, 데이터의 일관성을 유지, 복구, 동시 접근 제어 등의 기능을 수행한다.
- : 데이터의 중복을 줄이고, 데이터를 표준화하며 무결성을 유지한다.
- 3) 웹 데이터베이스 시스템
- : 데이터베이스를 웹 브라우저에서 사용할 수 있도록 서비스하는 시스템이다.
- : 불특정 다수 고객을 상대로 하는 온라인 상거래나 공공민원 서비스 등에 사용
- 4) 분산 데이터베이스 시스템
- : 여러 곳에 분산된 DBMS 서버를 연결하여 운영하는 시스템이다.
- : 대규모의 응용 시스템에 사용된다.
8. 데이터베이스 시스템(DBS)의 구성 – 물리적인 구조
- DBS는 데이터베이스 언어, 데이터베이스 사용자, DBMS, 데이터 모델, 데이터베이스의 개념적 구조로 구성되어 있다.
- 데이터베이스는 데이터 파일, 인덱스, 데이터 통계, 데이터 사전으로 구성되어 있는데, 이때 데이터 사전은 데이터베이스와 관련된 모든 정보를 의미한다.
- DBMS에 있는 질의처리기는 optimizer이라고도 부르는데, 데이터베이스 엔진으로 여러 유형의 사용자가 보낸 SQL문장을 최적화하여 최대한 빠르게 처리하고 응답할지를 고려한다.
9. 데이터베이스 언어 ( SQL )
- 데이터베이스의 언어를 SQL라고 부르며, 종류로는 데이터 정의어(DDL), 데이터 조작어(DML), 데이터 제이어(DCL)이 있다.
10. DBMS의 기능 ( ex. 오라클 )
- 1 ) 데이터 정의
- : 데이터의 구조를 정의하고 데이터 구조에 대한 삭제 및 변경 기능을 수행한다.
- 2 ) 데이터 조작
- : 데이터를 조작하는 소프트웨어(응용 프로그램)가 요청하는 데이터의 삽입, 수정, 삭제 작업을 지원한다.
- 3 ) 데이터 추출
- : 사용자가 조회하는 데이터 혹은 응용 프로그램의 데이터를 추출한다.
- 4 ) 데이터 제어
- : 데이터베이스 사용자를 생성하고 모니터링하며 접근을 제어한다. 백업과 회복, 동시성 제어 등의 기능을 지원한다.
11. 데이터 모델 ( 1장 )
- 데이터 모델의 종류 : 1. 계층형 2. 네트워크형 3. 객체형 4. 관계형 5. 객체-관계형
- 현업에서는 관계 데이터 모델이 가장 많이 사용된다.
- 1 ) 포인터를 사용하여 관계를 표현 : 계층 데이터 모델, 네트워크 데이터 모델
- + 계층형은 위에서 아래로 밖에 못 가는 반면, 네트워크형은 길만 생성되어 있으면 자유롭게 움직일 수 있다.
- + 하지만 네트워크형도 거미줄처럼 연결되어 모델의 복잡도가 높아 잘 사용되지 않는다.
- + 포인터에는 주소가 들어가게 된다.
- 2 ) 속성 값 사용 : 관계 데이터 모델
- + 포인터를 사용하는 것이 아니라, 속성 값(key 값)을 사용하였기에 주소를 따라가는 것이 아니라 더 명확하고 빠르게 처리할 수 있다.
- 3 ) 객체식별자 사용 : 객체 데이터 모델
- + 객체식별자를 사용하여 다른 객체의 식별자를 저장한다.
12. 3단계 데이터베이스 구조 ( 3-tier Database Architecture ) – 논리적인 구조
- 3단계 데이터베이스는 1. 내부 스키마 2. 개념 스키마 3. 외부 스키마로 구성
- 이때 스키마는 구조를 의미한다. ( 각자 어떤 구조를 지니고 있는지 )
- 각각의 스키마를 구분한 이유는, 각자의 스키마를 구분함으로써 서로 간의 간섭을 최소화시키기 위해서이다.
- 1 ) 외부 스키마 ( 논리적 )
- : 일반 사용자나 응용 프로그래머가 접근하는 계층으로 전체 데이터베이스 중에서 하나의 논리적인 부분을 의미한다.
- : 여러 개의 외부 스키마가 존재할 수 있으며, 서브 스키마라고도 하며 뷰(view)의 개념이다.
- 2 ) 개념 스키마 ( 논리적 )
- : 전체 데이터베이스의 정의를 의미하며, 통합 조직별로 하나만 존재하며 DBA가 관리한다.
- : 하나의 데이터베이스에는 하나의 개념 스키마가 존재한다.
- 3 ) 내부 스키마 ( 물리적 )
- : 물리적 저장 장치에 데이터베이스가 실제로 저장하는 방법의 표현
- : 내부 스키마는 1개이며, 인덱스 / 데이터 압축 등에 관한 사항이 포함된다.
13. 데이터의 독립성
- 1 ) 논리적 데이터 독립성
- : 외부단계(외부 스키마)와 개념 단계(개념 스키마) 사이의 독립성
- : 개념 스키마가 변경되어도 외부 스키마에는 영향을 미치지 않도록 지원한다.
- : 논리적 구조가 변경되어도 응용 프로그램에는 영향이 없도록 하는 개념
- : 개념 스키마의 테이블을 생성하거나 변경하여도 외부 스키마가 직접 다루는 테이블이 아니면 영향이 없다.
- 2 ) 물리적 데이터 독립성
- : 개념 단계(개념 스키마)와 내부 단계(내부 스키마) 사이의 독립성
- : 저장장치 구조 변경과 같이 내부 스키마가 변경되어도 개념 스키마에 영향을 미치지 않도록 지원한다.
- : 성능 개선을 위하여 물리적 저장 장치를 재구성할 경우 개념 스키마나 응용 프로그램 같은 외부 스키마에 영향이 없다.
- : 물리적 독립성은 논리적 독립성보다 구현하기 쉽다.
'KH 정보교육원 [ Java ]' 카테고리의 다른 글
KH 36일차 - 데이터 모델링 (0) | 2022.04.18 |
---|---|
KH 35일차 - 관계 데이터 모델 (0) | 2022.04.15 |
KH 33일차 - 자바 표준 API (0) | 2022.04.13 |
KH 32일차 - 데이터 베이스 ( Oracle SQL Developer ) (0) | 2022.04.12 |
KH 31일차 - 네트워킹 (0) | 2022.04.11 |