아카이브 노드 (Archival Node)

중급블록체인수정일

아카이브 노드는 블록체인의 모든 블록과 트랜잭션뿐 아니라, 각 블록 시점의 과거 상태(state: 계정 잔액, 컨트랙트 저장소, 논스 등)를 모두 보관하는 노드입니다. 그래서 임의의 과거 블록 기준으로 상태를 직접 조회할 수 있으며, 주로 블록 탐색기, 데이터 분석, 연구, 감사 용도로 사용됩니다.

풀 노드·프루닝 노드와의 차이

  • 풀 노드: 제네시스부터 모든 블록과 트랜잭션을 내려받아 직접 검증합니다. 이더리움 같은 계정 기반 체인에서는 보통 최근 블록 몇 개의 상태만 유지하고, 오래된 과거 상태는 지웁니다(프루닝). 필요하면 블록을 다시 실행해 과거 상태를 재계산할 수는 있지만 시간이 많이 걸립니다.
  • 프루닝 노드: 검증을 마친 오래된 블록 데이터 일부를 삭제해 저장 공간을 줄입니다. 비트코인의 프루닝 모드가 대표적이며, 새 블록 검증 능력은 그대로입니다.
  • 아카이브 노드: 블록과 트랜잭션에 더해 모든 블록 높이의 상태를 지우지 않고 보관합니다. 예를 들어 이더리움에서 eth_getBalance나 eth_call을 수백만 블록 전의 블록 번호로 호출하면, 아카이브 노드는 즉시 답하지만 일반 풀 노드는 "missing trie node" 같은 오류를 돌려줍니다.

블록체인의 유효성 검증 자체는 일반 풀 노드도 수행하므로, 아카이브 노드는 네트워크 보안을 더 높이는 노드가 아니라 과거 데이터 조회를 위한 노드라고 보는 것이 정확합니다.

비유

블록체인을 계속 늘어나는 장부라고 생각해 보세요. 풀 노드는 장부의 모든 거래 기록을 갖고 있지만, 매일 마감 잔액표는 최신 것만 남깁니다. 아카이브 노드는 모든 날짜의 마감 잔액표까지 함께 보관하는 기록 보관소에 가깝습니다.

운영상 부담

  • 저장 공간: 과거 상태를 모두 보관하므로 풀 노드보다 훨씬 큰 저장 공간이 필요하며, 시간이 지날수록 빠르게 늘어납니다. 이더리움 아카이브 노드는 클라이언트에 따라 수 TB에서 십수 TB에 이릅니다(Erigon·Reth처럼 저장 구조를 압축한 클라이언트는 더 작습니다).
  • 동기화 시간: 처음 구축하고 동기화하는 데 체인의 크기와 클라이언트에 따라 며칠에서 몇 주가 걸릴 수 있습니다.
  • 기술 전문성: 고성능 SSD, 충분한 메모리, 클라이언트 설정과 유지 관리 지식이 필요합니다. 그래서 많은 개발자는 직접 운영하는 대신 아카이브 데이터를 제공하는 RPC 서비스를 이용합니다.

활용 예

  • 블록 탐색기와 분석 도구: 특정 주소의 과거 잔액, 특정 시점의 토큰 보유 현황, 컨트랙트 상태 변화를 보여 주려면 과거 상태 조회가 필요합니다.
  • 연구와 감사: 연구자는 체인 초기부터의 온체인 활동(주소 수, 트랜잭션 수 등)을 분석하고, 기업은 감사나 규정 준수를 위해 과거 특정 블록의 상태를 확인합니다. 가격 정보는 블록체인에 기록되지 않으므로 별도의 시장 데이터가 필요합니다.
  • 개발: 과거 블록을 기준으로 컨트랙트 호출을 재현하거나 트랜잭션을 추적(trace)할 때 사용합니다.

결국 아카이브 노드는 블록체인을 현재 상태만 보는 원장에서, 어느 시점이든 되돌아볼 수 있는 역사 기록 보관소로 만들어 줍니다.

이 글은 학습을 위한 일반 정보이며 투자 권유나 법률 자문이 아닙니다. 가상자산은 가격 변동이 크고 원금 손실 위험이 있습니다.