본문 바로가기
정보처리산업기사 필기 공부/데이터베이스

051 해싱 ( Hashing )

by 개발자 김맹고 2021. 6. 8.

 

해싱 ( Hashing )

  • Hash Table이라는 기억공간을 할당하고, 해시 함수( Hash Function )를 이용하여 레코드 키에 대한 Hash Table 내의 Home Address를 계산한 후 주어진 레코드를 해당 기억장소에 저장하거나 검색 작업을 수행하는 방식이다.
  • DAM( 직접접근방법 ) 파일을 구성할 때 해싱이 사용되며, 접근 속도는 빠르지만 기억공간이 많이 요구된다.
  • 여러가지 검색 방식 중 검색 속도가 가장 빠르다.
  • 삽입, 삭제 작업의 빈도가 많을 때 유리한 방식이다.
  • 키-주소 변환 방법이라고도 한다.

해시 테이블 ( Hash Table )

  • 레코드를 1개 이상 보관할 수 있는 Home Bucket들로 구성한 기억공간으로, 보조기억장치에 구성할 수도 있고 주기억장치에 구성할 수도 있다.
  • 버킷 ( Bucket ) : 하나의 주소를 갖는 파일의 한 구역을 의미하며, 버킷의 크기는 같은 주소에 포함될 수 있는 레코드 수를 의미함
  • 슬롯 ( Slot ) : 1개의 레코드를 저장할 수 있는 공간으로 n개의 슬롯이 모여 하나의 버킷을 형성함
  • Collision ( 충돌 현상 ) : 서로 다른 2개 이상의 레코드가 같은 주소를 갖는 현상
  • Synonym : 같은 Home Address를 갖는 레코드들의 집합
  • Overflow
    - 계산된 Home Address의 Bucket 내에 저장할 기억 공간이 없는 상태
    - Bucket을 구성하는 Slot이 여러 개일 때는 Collision은 발생해도 Overflow는 발생하지 않을 수 있음

길벗알앤디 (강윤석, 김용갑, 김우경), 정보처리 산업기사 필기 1권 핵심요약, 길벗(2019), p 56-57.
반응형

댓글