본문 바로가기

컴퓨터과학54

[데이터베이스] Indexing and Hashing DB에서 데이터를 가져오는 방법에는 전체 데이터를 조사하는 Full Scan 방법과 인덱스 파일을 이용하는 Indexed Access 방법이 있다. Full Scan 방법은 데이터 파일의 레코드를 순차적으로 확인하는 방법으로 매우 느리다. Indexed Access 방법은 데이터파일과 구분되는 인덱스 파일에 접근해서 특정 레코드의 위치를 찾는 방법이다. Indexed Access의 두 가지 종류 Ordered indices : searc key가 정렬된 형태 Hash indices : 해시 함수를 이용해 search key를 균등하게 버켓에 분포됨 ordered index search key가 정렬된 상태. 인덱스 파일을 순차적으로 내려가면서 레코드를 찾음. Full Scan 방법과 차이 Data fil.. 2021. 12. 19.
[데이터베이스] Storage and File Structure - Block, File organization, Fixed/Variable Records 저장 방식 Overview of Physical Storage Media 데이터의 이동 : CPU ↔ 메인메모리 ↔ 디스크 디스크에서 필요한 데이터가 있는 블록을 메인 메모리로 이동 메인 메모리에서 CPU가 원하는 데이터를 찾음 Blocks : 데이터에 접근하고 이동하는 기본 단위 - DB 시스템은 블록의 전환 최소화를 추구함 Buffer : 메인메모리의 영역으로, 디스크의 블록을 복사해해서 저장한다 Buffer manager : 메인메모리 안의 버퍼 공간을 할당하는 서브 시스템 Buffer manage의 동작 필요한 블록이 현재 버퍼 안에 있는 경우, 블록의 주소를 반환 필요한 블록이 현재 버퍼 안에 없는 경우 버퍼에 공간을 할당한다 필요한 경우 새 블록과 교체함 Replaced block written back.. 2021. 12. 19.
[데이터베이스] Entity-Relationship Model - 모델링, ERD, 관계형 스키마 Modeling 데이터베이스는 entity와 그 관계로 모델링 될 수 있다. -> Entity-Relationship(E-R) Model attribute type simple / composite : 속성을 subpart로 나눌 수 있고 없음 name -> {first_name, middle_name, lasst_name} single-valued / multi-valued : 여러 개 값을 가지는 속성 phone_number -> 한 사람당 2 개 이상의 전화번호를 가질 수 있음 derived attributes : 다른 속성으로부터 유추될 수 있는 속성 age로부터 date_of_birth를 유추할 수 있다. composite, multi-valued, derived 속성은 뒤에서 스키마 표현 방식.. 2021. 12. 14.
[디자인패턴] 컴포짓 패턴 (Composite Pattern) 목적 클라이언트가 각 객체와 객체의 묶음을 동일하게 다룰 수 있도록 함 요소 문제 : 프로그램에서 각각의 객체(개별 객체) 또는 계층 구조로 이루어진 객체 묶음(복합 객체)을 다뤄야 함 해결 : 개별 객체와 복합 객체에 대해 동일한 작업을 적용. 대부분의 경우에 개별 객체와 복합 객체의 차이를 무시할 수 있도록 함 결과 : 유지보수에 유리 정의 컴포넌트 개별 객체와 개별 객체들을 계층 구조로 포함하는 복함 객체를 나타내는 인터페이스 또는 추상 클래스 개별 객체(Leaf) 다른 컴포넌트를 포함할 수 없는 컴포넌트 복합 객체(Composite) 개별 객체 또는 다른 복합 객체를 포함할 수 있음 컴포짓 패턴을 이용한 메뉴 디자인 MenuItem은 개별객체(Leaf), Menu는 복합 객체(Composite) .. 2021. 12. 13.