Goldsky를 활용한 Kaia 데이터 인덱싱
Kaia 기반의 모든 애플리케이션은 온체인 데이터 접근이 필요한데, 단일 값을 조회하거나 잔액을 확인하는 정도라면 기본적인 RPC 쿼리로 해결됩니다. 하지만, 활동 피드(Activity feeds)라든지, 대시보드, 혹은 여러 컨트랙트에 걸친 필터링(Cross-contract filtering) 같이 실제 서비스에 쓰이는 기능을 구현하려면 단순 RPC 호출만으로는 구현과 운영 비용면에서 한계가 있습니다.
Goldsky는 이 문제를 관리형 인덱싱 인프라를 제공함으로써 해결합니다. Goldsky를 활용한다면 개발자는 직접 인덱서를 운영하거나 복잡한 ETL(Extract, Transform, Load; 추출-변환-적재) 파이프라인을 새로 구축할 필요가 없습니다.
Goldsky는 두 가지 핵심 제품을 통해 Kaia를 지원합니다. 즉각적인 GraphQL API 생성을 위한 Subgraphs와 실시간 데이터 복제를 위한 Mirror입니다.
Subgraphs: 즉시 사용 가능한 GraphQL API
Goldsky의 Subgraph 호스팅 서비스는 The Graph의 표준 Subgraph 명세와 완벽하게 호환되는 고성능 환경을 제공합니다. 애플리케이션에서 어떤 블록체인 이벤트와 엔티티(Entity)가 중요한지는 스키마 파일과 매핑 코드를 통해 정의합니다. Goldsky는 인덱싱, 호스팅, 유지보수를 모두 처리한 뒤, 애플리케이션에서 직접 쿼리할 수 있는 GraphQL 엔드포인트로 데이터를 제공합니다.
이미 스키마와 매핑 코드가 구성된 Subgraph 프로젝트가 있다면, 최소한의 설정 변경만으로 CLI를 통해 Subgraph를 배포할 수 있습니다.
Subgraph는 이럴 때 유용합니다:
- 이벤트 중심 기능: 대시보드, 활동 피드, 사용자 히스토리 조회
- 안정적인 쿼리 패턴: 프론트엔드 앱에서 반복적으로 사용되는 일관된 데이터 뷰 제공
- 빠른 프로토타이핑: 별도의 커스텀 매핑 코드 없이, “Instant Subgraphs”를 통해 컨트랙트 ABI(Application Binary Interface)에서 바로 API 생성
Mirror: 실시간 데이터 복제
GraphQL API가 모든 상황에 맞는 것은 아닙니다. 때로는 분석, 백엔드 처리, 또는 머신러닝 모델 학습을 위해 자체 인프라에서 원시 데이터를 직접 다뤄야 하는 경우도 있습니다.
Mirror는 Kaia 데이터를 사용자의 데이터 저장소(예: PostgreSQL, 데이터 웨어하우스, 메시지 큐 등)로 실시간 수준으로 스트리밍합니다. 외부 API를 쿼리하는 대신, 데이터가 여러분의 기술 스택으로 직접 복제되는 방식입니다. 이 파이프라인은 새로운 블록이 생성될 때마다 블록, 로그, 트랜잭션, 트레이스를 캡처하여 ETL 과정을 모두 처리합니다.
Mirror는 이럴 때 유용합니다:
- 복합 분석: 온체인 데이터와 오프체인 사용자 데이터를 SQL 조인으로 결합
- 대용량 데이터 처리: 데이터 레이어를 직접 소유함으로써 API 속도 제한(rate limits) 우회
- 내부 도구 개발: 비즈니스 인텔리전스(BI) 플랫폼이나 백엔드 워커(worker)에 직접 데이터 공급
시작하기
Kaia 메인넷이나 Kairos 테스트넷에서 빌드 중인 개발자는 지금 바로 인덱싱을 이용할 수 있습니다. Goldsky CLI를 설치하고 API 키를 생성하여 프로젝트 인증을 진행해 주세요.
빠른 시작 가이드:
- 접근 방식 선택 - 과거 데이터 집계가 필요하면 Subgraph를 선택하고, 원시 데이터 접근이 필요하면 Mirror를 선택합니다.
- CLI 설치 - Goldsky CLI를 설치하고 로그인하여 프로젝트를 관리합니다.
- 배포 - 로컬 Subgraph 구성을 푸시하거나 정의 파일(Definition file)을 통해 복제 파이프라인을 설정합니다.
자세한 설정 방법은 Goldsky로 인덱싱하기 가이드를 참고하시기 바랍니다.