본문 바로가기
728x90
반응형

공부212

[Database] Index structures (single-level ordered) 인덱스는 레코드를 검색할 때 속도를 높여주는 보조 역할을 한다. 기존 레코드들의 물리적 위치와 관계없이 작동한다. 크게 두 가지 방식으로 나뉜다. single-level ordered indexes multilevel indexes 이번 포스팅에서는 1번 single-level ordered indexes에 대해서 공부해보려 한다. single-level ordered indexes는 세 가지 방식으로 나뉜다. primary index clustering index secondary index primary index 두 개의 필드를 갖는 고정 길이 형식이다. K(i) : 정렬 키 필드 P(i) : 디스크 블록의 포인터 index entry는 한 블록당 하나를 갖는다. 각각 블록의 첫 번째 레코드를 An.. 2022. 11. 28.
[Database] RAID technique RAID(Rebundant Arrays of Independent Disks) technique은 여러 개의 작은 디스크를 묶어서 수행 능력을 늘리는 기법이다. 신뢰도(reliability)를 늘리는 관점과 수행 능력(perfomance)를 늘리는 두 관점으로 나누어서 공부할 예정이다. 신뢰도(reliability) 디스크는 MTBF(Mean Time Between Failure)이라는 디스크가 고장나지 않고 언제까지 쓸 수 있는지를 나타내는 지표가 있다. 여러 개의 디스크를 사용하게 되면 하나가 고장나면 전체를 쓰지 못하는 경우가 존재한다. 이럴 경우 MTBF 수치가 떨어지게 될 것이다. 이를 해결하기 위한 방법이 Mirroring(or Shadowing)이다. 동일한 디스크를 두 개 사용해서 중복(r.. 2022. 11. 27.
[Database] dynamic hashing의 종류와 방법 이전 포스팅에서 정적으로 크기를 정해놓고 하는 static hashing에 대해서 배웠다. 이제 동적으로 파일 확장이 가능한 dynamic hashing에 대해서 공부해보려 한다. dynamic hashing은 기본적으로 2진수를 사용한다. 키를 2진수로 바꾸고 그 2진수를 사용하는 것이다. 크게 3가지 방법이 존재한다. 1. 확장성 해싱(extendible hashing) 확장성 해싱에서는 디렉토리라는 것을 사용한다. 디렉토리란 버킷 주소의 배열이다. global depth라는 것이 존재하는데 이는 d라고 표현한다. 이것은 해시 값의 첫 d개의 비트를 디렉토리의 인덱스로 사용하겠다는 뜻이다. 그것은 곧 디렉토리의 배열의 최대 길이는 2의 d제곱 이라는 뜻이다. global depth d를 3이라 가정하.. 2022. 11. 26.
[Database] 해싱 기법 (hashing techniques)과 충돌 해결 기법(collision resolution) 해싱(hashing): 해시키가 주어지면 해시 함수를 사용하여 디스크 블록의 주소를 표현한다. Internal hashing : 해시 테이블이 메인 메모리 주소를 찾아준다. 충돌(collision) 아무리 해시 함수를 잘 만든다고 해서 충돌 문제에서 자유로워질 수 있는 것은 아니다. 이러한 충돌을 피하기 위한 기법이 충돌 해결 기법이다.(collision resolution) 충돌 해결 기법은 대표적으로 3가지가 존재한다. 해싱 함수가 100으로 나눈 나머지 값이라고 가정한다. 1. 개방 주소법(open addressing) 충돌이 일어나게 되면 인접한 주소로 저장한다. 102와 202가 있다면 둘 다 해시 함수를 거친 결과가 2로 동일하다. 이런 경우 102는 2에 202는 3에 보관한다. 이후에 10.. 2022. 11. 25.
728x90
반응형