The biggest Solana news today wasn’t Grayscale or Western Union
It was @heliuslabs making 493 billion transactions searchable by account at Web2 speed
IBRL, from writes to reads 🏎️
earlier today @heliuslabs launched a new RPC method, getTransactionsForAddress (gTFA)
let's talk about how it works under the hood
solana transactions typically reference 6-10 accounts (up to ~256)
when you query "get me the history of account X", you are asking the RPC to scan transactions and find the ones that include X in their list of accounts
this is essentially trying to find a needle in a haystack
you can't simply add a standard index on the "accounts" array at scale – databases struggle with indexing variable length arrays
the solution: we built our own index, with one entry per unique (transaction, account) pair
this is no small feat – there are ~493 billion transactions (and growing)
our index currently holds over 2.3 trillion (!) rows
despite the size, the P50 lookup time is ~8ms under production load
and we have many other indices to power lookups by slot, time, status, etc
all running on purpose-built bare metal hosts with petabytes of top-of-the line NVMEs, replicated across multiple regions
tldr – we suffered so you don't have to
enjoy
29.25K
256
The content on this page is provided by third parties. Unless otherwise stated, OKX is not the author of the cited article(s) and does not claim any copyright in the materials. The content is provided for informational purposes only and does not represent the views of OKX. It is not intended to be an endorsement of any kind and should not be considered investment advice or a solicitation to buy or sell digital assets. To the extent generative AI is utilized to provide summaries or other information, such AI generated content may be inaccurate or inconsistent. Please read the linked article for more details and information. OKX is not responsible for content hosted on third party sites. Digital asset holdings, including stablecoins and NFTs, involve a high degree of risk and can fluctuate greatly. You should carefully consider whether trading or holding digital assets is suitable for you in light of your financial condition.


