하루루카
루카의 개발 일지
하루루카
전체 방문자
오늘
어제
  • 분류 전체보기 (61)
    • React (10)
    • vue.js (5)
    • javascript (6)
    • 자격증 (5)
    • 기타 (7)
    • 코딩테스트 (11)
    • 프론트 CS (15)
    • NodeJs (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 11655
  • 프론트엔드
  • codedeploy
  • socket
  • 자바스크립트
  • jest
  • VUE
  • nextjs
  • node
  • 기술면접
  • 코딩테스트
  • vuex
  • AWS
  • 백준
  • react
  • nodejs
  • vuetify
  • express
  • GithubActions
  • CI/CD

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
하루루카

루카의 개발 일지

자격증

정보처리기사 실기 3과목 요약

2022. 5. 1. 15:07

3단원 데이터 입출력 구현

  1. 데이터 모델
    1. 데이터 모델은 현실세계의 정보를 인간과 컴퓨터가 이해할수 있도록 추상화 하여 표현한 모델
    2. 데이터 모델 표시 요소
      1. 연산 : 데이터 베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세
      2. 구조 : 논리적으로 표현될 대상으로서이 개체 타입과 개체 타입관의 관계
      3. 제약조건 : 데이터베이스에 저장될수잇는 실제 데이터의 논리적인 제약조건
    3. 데이터 모델 절차(요개논문)
      1. 요구사항 분석 : 요구사항간 상충을 해결하고 범위를 파악하여 외부 환경관의 상호 작용 분석을 통해 데이터에 대한 요구 분석
      2. 개념적 설계 : 사용자 요구에 대한 트랜잭션을 모델링하는 단계
      3. 논리적 설계 : 트랜잭션의 인터페이스를 설계하는단계, 논리적 스키마를 설계하는단계
      4. 물리적설계 : DBMS의 특성 및 성능을 고려하여 물리적인 스키마를 만드는 단계
  2. 논리 데이터 모델 검증
    1. 개념 : 업무의 모습을 모델링 표기법으로 형상화하여 사람이 이해하기 쉽게 표현하는 프로세스
    2. 종류
      1. 관계 데이터 모델 : 2차원 테이블 형태로 구성된모델,1:1,1:N,N:M 관계를 자유롭게 표현
      2. 계층 데이터 모델 : 논리적 구조가 트리 형태로 구성된 모델, 상하관계 존재, 1:N만 허용
      3. 네트워크 데이터 모델 : 그래프 형태로 구성된 모델,CODASYL DBTG 모델,N:M관게
    3. 관계 데이터 모델
      1. 개념 : 행과 열로 구성된 2차원 테이블 형태로 구성한 모델
      2. 구성요소
        1. 릴레이션(Relation) : 행 과 열로 구성된 테이블
        2. 튜블(Tuple) : 릴레이션이 행에 해당되는 요소
        3. 속성(Attribute) : 릴레이션의 열에 해당하는 요소
        4. 카디널리티(Cardinality) : 튜플의 슈
        5. 차수(Degree) : 애트리뷰트의 슈
        6. 스키마(Schema) : 구조,제약조건등의 정보를 담고있는 기존적인 구조
        7. 인스턴스(Instance) : 실제 저장된 데이터의 집합
      3. 관계 대수
        1. 관계형 데이터베이스에서 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적 정형 언어
        2. 연산자의 종류
          1. 일반 집합 연산자(합교차카)
            1. 합집합 : 합병 가능한 두릴레이션 R과 S의 합집합
            2. 교집합 : 릴ㄹ레이션 R과 S에 속하는 모든 튜플로 결과 릴레이션 구성
            3. 차집합 : R에 존재하고 S에 미존재하는 튜플로 결과 릴레이션 구성
            4. 카티션 프로덕트 : R과 S에 속한 모든 튜플을 연결해 만들어진 새로운 튜플로 릴레이션 구성
          2. 순수 관계 연산자(셀프조디)
            1. 셀렉트 : 릴레이션 R에서 조건을 만족하는 튜플 반환
            2. 프로젝트 : 릴레이션R에서 주어진 속성들의 값으로만 구성된 튜플 반환
            3. 조인 : 공통속성을 이용해 R과 S의 튜플들을 연결해 만들어진 튜플 반환
            4. 디비전 : 릴레이션S의 모든 튜플과 관련있는 R의 튜플반환
      4. 관계 해석
        1. 튜플 관계 해석과 도메인 관계 해석을 하는 비절차적 언어(개속관)
        2. 개체 : 관리할 대상이 되는 실체
        3. 속성 : 관리할 정보의 구체적 항목
        4. 관계 : 개체간의 대응관계
        5. 개체
          1. 사물또는 사건으로 정의되며 개체라고도 한다
        6. 속성
          1. 속성은 개체가 가지고있는 요소 또는 성질
        7. 관계
          1. 두 개체 간의 관계를 정의
      5. 개체관게(ER)모델
        1. 현실 세계에 존재하는 데이터와 그들간의 관게를 사람이 이해할수있느 형태로 명확하게 표현하기 위해서 가장 널리 사용되고있는 모델
      6. 정규화
        1. 데이터의 중복성을 제거하여 이상현상을 방지하고 데이터의 일관성과 정확성을 유지하기 위해 무손실 분해하는 과정
        2. 이상현상(Anomaly)
          1. 데이터의 중복성으로 인해 릴레이션을 조작할때 발생하는 비합리적인 현상
          2. 삽입이상 : 정보 저장시 해당 정보의 불필요한 세부정보를 입력해야 하는 경우
          3. 삭제 이상 : 정보 삭제시 원치 않는 다른 정보가 같이 삭제되는 경우
          4. 갱신 이상 : 중복 데이터중에서 특정부분만 수정되어 중복값이 모순을 일으키는 경우
        3. 정규화단계(원부이 결다조)
          1. 제1저규형 : 원자값으로 구성
          2. 제2정규형 : 부분함수 종속 제거(완전함수적종속관계)
          3. 제3정규형 : 이행함수 종속 제거
          4. 보이스코드 정규형 : 결정자가 후보키가 아닌 함수 종속제거
          5. 제4정규형 : 다치(다중값)종속제거
          6. 제5정규형 : 조인종속제거
      7. 반정규화
        1. 정규화된 엔터티,속성,관게에 대해 성능 향상과 개발 운영의 단순화를 위해 중복,통합,분리 등을 수행하는 데이터 모델링의 기법
        2. 기법
          1. 테이블
            1. 테이블병합 : 1:1 관계,1:M관게를 통합하여 조인 횟수를 줄여 성능을 향상
            2. 테이블분활 : 수직 또는 수평으로 분할하는것으로 파티셔닝이라고함
            3. 중복테이블 추가 : 대량의 데이터들에 대한 집계함수를 사용하여 실시간 통계정보를 계산하는 경우에 효과적인 수행을 위해 별도의 통계 테이블을 두거나 중복테이블을 추가
          2. 컬럼
            1. 컬럼 중복화 : 조인 성능 향상을 위한 중복허용
          3. 관계
            1. 중복관계 추가 : 성능 저하를 에방하기 위해 추가적 관계를 맺는 방법
  3. 물리 데이터 모델 설계
    1. 논리 모델을 적용하고자 하는 기술에 맞도록 상세화해 가는 과정
    2. 물리 데이터 저장소 구성
      1. 참조 무결성 제약 조건
        1. 두개의 릴레이션이 기본키,외래키를 통해 참조 관계를 형성할경우, 참조하는 외래키의 값은 항상 참조되는 릴레이션에 기본키로존재해야한다
        2. 제한(Restricted) : 참조 무결성 원칙을 위배하는 연산을 거절하는 옵션
        3. 연쇄(Cascade) : 참조되는 릴레이션에서 튜플을 삭제하고, 참조되는 릴레이션에서 이 튜플을 참조하는 튜플도 함께 삭제하는 옵션
        4. 널값(Nullify) : 참조되는 릴레이션에서 튜플을 삭제하고, 참조하는 릴레이션에서 해당 튜플을 참조하는 튜플들의 외래키에 NULL값을 넣는 옵션
    3. 인덱스 설계
      1. 개념 : 데이터베이스 내 열에 대한 정보를 구성한 데이터 구조, 전체 데이터 검색 없이 필요한 정보에 대해 신속장 조회가 가능
      2. 인덱스 적용 기준
        1. 인덱스 분포도가 10~15% 이내인 경우 아래 수식을 사용
          1. 분포도 = (1 / (컬럼 값의 종류)) * 100
          2. 분포도 = (컬럼 값의 평균 row수) / (테이블의 총rowtn) * 100
      3. 인덱스 컬럼 선정
        1. 분포도가 좋은 컬럼은 단독적으로 생성
    4. 뷰 설계
      1. 속성
        1. REPLACE : 뷰가 이미 존재하는 경우 재생성
        2. FORCE : 본 테이블의 존재 여부에 관계없이 뷰생성
        3. NOFORCE : 기본 테이블이 존재할때 뷰생성
        4. WITH CHECK OPTION : 서브 쿼리 내이 조건을 만족하는 행만 변경
        5. WITH READ ONLY : 데이터 조작어 작업불가
      2. 고려사항
        1. 뷰 사용에 따라 수행속도에 문제가 발생할수있다
    5. 클러스터(Cluster) 설계
      1. 대상이 되는 범위의 요소를 몇개 모은 단위체
      2. 적용 기준
        1. 인덱스의 단점을 해결한 기법, 분포도가 넓을수록 오히려 유리하다, 엑세스 효율 향상을 위한 물리적 저장 방법
      3. 고려사항
        1. 검색 효율은 높여주나 입력,수정,삭제 시는 부하가 증가
    6. 파티션 설계
      1. 종류(레해리컴라
        1. 레인지 파티셔닝
          1. 연속적인 숫자나 날짜를 기준으로 하는 파티셔닝 기법
          2. 손쉬운 관리 기법을 제공하여 관리 시간의 단축이 가능
        2. 해시 파티셔닝
          1. 파티션의 키의 해시 함수 값에 의한 파티셔닝 기법
          2. 균등한 데이터분할이 가능, 질의 성능이 향상
        3. 리스트 파티셔닝
          1. 특정 파티션에 젖아될 데이터에 대한 명시적 제어가 가능한 파티셔닝 기법
        4. 컴포지트 파티셔닝
          1. 레인지,해시,리스트 중 2개 의상의 파티셔닝을 결합하는 파티셔닝
        5. 라운드 로빈 파티셔닝
          1. 라운드 로빈 분할로 회전하면서 새로운 행이 파티션에 할당하는 방식
      2. 파티션의 장점
        1. 성능향상 : 데이터 엑세스 범이를 줄여 성능향상
        2. 가용성 향상 : 전체 데이터의 훼손 가능성이 감소 및 데이터 가용형 향상
        3. 백업 가능 : 분할 영역을 독립적으로 백업하고 복구가능
        4. 경합 감소 : 디스크 스트라이핑으로 입출력 성능을 향상
  4. 데이터베이스 종류
    1. 개념 : 다수의 인원, 시스템 또는 프로그램이 사용할 목적으로 통합하여 관리되는 데이터 집합
    2. 정의
      1. 통합된 데이터 : 자료의 중복을 배제한 데이터의 모임
      2. 저장된 데이터 : 저장매체에 저장된 데이터
      3. 운영 데이터 : 조직의 업무를 수행하는데 필요한 데이터
      4. 공용 데이터 : 여러 애플리케이션,시스템들이 공동으로 사용하는 데이터
    3. 특성
      1. 실시간 접근성 : 쿼리에 대하여 실시간 응답이 가능해야함
      2. 계속적인변화 : 새로운데이터의 삽입,삭제,갱신으로 항상 최신의 데이터를 유지
      3. 동시 공용 : 다수의 사용자가 동시에 같은 내용의 데이터를 이용할수 있어야함
      4. 내용 참조 : 데이터베이스에 있는 데이터를 참조할때 데이터 레코드의 주소나 위체 의해서가 아니라 사용자가 요구하는 데이터 내용으로 데이터를 찾는다
    4. 종류
      1. 파일시스템
        1. ISAM : 자료 내용은 주저장부, 자료의 색인은 자료가 기록된 위치와 함께 색인부에 기록
        2. VSAM : 대형 운영체제에서 사용되는 파일 관리 시스템
      2. 관계형 데이터베이스시스템(RDBMS)
        1. 관계형 모델을 기반으로 하는 가장 보편화된 데이터베이스 관리 시스템
      3. 계층형 데이터베이스 관리 시스템(HDBMS)
        1. 데이터를 상하 종속적인 관계로 계층화하여 관리하는 데이터베이스
        2. 접근속도가빠르지만 종속적인 구조로 인하여 변화하는 데이터구조에 유연하게 대응하기가 쉽지 않다
      4. 네트워크 데이터베이스 시스템(NDBMS)
        1. 네트워크상의 망상 형태로 표현한 데이터 모델
    5. DBMS
      1. 개념 : 데이터 관리의 복잡성을 해결하는 동시에 데이터 추가, 변경,검색, 삭제 및 백업, 복구,보안등의 기능을 지원하는 소프트웨어
      2. 유형
        1. 키값DBMS : 키 기반 GET/Put/DELETE 제공
        2. 컬럼 기반 데이터 저장 : key안에 조합으로 된 여러개의 필드를 갖는 DBMS
        3. 문서 저장 DBMS : 값의 데이터 타입이 문서라는 타입을 사용하는 DBMS
        4. 그래프 DBMS : 시맨틱 웹과 온톨로지 분야에서 활용되는 그래프로 데이터를 표현하는 DBMS
      3. 특징
        1. 무결성 : 동일한 내용에 대하여 서로 다른 데이터가 저장되는것을 허용하지 않는 성질
        2. 일관성 : 삽입,삭제,갱신,생성 후에도 저장된 데이터가 변함없이 일정
        3. 회복성 : 장애가 발생하였을 시 특정 상태로 복구되어야 하는 성질
        4. 보안성 : 불법적인 노출,변경,손실로부터 보호되어야 하는 성질
        5. 효율성 : 사용자,소프트웨어,시스템등의 요구조건을 만족시켜야 하는 성질
  5. 빅데이터
    1. 시스템,서비스,조직 등에서 주어진 비용, 시간 내에 처리 가능한 데이터 범위를 넘어서는 수십 페타바이트 크기의 비정형 데이터
    2. 특성
      1. 데이터의 양
      2. 데이터의 다양성
      3. 데이터의 속도
    3. 수집,저장,처리 기술
      1. 비정형/반정형 데이터 수집
      2. 정형 데이터 수집
      3. 분산 데이터 저장/처리
      4. 분산데이터베이스
    4. 주요기술
      1. 빅데이터 분석,빅데이터 실시간 처리,분산 코디네이션,분석 및 시각화
  6. NoSQL
    1. 전통적인 RDBMS와 다른 DBMS를 지칭하기 위한 용어, 고정된 테이블 스키마가 필요하지 않고 조인 연산을 사용하수 없으며, 수평적으로 확장이 가능한 DBMS
    2. 특성
      1. Basically Available : 언제든지 데이터는 접근할 수 있어야하는 속성
      2. Soft-state : 노드의 상태는 내부에 포함된 정보에 의해 결정 되는 것이 아니라 외부에서 전송된 정보를 통해결정되는 속성
      3. Eventually Consistency : 일정 시간이 지나면 데이터의 일관성이 유지되는 속성
    3. 유형
      1. Key-value store : unqiue한 key에 하나의 value를 가지고 있는 형태
      2. Column Family Data Store : key안에 조합으로 된 여러개의 필드를 갖는 DB
      3. Document Store : value 의 데이터 타입이 Document라는 타입을 사용하는 DB
      4. Grpach Store : 시맨틱 웹과 온톨로지 분야에서 활용되는 그래프로 데이터를 표현하는 DB
  7. 데이터 마이닝
    1. 대규모로 저장된 데이터 안에서 체계적이고 자동적으로 통계적 규칙이나 패턴을 찾아내는 기술
    2. 주요 기법
      1. 분류 규칙(Classification) : 과거 데이터로부터 특성을 찾아내어 분류모형을 만들어 이를 토대로 새로운 레코드의 결과 값을 예측하는 기법
      2. 연관규칙(Association) : 데이터안에 존재하는 항목들 간의 종속관계를 찾아내는 기법
      3. 연속규칙(Sequence) : 연관 규칙에 시간 관련 정보가 포함된 형태의 기법
      4. 데이터 군집화(Clustering) : 데이터 레코드들을 유사한 특성을 지닌 몇개의 소그룹으로 분할하는 작업으로 작업의 특성이 분류규칙과 유사

'자격증' 카테고리의 다른 글

정보처리기사 실기 5과목 요약  (0) 2022.05.01
정보처리기사 실기 4과목 요약  (0) 2022.05.01
정보처리기사 실기 2과목 요약  (0) 2022.05.01
정보처리기사 실기 1과목 요약  (0) 2022.05.01
    '자격증' 카테고리의 다른 글
    • 정보처리기사 실기 5과목 요약
    • 정보처리기사 실기 4과목 요약
    • 정보처리기사 실기 2과목 요약
    • 정보처리기사 실기 1과목 요약
    하루루카
    하루루카

    티스토리툴바