Solana Network Performance Dashboard

    Create a dashboard displaying Solana network performance over time.

    Introduction

    Solana is a highly functional open source project that implements a new, permissionless and high-speed layer-1 blockchain. Its

    design aims to solve the blockchain trilemma. This trilemma describes a set of three major challenges that developers face when building blockchains: decentralization, security and scalability.

    In this study, we are going to:

    1. Create a dashboard displaying Solana network performance over time.
    2. Compare network performance from past month with rest of the year.
    3. The network usage statistics that will be studied are TPS and success rates of transactions.
    4. Look for the reasons of the changes in network performance
    5. Finally, we’ll take a look into wallets and programs that have paid the most fees for failed transactions.

    Approach

    Solana dataset is very huge, with million of transaction being stored each day, therefore some queries might take too lung to be processed. In order to acquire TPS millions of transactions should be counted, Fortunately, solana.core.fact_blocks table has the amount of transaction count per block, it makes it faster to calculate TPS.

    To get other information, we’ll be using thesolana.core.fact_events and solana.core.fact_transactions tables.

    To get the top programs that have paid the most fees for failed transactions, we had to split our query and UNION them, the reason for this was because of huge number of transactions, the warehouse couldn’t finish the query. in order to speed up the process the average amount of fees paid was used.

    The charts shown in this study start from January 1, 2022, we will compare the data from June 13 to today with rest of the year.

    Top Wallets

    On the chart below, the top 10 wallets that have paid the most fees for failed transactions since 2022, can be seen. The amount of fees shown below is in SOL.

    TPS

    The following chart depicts the the average daily TPS since Jan 2022. It can be seen that

    • There are few days that TPS is drastically decreased.
    • The average daily TPS value has seen a new high since last month, and have stayed stable in the new levels.
    • In rest of the year, TPS has never been higher than 3300, In the past month it has been almost always above 3400 TPS.

    Success Rate

    The graph below shows the amount of successful transactions compared to failed transactions. In the following charts, true means success and false means failed transaction. It can be seen that during first few months of the year success rate has been higher, as the times passed the success rate has decreased, on May 12, 68% of transactions were failed, and since that day, the number of unsuccessful transactions has decreased day by day. In the past month, the rate of failed transitions has mostly been decreasing. In the last day, almost 78.5% of transaction were successful.

    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Verdict

    But the main question remains, has transaction per second and success rates of transactions gone up recently?

    Yes, as already discussed both TPS and success rates have increased. by looking at the previous chart, it can be seen that user count has decreased in recent month, there are also some news of updates for solana chain, but these updates are not implemented yet []

    Top Programs

    On the chart below, the top 10 programs that have paid the most fees for failed transactions can be seen. As already stated, the average amount of fees paid for failed transactions by programs is used to calculated these numbers. The average fees paid is about 5550 lamports or 0.000005 SOL. The amount of fees shown below is in SOL. Serum, Jupiter and Mango have spent the most fees on failed transaction.

    Loading...
    Loading...
    Loading...

    Daily Users

    The following chart shows the daily unique users, it will be used in the next section to reach a conclusion.