B+ 트리는 키에 의해서 식별되는 레코드의 효율적 삽입, 검색, 통해 정렬된 데이터를 표현하기 위한 자료구조입니다.
다음과 같은 특성이 있습니다.
B+ tree는 root, internal nodes, leaves로 구성됩니다.
B+ 가치는 블록 중심 storage context 특히 파일 시스템에서 효율적을 검색을 위해 데이터를 저장하는 것입니다.
- insert
차수 M이 홀수인 경우 t-1번째 index를 상위로 올리고, 차수 M 이 짝수인 경우 t번째 index를 상위로 올립니다.
- delete
삭제의 경우에는 다양한 케이스가 존재하는데
삭제할 키가 leaf node에만 존재할 때
- 노드의 최소 개수 이상의 키가 있을 때는 간단하게 키를 삭제하면 됩니다.
- 노드에 최소 개의 키가 있을 때는, 키를 삭제하고 sibling에서 키를 빌려 중간 키를 parent에 추가합니다.
그래프 그리기 - https://www.cs.usfca.edu/~galles/visualization/BPlusTree.html
참조
[1] - https://potatoggg.tistory.com/174
[2] - https://en.wikipedia.org/wiki/B%2B_tree
[3] - https://ko.wikipedia.org/wiki/B%2B_%ED%8A%B8%EB%A6%AC
'개발 > 잡다개발' 카테고리의 다른 글
Scrapy 구조 분석 (0) | 2020.05.27 |
---|---|
파이썬 크롤링 도구 (0) | 2020.05.27 |
구글 colab import csv read as pandas (0) | 2020.05.24 |
ARM 프로세서 (0) | 2020.05.11 |
Synchronization Tools (0) | 2020.05.07 |