본문으로 건너뛰기
0%

Ethereum 노드의 종류: full vs. archive vs. light

Alchemy team headshot

작성자 Alchemy

2022년 8월 11일에 게시됨4분 읽기

이더리움 블록체인은 전 세계에 분산된 컴퓨터 네트워크로, 각 노드가 처리 능력과 자원을 모으고 블록 검증 책임을 분담함으로써 네트워크가 합의(즉, 공유된 상태에 대한 동의)에 도달할 수 있게 한다.

이 글에서는 이더리움 블록체인에서 사용되는 여러 종류의 노드(풀 노드, 아카이브 노드, 라이트 노드)와 그 차이점을 살펴본다.

풀 노드란 무엇인가?

풀 노드는 블록체인 데이터의 완전한 사본을 보관하며, 다른 풀 노드로부터 트랜잭션과 블록을 수신하고 이를 검증한 후 다른 풀 노드로 전달함으로써 네트워크에 기여한다.

스마트 컨트랙트 트랜잭션이 실행되면, 이더리움 풀 노드는 해당 스마트 컨트랙트 내의 모든 명령을 실행한다. 풀 노드들은 함께 스마트 컨트랙트 실행이 원하는 결과를 내는지 판단한다. 다만 풀 이더리움 노드를 운영하는 것은 비용이 많이 들고 상당한 전력을 소모한다.

풀 노드 클라이언트

클라이언트는 각 블록의 모든 트랜잭션을 검증하여 네트워크의 안전성과 트랜잭션 데이터의 유효성을 보장하는 이더리움 소프트웨어 구현체다. 이더리움 풀 노드 클라이언트는 각 블록의 모든 트랜잭션을 검증하여 네트워크에 보안성과 데이터 정확성을 제공한다.

각 이더리움 클라이언트는 저마다의 기능과 장점을 가지고 있다. 구현체들은 다양하기 때문에 서로 다른 사용자 그룹에 맞게 조정될 수 있다. 이더리움 노드 클라이언트를 선택할 때는 기능, 지원, web3 프로그래밍 언어, 라이선스를 고려해야 한다.

풀 노드 클라이언트 소프트웨어 구현체 (실행 계층 클라이언트)

실행 계층 풀 노드 클라이언트 구현체에는 주로 네 가지 종류가 있다:

  1. Geth (Go Ethereum) - Go로 작성됨
  2. Nethermind - C#과 .NET으로 작성됨
  3. Erigon - Go로 작성됨
  4. Hyperledger Besu - Java로 작성됨

The Merge 이후, 즉 이더리움이 작업 증명(Proof-of-Work)에서 지분 증명(Proof-of-Stake)으로 전환된 이후에는 각 풀 노드가 앞서 언급한 실행 계층 클라이언트 중 하나와 함께 합의 계층 클라이언트를 실행해야 한다.

풀 노드 클라이언트 소프트웨어 구현체 (합의 계층 클라이언트)

주요 합의 계층 클라이언트는 다섯 가지다:

  1. Prysm - Prysmatic Labs가 Go로 구축
  2. Teku - Besu 팀이 Java로 구축
  3. Lighthouse - Sigma Prime이 Rust로 구축
  4. Nimbus - Nimbus 팀이 Rust로 구축
  5. Lodestar - ChainSafe Systems가 Typescript로 구축

라이트 노드란 무엇인가?

라이트 노드는 풀 노드처럼 전체 블록 데이터를 저장하는 대신, 이전 블록의 해시와 타임스탬프 같은 블록 헤더 데이터만 저장한다. 라이트 노드는 필요에 따라 풀 노드에 요청을 보내, 사용자가 필요로 하는 상태의 일부만 검증한다.

개인용 컴퓨터와 같은 저성능 장치는 비용이 많이 드는 데이터 저장 및 쓰기 작업을 수행하지 않으므로 라이트 노드를 사용하는 것이 유리할 수 있다.

라이트 노드의 사용 사례 예시:

  1. 잔고 조회
  2. 트랜잭션이 네트워크에서 확인되었는지 검증
  3. 이벤트 로그 확인

개인용 컴퓨터 외에도 라이트 노드는 모바일 폰이나 라즈베리 파이 같은 저성능 장치에서도 효율적으로 실행될 수 있다.

아카이브 노드란 무엇인가?

아카이브 노드는 풀 노드와 동일한 모든 데이터를 보유할 뿐만 아니라, 제네시스 블록(즉 첫 번째 블록)까지 거슬러 올라가는 블록체인의 모든 과거 상태 데이터를 보유한다.

풀 노드도 과거의 블록체인 상태 데이터를 재구성할 수 있지만, 이 동기화 과정은 시간이 오래 걸리고 비효율적이다. 사용 사례에 따라 이러한 데이터를 빠르게 제공해야 할 수도 있다. 아카이브 노드는 첫 번째 블록까지 거슬러 올라가는 과거 데이터를 보유하고 있기 때문에 트랜잭션을 추적할 수 있다.

아카이브 노드는 수 기가바이트에 달하는 과거 데이터를 저장하므로 일반 사용자에게는 덜 유용하지만, 블록 탐색기, 지갑, 온체인 분석 회사와 같은 서비스 제공업체에게는 가치가 있다.

Erigon 대 Geth

이더리움 프로토콜의 공식 Golang 구현체는 Go Ethereum(또는 Geth)이다. Geth는 가장 인기 있는 이더리움 클라이언트로, 가장 많은 사용자를 보유하고 있으며, 개발자를 위한 다양한 Go 기반 도구를 제공하는데, 이 모든 것은 오픈소스이며 GNU LGPL v3 라이선스를 따른다.

