로운's 기술노트

7장. 데이터 구조와 처리 본문

항해99_'22.01~04/Computer Science

7장. 데이터 구조와 처리

로운's 2022. 2. 7. 01:42

■ 대용량 저장장치

  inode는 유닉스 운영체제에서 사용하는 자료 구조로, 파일 시스템 내부에 파일을 유지하는 중요한 정보를 담고 있다.

일반적으로 전체 파일 시스템 디스크 용량의 대략 1% 정도가 inode 테이블에 할당된다.

 

어떤 한 파일이나 디렉토리를 만들게 되면 1개의 inode가 만들어진다.

그 inode가 inode Table에 등록이 되고, 등록되는 entry-number를 그 inode에 대한 inumber라고 한다.

 

inode 형태/구조

 

 

▶ inode에 대해 더 자세히 알고싶다면♬

 

[Linux Kernel Concept, File System] (1) 유닉스 파일시스템과 Inode구조체

리눅스는 유닉스 계열의 시스템이다. 유닉스 계열의 시스템에서는 모든 것을 파일로 취급한다고 한다. (1%는 아닌 것도 있다고 한 것 같기도.. 이는 추후에 찾아보기로 한다.) 아무튼 리눅스에서

jiming.tistory.com

 

■ 데이터베이스

 B트리는 하나의 노드가 가질 수 있는 자식 노드의 최대 숫자가 2보다 큰 균형 트리이다.

만약 한 노드에 최대 M개의 자료가 배치되면 M차 B 트리라고 부른다.

 

ㅇ 특징

- 노드의 자료수가 M라면, 자식의 수는 M+1개이어야 한다.
- 각 노드 안에 키들은 오름차순 정렬된 상태로 저장된다.
- 한 노드 N의 왼쪽 서브트리는 N보다 작은 값으로 되어 있고, 오른쪽 서브트리는 큰 값으로 되어 있다. 
- ROOT노드는 적어도 2개 이상의 자식을 가져야한다 (ROOT 노드로만 구성된 트리는 예외)
- 리프노드는 모두 같은 레벨에 있다(균형을 이루는 트리)
- 입력 자료는 중복될 수 없다.

 

ㅇ 탐색

 

ㅇ 삽입

 

 

ㅇ 삭제

  1) 리프 노드에서 삭제

 

  2) 중간 노드에서 삭제

 

B트리를 포함한 트리 구조는 자식 노드가 많아지게 되거나 하나의 노드에 키값이 적게 들어 있다면 검색 효율이 떨어 지게 된다. 또, 새로운 정보를 추가하거나, 삭제하게 되면 새롭게 노드를 쪼개거나 합치는 등의 '균형 맞춤' 과정을 다시 해야 하기 때문에 생성/삭제 작업이 자주 이뤄지는 필드라면 인덱스를 함부로 생성하지 않는 것이 좋다.

 

 

▶ B트리에 대해 더 자세히 알고싶다면♬

 

[자료구조] B 트리

안녕하세요. 오늘은 B 트리 에 대해 포스팅 합니다. B 트리 는 이진 탐색 트리의 일종으로 탐색 성능을 높이기 위해 균형있게 높이를 유지하는 균형 트리 입니다. 균형 이진 탐색 트리는 대표적으

mommoo.tistory.com

 

■ 인덱스

ㅇ 개념

  인덱스는 추가적인 쓰기 작업과 저장 공간을 활용하여 데이터베이스 테이블의 검색 속도를 향상시키기 위한 자료구조이다. 만약 우리가 책에서 원하는 내용을 찾는다고 가정할 때, 책의 모든 페이지를 찾아 보는것은 오랜 시간이 걸린다. 때문에 책의 저자들은 책의 맨 앞 또는 맨 뒤에 색인을 추가하는데, 데이터베이스의 index는 책의 색인과 같다.

ㅇ 장/단점

 - 장점
  1) 테이블을 조회하는 속도와 그에 따른 성능을 향상시킬 수 있다.
  2) 전반적인 시스템의 부하를 줄일 수 있다.


- 단점
  1) 인덱스를 관리하기 위해 DB의 약 10%에 해당하는 저장공간이 필요하다.
  2) 잘못 사용할 경우 오히려 성능이 저하되는 역효과가 발생할 수 있다.

 

 

 

[참조]

https://visu4l.tistory.com/159

https://dongwook8467.tistory.com/131

https://mommoo.tistory.com/108

https://matice.tistory.com/8

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=591923&logNo=220909643388 

https://mangkyu.tistory.com/96

 

 

Comments