본문 바로가기

hash2

Hash Collision, 해시 충돌시 해결방법 해시 충돌이 일어났을 경우 해결하는 방법은 크게두 가지가 있습니다. 1. 체이닝(Close Addressing) 해시 충돌이 발생하면 키에 해당하는 데이터들을 연결하는 방식입니다. 1) 연결 리스트를 사용하는 방식(Linked List) 각각의 버킷(bucket)들을 연결리스트(Linked List)로 만들어 Collision이 발생하면 해당 bucket의 list에 추가하는 방식이다. 삭제 또는 삽입이 간단하다. 작은 데이터들을 저장할 때 연결 리스트 자체의 오버헤드가 부담이 된다. 2) Tree를 사용하는 방식 (Red-Black Tree) 트리를 사용하는 방식은 메모리 사용량이 많다. 2. 개방 주소법(Open Addressing) 해시 충돌이 일어나면 다른 버킷에 데이터를 저장하는 방식입니다. 1.. 2019. 4. 18.
SQL 최적화 기본 원리 (옵티마이저와 실행계획, 인덱스, 조인수행원리) 옵티마이저와 실행계획옵티마이저디양한 실행 방법들 중에서 최적의 실행 방법을 결정하는 것 규칙기반 옵티마이저 (RBO, Rule Based Optimizer)비용기반 옵티마이저 (CBO, Cost Based Optimizer) R-DB 대부분 비용기반!! 가. 규칙기반 옵티마이저규칙 1. Single row by rowid : rowId를 통해서 테이블에서 하나의 행을 엑세스규칙 4. Single row by unique or primary key : 유일 인덱스(Unique Index)를 통해서 하나의 행을 엑세스 (PK)규칙 8. Composite index : 복합 인덱스에 동등 조건으로 검색 A=1 B=2 우선순위 A+B 더 높음 > A+B+C (A, B가 =조건있기 때문)규칙 9. Single c.. 2019. 3. 4.