Dextrac

Dextrac

High-Performance Analytics for Chainlink

Executive Summary

Built a high-performance blockchain analytics platform for Chainlink node operators, delivering real-time insights and optimized data processing with 99.99% uptime.

Sub-Second Queries

Reduced query times from minutes to under 1 second

Real-time Updates

Live blockchain data processing with minimal latency

Millions of Events/mo

Scaled to process over 10 million blockchain events per month

Project Details

Industry
Blockchain Data
Duration
~2 years

Tech Stack

Go
TypeScript
Node.js
Python
PostgreSQL
TimescaleDB
React
Docker
AWS

"Alex, our new lead software engineer, has played a pivotal role in successfully launching PRISM."

Dextrac Engineering Team

High-Performance Analytics for Chainlink

Overview

When I joined Dextrac, they’ve noticed a gap in the market for data analytics and monitoring for Chainlink node operators. A previous solution existed but was shut down due to cost issues. Initially, I was a part-time contributor, building a proof-of-concept that would evolve into PRISM.

The Journey

We started with the plan to only develop the frontend, relying on another node operator for the blockchain indexer and API. When they couldn’t deliver, I transitioned to full-time, leading the core development with support from 1-2 senior developers at any given time.

Our first challenge was building a data ingestion service using on-prem servers and RPC nodes to query the blockchain live. This required significant hardware and concurrency. By optimizing our RPC node hardware and employing a time-series database, we solved most of the indexing challenges.

The real breakthrough came when I tackled the slow analytical queries needed for our dashboards. After experimenting with indexes, materialized views, and different data models, I identified four key properties for filtering and grouping data. This led to a system that generated reports by these properties and reduced page load times from minutes to seconds, with data staleness minimized to a few minutes.

The Conference Story

Before figuring out the performance issues, I had to present PRISM at a Chainlink conference. To manage this, I cached everything in Redis with a 24-hour duration, refreshing the cache each morning before going to the conference. Despite the nerve-wracking experience, the presentation was a success, and PRISM was well-received.

Key Achievements

  • Sub-Second Query Performance: Designed a system architecture that reduced query times significantly.
  • Real-Time Processing: Enabled processing of millions of monthly transactions with 99.99% uptime.
  • Scalability: Supported critical infrastructure with robust data handling.

Technologies Used

  • Backend: Go, TypeScript, Node.js, Python
  • Database: PostgreSQL, TimescaleDB
  • Frontend: React, Templ, HTMX
  • Infrastructure: Docker, AWS

Ready to build something amazing?

Whether you have a similar project in mind or something completely different, I'd love to help turn your ideas into reality.

Book a free consultation