Chandan Kasamsetty, is a highly motivated and skilled student currently in 3rd year pursuing Computer Science Engineering at R.V College of Engineering in Bangalore, India. His interests lie in the field of Software Development and Artificial Intelligence. He also loves to play sports such as Cricket and Table Tennis. |
Poster Abstract
Introduction:
Bitcoin, the pioneering digital currency, operates on a decentralized financial system with its core being the blockchain—a distributed ledger recording and validating all transactions. Analyzing blockchain data provides valuable insights into participant behavior, transaction patterns, and network health. With millions of daily transactions and new blocks added every 10 minutes, a distributed and parallelized architecture is essential for efficient analysis.
Objective:
The primary goal of this project is to utilize the capabilities of HPCC Systems®, an open source data analytics platform, to develop a highly efficient parser capable of processing vast quantities of unprocessed Bitcoin data. By harnessing the distributed architecture offered by HPCC Systems®, this parser will significantly outperform existing solutions, thanks to the effective integration of C++ embedding in Enterprise Control Language. This integration allows for optimized utilization of HPCC Systems® features, resulting in enhanced parsing performance and overall efficiency.
Methodology:
The process begins with the acquisition of raw block data in the form of .dat files from the bitcoin source node, which is then loaded onto the HPCC cluster. The system takes this raw bitcoin data as input and proceeds to extract and process the block headers and transaction data contained within each block. Processing the block header provides crucial information such as the block size, creation time, nonce, and the number of transactions along with their details. Using this information, the system analyzes the block body by computing the transaction hash and identifying the input and output addresses associated with each bitcoin transaction. Additionally, it establishes the connections between input addresses and output addresses from previous transactions, thereby constructing an accurate representation of the interconnected network of blocks that forms the blockchain. By iteratively traversing this chain of blocks, the parsed contents are systematically written to a CSV file. Notably, the suggested implementation offers great flexibility as it does not rely on external library dependencies, and it can be executed seamlessly as a single ECL file.
Presentation
In this Video Recording, Chandan provides a tour and explanation of his poster content.
Implementing a Bitcoin Block Parser with Using ECL and C++
Click on the poster for a larger image.