프루닝은 경량화 기법의 하나로 인공지능 분야에서 검색 모델을 학습한 후에 불필요하거나 중요도가 낮은 노드 등을 제거하는 기술을 일컫는다.

프루닝은 블록체인에서 오래된 블록체인 데이터를 자동으로 삭제하기 위해 사용된다.

[비트코인 프루닝]

블록체인 크기의 가속화된 성장은 비트코인이 수년간 겪은 문제이다. 이러한 이유로 Block file pruning 이라고 불리는 것을 비트코인 코어 0.11.0 버전에 추가하였다.

비트코인이 블록을 실행하고 검증하는데 중요한 것은 블록 내 트랜잭션 내의 인/아웃풋의 사용 가능 여부이다.

그렇기에 굳이 모든 트랜잭션을 저장하고 있지 않아도 된다. 그러나 블록이 교체될 경우, 빠진 블록의 트랜잭션을 복구하는 과정이 필요하기 때문에, 비교적 최신 정보만 가지고 있으면 된다.

풀 블록체인을 다운로드하여, 다운로드가 올바른지 확인한 후에 필요한 최신 정보만 복사한 뒤 나머지는 버린다. 저장한 블록체인은 풀 블록체인의 자식트리이며 원본 블록체인의 부분 복사본이다.

[이더리움 프루닝]

스크린샷 2022-11-16 오후 4.25.34.png

이더리움에서는 프루닝을 state trie pruning 이라고 한다.