-
3-2. 물리 데이터 저장소 설계 ~ 3-3. 데이터베이스 기초 활용공부 일기/정보처리기사 실기 2024. 7. 18. 00:47728x90
1-1. 요구사항 분석 https://minjh1126.tistory.com/44
1-2. 현행시스템 분석 https://minjh1126.tistory.com/45
1-3. 요구사항 확인 https://minjh1126.tistory.com/46
2-1. UI 요구사항 확인 https://minjh1126.tistory.com/47
2-2. UI 설계 https://minjh1126.tistory.com/48
3-1. 논리 데이터 저장소 확인 https://minjh1126.tistory.com/54
7-1. 데이터베이스 기본 https://minjh1126.tistory.com/49
7-2. 응용 SQL 작성하기 https://minjh1126.tistory.com/50
8-1. 개발환경 구축 https://minjh1126.tistory.com/51
8-2. 공통 모듈 구현 https://minjh1126.tistory.com/52
9-1. 소프트웨어 개발 보안 설계 https://minjh1126.tistory.com/53
9-2. 소프트웨어 보안 개발 구현 https://minjh1126.tistory.com/55
10-1. 애플리케이션 테스트 케이스 설계 https://minjh1126.tistory.com/56
1. 물리 데이터 모델 설계
1. 물리 데이터 모델링 변환 절차
- 개체를 테이블로 변환: 테이블과 개체 명칭을 동일하게 하고 한글 사용. 테이블은 영문.
- 속성을 컬럼으로 변환: 표준화된 약어를 사용하고 명칭을 짧게 사용.
- UID를 기본키로 변환: UID에 해당하는 모든 속성을 기본키로 선언하고 제약 조건을 추가로 정의. 외래키가 기본키에 포함될 수 있음.
- 관계를 외래키로 변환: 기본키 이름 그대로 사용하고 순환 관계에서는 자신의 기본 키를 외래키로 정의.
- 컬럼 유형과 길이: CHAR(고정길이 문자열, 2000바이트), VARCHAR2(가변 길이 문자열, 4000바이트), NUMBER(38자리수의 숫자), DATE(날짜), BLOB/CLOB(바이너리, 텍스트 데이터)
- 반 정규화
2. 물리 데이터 저장소 구성
1. 무결성
- 데이터베이스 무결성 종류
- 개체 무결성: 한 엔터티에서 같은 기본키를 가질 수 없고 기본키가 NULL이 되어서는 안 됨.
- 참조 무결성: 외래키가 참조하는 다른 개체의 기본키에 해당하는 값이 기본 키나 NULL이 되어야 함.
- 속성 무결성: 속성의 값은 기본값, NULL 여부, 도메인 등의 규칙을 준수해야 함.
- 사용자 정의 무결성: 사용자의 의미적 요구사항을 준수해야 함.
- 키 무결성: 한 릴레이션에 같은 키 값을 가진 튜플은 허용되지 않음.
2. 키
- 특성
- 유일성: 식별자에 의해 엔터티 내의 모든 튜플들을 유일하게 구분.
- 최소성: 최소한의 속성 수로 구분.
- 종류
- 기본키: 각 튜플을 고유하게 식별.
- 대체키: 후보키 중 선택되지 않은 키.
- 후보키: 튜플을 구별하는데 기준이 되는 속성. 기본키와 대체키를 합침.
- 슈퍼키: 유일성은 만족하지만 최소성은 만족하지 못함.
- 외래키: 참조 데이터 무결성을 위한 제약 조건으로 다른 릴레이션의 기본키로 사용됨.
3. 파티셔닝
- 파티셔닝: 테이블 또는 인덱스 데이터를 파티션 단위로 나눔.
- 유형
- 레인지 파티셔닝: 연속적인 숫자나 날짜를 기준으로 나눔. 관리가 손쉽고 관리 시간이 단축됨.
- 해시 파티셔닝: 파티션 키의 해시 함수 값에 의한 파티셔닝. 균등한 데이터분할이 가능하고 질의 성능 향상이 가능.
- 리스트 파티셔닝: 특정 파티션에 저장될 데이터에 대한 명시적 제어가 가능. 분포도가 비슷하고 데이터가 많은 SQL에서 컬럼의 조건이 많을 때 유용.
- 컴포지트 파티셔닝: 세 종류 중 두가지 이상 결합해 사용. 큰 파티션에 대한 요청을 다른 파티션을 분산 가능.
- 라운드 로빈: 라운드로빈으로 회전하며 새로운 행을 파티션에 할당.
3-3. 데이터베이스 기초 활용
1. 데이터베이스 종류
1. 데이터베이스
- 데이터베이스 정의: 통합된 데이터, 저장된 데이터, 운영 데이터, 공용 데이터
- 특성
- 실시간 접근성
- 계속적인 변화: 새로운 데이터의 삽입, 삭제, 갱신으로 항상 최신의 데이터 유지
- 동시 공용: 다수의 사용자가 동시에 같은 데이터 이용 가능
- 내용 참조: 데이터를 참조할 때 내용으로 데이터를 참조
- 종류
- 파일 시스템: 파일의 이름, 위치 등을 정의하고 관리
- 종류
- ISAM: 자료 내용은 주 저장부, 색인은 자료가 기록된 위치와 함께 색인부에 기록
- VSAM: 대형 운영체제에서 사용
- 종류
- 관계형 데이터베이스 관리 시스템(RDBMS): 가장 보편화된 데이터베이스. 테이블의 일부를 다른 테이블과 상하 관계로 표시. 오라클, SQL Server, MySQL, Maria DB등.
- 계층형 데이터베이스 관리시스템(HDBMS): 데이터를 상하 종속적 관계로 계층화해 관리. 접근 속도가 빠르지만 변화하는 데이터 구조에 유연하지 않음. IMS, System2000 등.
- 네트워크 데이터베이스 관리시스템(NDBMS): 데이터 구조를 네트워크 망상 형태로 표현. 트리 구조나 계층형 DBMS보다는 유연하지만 설계가 복잡. IDS, IDMS 등.
- 파일 시스템: 파일의 이름, 위치 등을 정의하고 관리
2. DBMS
- 유형
- 키-값 Store DBMS: 키 기반으로 GET, PUT, DELETE 제공. 메모리 기반에서 성능 우선 시스템이나 빅테이터 처리 가능. 유니크한 키에 하나의 값을 가짐.
- 컬럼 기반 데이터 저장 DBMS: 키 안에 (컬럼, 값) 조합으로된 여러 필드를 가짐. 테이블 기반, 조인 미지원, 컬럼 기반.
- 문서 저장 DBMS: 값의 데이터 타입이 문서. 문서는 XML, JSON 같이 구조화된 타입으로 복잡한 계층구조 표현 가능.
- 그래프 Store DBMS: 시맨틱 웸, 온톨로지 분야에서 활용. 데이터로 표현해 노드와 엣지로 특징되는 요소 특화하고 구조화.
- 특징
- 데이터 무결성: 부적절한 자료가 입력돼 동일한 내용에 대해 다른 데이터가 저장되는 걸 허용하지 않음.
- 데이터 일관성: 삽입, 삭제, 갱신, 생성 후에도 저장된 데이터가 변함없이 일정.
- 데이터 회복성: 장애가 발생해도 특정 상태로 복구.
- 데이터 보안성: 불법적 노출, 변경, 손실로부터 보호.
- 데이터 효율성: 응답 시간, 저장 공간 활용 등이 최적화되어 요구조건들을 만족.
3. 빅데이터
- 빅데이터: 수십 페타바이트 크기의 비정형 데이터.
- 특성
- 데이터의 양(volume): 페타바이트 수준으로 디지털 정보량이 기하급수적으로 폭증.
- 데이터의 다양성(variety): 정형, 비정형, 반정형 등 다양한 데이터가 들어옴.
- 데이터의 속도(velocity): 빠르게 증가하고 수집되며 처리됨. 실시간 분석이 중요해짐.
- NoSQL: 전통적인 RDMS와 다른 DBMS를 지칭하기 위한 용어로 테이블 스키마와 조인 연산을 사용하지 않고 수평적으로 확장이 가능.
- 특성
- Basically Available: 언제든지 데이터는 접근할 수 있어야함. 분산 시스템이기 때문에 가용성 중시.
- Soft-State: 노드의 상태는 외부에서 전송된 정보를 통해 결정됨. 특정 시점에서는 데이터 일관성이 보장되지 않음.
- Eventually Consistency: 일정시간이 지나면 데이터 일관성이 유지됨.
- 유형
- key-value store: 유니크한 키 하나에 값을 가짐. 키 기반 get, put, delete 제공.
- Column Family Data Store: 키 안에 (컬럼, 값) 조합으로 여러 필드를 가짐.
- Document Store: 값의 데이터 타입이 문서(Document).
- Graph Store: 시맨틱 웹가 온톨로지 분야에서 활용되는 그래프로 표현.
- 특성
- 데이터 마이닝: 대규모의 데이터 안에서 체계적이고 자동적으로 규칙이나 패턴을 찾아냄.
- 절차: 목적 설정, 데이터 준비, 가공, 마이닝 기법 적용, 정보 검증
- 주요 기법
- 분류 규칙: 과거 데이터로부터 특성을 찾아내 분류 모형을 만들어 새로운 레코드의 결과 값을 예측.
- 연관 규칙: 데이터 안의 항목들 간 종속 관계를 찾아냄.
- 연속 규칙: 연관 규칙에 시간 관련 정보가 포함됨.
- 데이터 군집화: 대상 레코드를 유사한 특성을 지닌 소그룹으로 분할하는 작업으로 분류 규칙과 유사. 정보가 없는 상태에서 데이터를 분류하는 기법이고 분석 대상에 결괏값이 없음.
728x90'공부 일기 > 정보처리기사 실기' 카테고리의 다른 글
5. 인터페이스 구현 (0) 2024.07.19 4. 통합 구현 (0) 2024.07.19 10-1. 애플리케이션 테스트 케이스 설계 (0) 2024.07.16 9-2. 소프트웨어 보안 개발 구현 (0) 2024.07.16 3-1. 논리 데이터 저장소 확인 (0) 2024.07.14