과목 : 데이터베이스

 

 SECTION034 트리(Tree)

 

  • 디그리(Degree, 차수) : 각 노드에서 뻗어나온 가지의 수
  • 단말노드(Terminal Node) = 잎 노드(Leaf Node) : 자식이 하나도 없는 노드
  • 깊이(Depth, Height) : 트리에서 노드가 가질 수 있는 최대의 레벨

 과목 : 데이터베이스

 

 SECTION033 큐(Queue)와 데크(Deque)

 

 큐(Queue) : 선입선출(FIFO : First In First Out)

  • 프러트(F, Front) 포인터 : 가장 먼저 삽입된 자료의 기억공간, 삭제 작업시 사용
  • 리어(R, Rear) 포인터 : 가장 마지막에 삽입된 자료가 위치한 기억장소, 삽입 작업시 사용
  • 운영체제의 작업 스케줄링에 사용

 데크(Deque) : 삽입과 삭제가 양쪽 끝에서 발생

 과목 : 데이터베이스

 

 SECTION032 스택(Stack)

 

 스택 : 후입선출(LIFO : Last In First Out)방식

  • TOP : 가장 마지가으로 삽입된 자료가 기억된 위치. 스택 포인터(SP : Stack Pointer)
  • Bottom : 스택의 가장 밑바닥

 자료의 삽입(PUSH)

    Top = Top + 1 "Top : 스택 포인터"

    If Top > M then "M : 스택의 크기"

        Overflow

    Elose

        X(Top) ← Item "X : 스택의 이름"

 

 Stack의 응용 분야

  • 부 프로그램 호출 시 복귀주소를 저장할 때
  • 인터럽트가 발생하여 복귀주소를 저장할 때
  • 후위 표기법(Postfix Notation)으로 표현된 수식을 연산
  • 0 주소지정방식 명령어의 자료 저장소

 

 과목 : 데이터베이스

 

 SECTION030 자료 구조의 개념

 

 자료 구조의 분류

  • 선형 구조
    • 리스트
      • 선형 리스트(Linear List)
      • 연결 리스트(Linked List)
    • 스택(Stack)
    • 큐(Queue)
    • 데크(Deque)
  • 비선형 구조
    • 트리(Tree)
    • 그래프(Graph)

 과목 : 데이터베이스

 

 SECTION031 리스트

 

 선형 리스트(Linear List)

  • 가장 간단한 자료 구조
  • 연속된 빈 공간이 있어야 한다
  • 기억장소 이용 효륭이 가장 좋다
  • 삽입, 삭제 시 자료의 이동이 필요하기 때문에 작업이 번거롭다

 연결 리스트(Linked List)

  • 포인터 부분을 이용
  • 노드의 삽입, 삭제가 용이
  • 연속저으로 놓여 있지 않아도 저장이 가능
  • 포인터 부분이 필요하기 때문에 기억공간 효율이 좋지 않다
  • 포인터를 찾는 시간이 필요하기 때문에 접근 속도가 느리다
  • 희소 행렬을 이용하면 기억장소가 절약된다
  • 트리를 표현할 때 적합한 자료 구조

 과목 : 데이터베이스

 

 SECTION029 분산 데이터베이스

 

 1. 분산 데이터베이스의 정의 : 네트워크를 통해 연결된 여러 개의 컴퓨터 사이트(Site)에 분산되어 있는 데이터베이스

 

 2. 분산 데이터베이스의 목표

  • 위치 투명성(Location Transparency) : 데이터베이스의 실제 위치를 알 필요 없이 논리적인 명칭만으로 액세스
  • 중복 투명성(Replication Transparency)
  • 병행 투명성(Concurrency Transparency)
  • 장애 투명성(Failure Transparency)

 

 과목 : 데이터베이스

 

 SECTION028 보안(Security)

 

 1. 보안 : 권한이 없는 사용자가 액세스하는 것을 금지하기 위해 사용되는 기술

    * 무결성(Integrity)는 DBA, 보안(Sercurity)는외부사용자로부터 데이터베이스를 보호하는 것

 

 2. 암호화 기법

  • 개인키 암호 방식(Private Key Encryption) : 동일한 키로 데이터를 암호화, 복호화
  • 공개키 암호 방식(Public Key Encryption) : 암호화 키는 공개, 복호화 키는 관리

 과목 : 데이터베이스

 

 SECTION027 무결성(Integrity)

 

 1. 무결성 제약 조건 : 정확성(일관성)

 

 2. 무결성의 종류

  • 참조 무결성
  • 도메인 무결성
  • 개체 무결성

 과목 : 데이터베이스

 

 SECTION026 병행제어(Concurrency Control)

 

 1. 병행제어의 정의 : 동시에 실행되는 트랜잭션들이 데이터베이스의 일관성을 파괴하지 않도록 트랜잭션 간의 상호작용을 제어하는 것

 2. 병행제어의 목적

  • 데이터베이스의 공유를 최대화
  • 시스템의 활용도를 최대화
  • 일관성 유지
  • 응답시간을 최소화

 3. 병행수행의 문제점

  • 갱신 분실(Lost Update) : 같은 자료를 공유하여 갱신할 때 갱신 결과의 일부가 없어지는 현상
  • 비완료 의존성(Uncommitted Dependency) : 다른 트랜잭션이 실패한 갱신 결과를 참조하는 현상
  • 모순성(Inconsistency) : 원치 않는 자료를 이용함으로써 발생하는 현상
  • 연쇄 복귀(Cascading Rollback) : Rollback하는경우 다른 트랜잭션도 함께 Rollback되는 현상

 4. 병행제어 기법의 종류

  • 로킹(Locking) : 주요 데이터의 액세스를 상호 배타적으로 하는 것
    • 데이터베이스, 파일, 레코드, 필드 등은 로킹 단위가 될 수 있다
    • 로킹 단위가 크면 로크 수가 작아 관리하기 쉽지만 병행성 수준이 낮아지고,
    • 로킹 단위가 작으면 로크수가 많아 관리하기 복잡해 오버헤드가 증가하지만 병행성 수준이 높아짐
  • 타임 스탬프 순서(Time Stamp Ordering)

 과목 : 데이터베이스

 

 SECTION025 회복(Recovery)

 

 1. 회복의 개념 : 트랜잭션들을 수행하는 도중 장애가 발생하여 정상 상태로 복구하는 작업

  • 트랜잭션 장애
  • 시스템 장애
  • 미디어 장애

 

 2. 회복 기법

  • 연기 갱신 기법(Deferred Update)
  • 즉각 갱신 기법(Immediate Update)
  • 그림자 페이지 대체 기법(Shadow Paging)
  • 검사점 기법(Check Point)

+ Recent posts