Tech/EIPs/#1767
EIP 1767카테고리 · 인터페이스유형 · 표준 트랙상태 · 정체

GraphQL interface to Ethereum node data

EIP-1767은 이더리움 노드 데이터에 대한 GraphQL 인터페이스 표준을 제안했습니다. 기존의 JSON-RPC API 대신 GraphQL을 사용하여 더 유연하고 효율적인 블록체인 데이터 쿼리를 가능하게 하고자 했습니다.

GraphQL의 장점

REST/RPC 방식과 달리 GraphQL은 클라이언트가 정확히 필요한 데이터만 요청할 수 있어 오버페칭과 언더페칭 문제를 해결합니다. 중첩된 블록체인 데이터 구조를 한 번의 쿼리로 조회할 수 있습니다.

표준 스키마

블록, 트랜잭션, 계정, 로그 등 이더리움의 핵심 데이터 타입에 대한 GraphQL 스키마를 정의합니다. Geth와 같은 클라이언트가 동일한 스키마를 구현하도록 표준화합니다.

실제 구현

Geth는 이 EIP를 참조하여 GraphQL 엔드포인트를 실험적 기능으로 구현했습니다. 하지만 DApp 생태계의 주류 도구(ethers.js, web3.js 등)는 여전히 JSON-RPC 기반으로 운영됩니다.

정체 이유

JSON-RPC 생태계가 너무 광범위하게 자리잡아 GraphQL로의 전환 동기가 약했습니다. 표준화 완료보다는 개별 클라이언트 구현 수준에서 머물렀습니다.

공식 EIP 문서open_in_new