Skip to main content
QUICK REVIEW

[논문 리뷰] A general framework for blockchain analytics

Massimo Bartoletti, Andrea Bracciali|arXiv (Cornell University)|2017. 01. 01.
Blockchain Technology Applications and Security참고 문헌 17인용 수 10
한 줄 요약

이 논문은 블록체인 분석을 위한 일반 목적의 오픈소스 Scala 라이브러리 프레임워크를 제시한다. 이 프레임워크는 비트코인과 이더리움의 데이터를 외부 자료원과 통합하여 SQL 또는 NoSQL 데이터베이스에 저장함으로써, 영리하고 재사용 가능하며 확장 가능한 분석을 가능하게 한다. 주요 기여는 다양한 사용 사례를 지원하고 표현력과 유지보수성 면에서 일회성 도구들을 능가하는 모듈식이고 확장 가능한 추상화 계층이다.

ABSTRACT

Modern cryptocurrencies exploit decentralised blockchains to record a public and unalterable history of transactions. Besides transactions, further information is stored for different, and often undisclosed, purposes, making the blockchains a rich and increasingly growing source of valuable information, in part of difficult interpretation. Many data analytics have been developed, mostly based on specifically designed and ad-hoc engineered approaches. We propose a general-purpose framework, seamlessly supporting data analytics on both Bitcoin and Ethereum - currently the two most prominent cryptocurrencies. Such a framework allows us to integrate relevant blockchain data with data from other sources, and to organise them in a database, either SQL or NoSQL. Our framework is released as an open-source Scala library. We illustrate the distinguishing features of our approach on a set of significant use cases, which allow us to empirically compare ours to other competing proposals, and evaluate the impact of the database choice on scalability.

연구 동기 및 목표

  • 내부 블록체인 데이터와 외부 자료원을 통합하는 재사용 가능하고 일반 목적의 도구의 부족을 해결한다.
  • 기능 중복과 확장성 부족으로 인해 한정된 일회성 분석 도구의 한계를 극복한다.
  • 비트코인과 이더리움을 모두 지원하는 통합적이고 모듈식 프레임워크를 제공하며, 유연한 데이터베이스 백엔드(SQL 및 NoSQL)를 지원한다.
  • 연구자들이 표준 쿼리 언어와 커뮤니티 기반 개발을 통해 분석을 구축하고 검증하며 확장할 수 있도록 한다.
  • 블록체인 분석 워크로드에서 SQL과 NoSQL 데이터베이스 간의 성능 트레이드오프를 평가한다.

제안 방법

  • 두 단계 워크플로우를 설계한다: (1) 원시 블록체인 데이터를 수신하고 외부 데이터(예: 환율, 주소 태그, 메타데이터 등)로 보완하여 통합된 블록체인 뷰를 구성하고, (2) 이 뷰를 SQL 또는 NoSQL 데이터베이스에 저장한다.
  • 비트코인과 이더리움을 모두 지원하는 도메인 특화의 Scala 라이브러리 구현을 통해 블록체인 데이터 파싱과 외부 데이터 통합을 추상화한다.
  • 플러그인 방식의 모듈을 통해 스키마 확장성과 외부 자료원(예: 블록체인 탐색기, API, 포럼 등)에 대한 동적 데이터 연결을 지원한다.
  • 표준 SQL 또는 NoSQL 쿼리 언어(예: MySQL, MongoDB)를 사용해 분석을 수행함으로써, 저수준 프로그래밍 없이도 복잡한 쿼리를 실행할 수 있도록 한다.
  • 메모리 기반 처리 대신 디스크 기반 저장을 사용하여 소비자 수준 하드웨어에서도 실행 가능하도록 최적화함으로써 접근성을 향상시킨다.
  • 퍼미션 기반 라이선스 하에 오픈소스로 배포하며, 다양한 데이터베이스 백엔드에서의 기능과 성능을 입증하기 위한 예시 사용 사례를 제공한다.

실험 결과

연구 질문

  • RQ1일반 목적의 조합 가능한 프레임워크가 현재 일회성이고 재사용 불가능한 도구에 의존하는 다양한 블록체인 분석 작업을 통합할 수 있는가?
  • RQ2외부 데이터(예: 환율, 주소 태그 등)의 통합이 블록체인 분석의 표현력과 확장성에 어떤 영향을 미치는가?
  • RQ3블록체인 분석 뷰의 저장 및 쿼리에서 SQL과 NoSQL 데이터베이스의 성능 특성은 어떠한가?
  • RQ4유연성, 유지보수성, 확장성 지원 측면에서 기존 도구들에 비해 프레임워크가 얼마나 뛰어나게 성능을 발휘하는가?
  • RQ5실제 사용 사례인 거래 수수료 분석, 메타데이터 추적, 주소 태깅을 프레임워크가 비교적 또는 더 뛰어난 성능으로 지원할 수 있는가?

주요 결과

  • 프레임워크를 통해 생성된 블록체인 뷰는 텍스트 스크립트 표현과 외부 데이터를 포함함으로써, 원본 비트코인 블록체인 크기의 두 배 이상이 되었다.
  • SQL과 NoSQL 데이터베이스 모두에서 실행 시간 측면에서 성능이 유사한 편이었으며, SQL에서 주요 성능 저하 요인은 복잡한 조인 연산에 기인했다.
  • NoSQL 방식은 스키마 없는 특성 덕분에 Scala 스크립트가 간결해져서 부가 코드가 줄어들고 개발의 민첩성이 향상되었다.
  • 프레임워크는 메타데이터 분석, 환율 추적, 거래 수수료, 주소 태깅 등 다양한 사용 사례를 지원하여 그 일반성과 재사용 가능성을 입증했다.
  • BlockSci나 blockparser와 같은 RAM 기반 도구들과 달리, 디스크 기반 접근 방식 덕분에 소비자 수준 하드웨어에서도 실행이 가능해져 접근성이 향상되었다.
  • 퍼미션 기반 라이선스 하에 오픈소스로 배포된 프레임워크는 커뮤니티의 검증, 확장, 장기적인 유지보수를 가능하게 하여, 전용 또는 단일 모듈 도구의 핵심 한계를 해결했다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.