Erigon은 속도와 디스크 공간 절약에 초점을 맞춘 Geth의 포크다. Erigon은 Go로 개발된, 완전히 재설계된 이더리움 노드 클라이언트 구현체로, 향후 다른 언어로도 포팅할 계획이다. Erigon은 더 모듈화되고 더 빠르며 간결한 이더리움 구현체를 제공하는 것을 목표로 한다.

Geth와 비교하면, Erigon의 병렬화된 개발, 평면 저장 방식, 전처리, 단계별 동기화 덕분에 Erigon은 더 작은 저장 공간, 더 빠른 동기화 속도를 달성하며, trace API를 사용해야 하는 개발자에게 전반적으로 더 나은 경험을 제공한다.

풀 노드와 아카이브 노드의 차이점은 무엇인가?

풀 노드와 아카이브 노드의 주된 차이점은, 아카이브 노드는 체인의 모든 과거 상태(즉 이더리움 생태계의 완전한 그림)를 추적하는 반면, 풀 노드는 현재 상태 데이터의 스냅샷만 저장하면 된다는 점이다.

간단히 말해, 아카이브 노드는 첫 블록 이후의 모든 과거 데이터를 담고 있는 반면, 풀 노드는 새로운 트랜잭션을 검증하는 데 필요한 가장 중요한 현재 데이터만 담고 있으며, 불필요한 블록체인 데이터는 "가지치기(pruned)"된다.

올바른 노드 유형 선택 방법

배포할 이더리움 노드의 유형을 선택하는 것은 노드 설정과 기능이 상당히 다르기 때문에 사용 사례와 자원에 따라 달라진다.

자신의 노드를 운영함으로써 사적이고 자립적이며 신뢰가 필요 없는 방식으로 이더리움을 사용할 수 있다. 데이터를 자신의 노드 클라이언트로 검증할 수 있기 때문에 네트워크를 신뢰할 필요가 없다.

풀 노드는 퍼블릭 블록체인상의 어떤 스마트 컨트랙트와도 직접 통신할 수 있다는 장점이 있다. 또한 풀 노드를 통해 스마트 컨트랙트를 퍼블릭 블록체인에 배포할 수도 있다.

하지만 무제한 데이터 사용, 저장, 직접적인 스마트 컨트랙트 기능은 공짜가 아니며, 풀 노드는 하드웨어와 대역폭 자원에 부담을 줄 수 있다.

아카이브 노드는 풀 노드가 가진 모든 정보를 저장하며 블록체인 상태의 역사를 만들어낸다. 클라이언트가 동기화를 완료한 후에도 아카이브 노드는 이전 데이터를 계속 보관한다.

애플리케이션에 과거 블록체인 정보가 필요하다면, 직접 아카이브 노드를 운영하거나 아카이브 노드 접근을 제공하는 블록체인 노드 제공업체를 선택해야 한다.

라이트 노드는 풀 노드와 비슷하지만 소량의 데이터만 처리한다. 라이트 노드는 헤더 체인 데이터를 저장하되, 요청 시에만 추가 데이터를 받는다. 데이터 유효성은 검증할 수 있지만 블록 검증에는 완전히 참여하지 않는다.

Alchemy 노드 인프라

Alchemy는 web3 노드 인프라 제공업체이자 블록체인 개발자 플랫폼으로, Alchemy의 Node API와 다양한 도구 모음을 통해 web3 개발자들에게 강력한 확장성, 안정성, 데이터 정확성을 제공한다. Alchemy의 Cortex 엔진은 전문화된 분산 시스템과 독자적인 코디네이터 서비스를 활용해 노드 기능의 모든 측면을 향상시켜 실시간 데이터 정확성을 보장한다.

노드는 범용적으로 설계되어 있고 고가용성을 위해 설계된 것이 아니기 때문에, 직접 노드를 운영하는 앱은 노드 제공업체를 이용하는 경우보다 더 높은 지연 시간과 다운타임을 겪을 수 있다.

확장 가능하고, 신뢰할 수 있으며, 정확한

Alchemy의 Node API는 99.99%의 가동 시간을 보장하는 확장 가능한 노드 아키텍처를 제공하여, dApp 개발자가 제품이나 사용자에게 중단 없이 계속 확장할 수 있도록 한다.

Alchemy의 무한히 확장 가능한 노드 인프라와 타의 추종을 불허하는 신뢰성, 속도, 데이터 정확성은 Polygon을 구동하는 데 사용되며, 이는 채택을 촉진하는 촉매제 역할을 해 Polygon에 구축된 앱의 수를 크게 늘리는 결과를 가져왔다.

탈중앙화 거래소의 글로벌 기반으로서 모든 주요 블록체인에 걸쳐 수천억 건의 거래가 흐를 수 있게 하는 0x는 신뢰할 수 있는 노드 인프라를 위해 Alchemy를 신뢰하고 있다.

무료 아카이브 노드 접근

Alchemy는 메인넷과 테스트넷 모두에 대해 무료 아카이브 접근을 제공하는 강력한 무료 요금제를 제공한다. Alchemy에 대해 더 알아보고 무료 아카이브 접근을 받으려면 지금 무료 계정에 가입하세요.

Background gradient

블록체인 매직을 만드세요

Alchemy는 가장 강력한 Web3 개발자 제품 및 도구를 리소스, 커뮤니티, 그리고 전설적인 지원과 결합합니다.