Sebelumnya hari ini @heliuslabs meluncurkan metode RPC baru, getTransactionsForAddress (gTFA) Mari kita bicara tentang cara kerjanya di bawah tenda Transaksi Solana biasanya mereferensikan 6-10 akun (hingga ~256) saat Anda menanyakan "beri saya riwayat akun X", Anda meminta RPC untuk memindai transaksi dan menemukan transaksi yang menyertakan X dalam daftar akun mereka Ini pada dasarnya mencoba menemukan jarum di tumpukan jerami Anda tidak dapat begitu saja menambahkan indeks standar pada array "Akun" dalam skala besar – database kesulitan dengan pengindeksan array panjang variabel Solusinya: kami membangun indeks kami sendiri, dengan satu entri per pasangan unik (transaksi, akun) Ini bukan prestasi kecil – ada ~493 miliar transaksi (dan terus bertambah) Indeks kami saat ini memiliki lebih dari 2,3 triliun (!) baris terlepas dari ukurannya, waktu pencarian P50 adalah ~8ms di bawah beban produksi dan kami memiliki banyak indeks lain untuk mendukung pencarian berdasarkan slot, waktu, status, dll semuanya berjalan pada host bare metal yang dibuat khusus dengan petabyte NVME top-of-the-line, direplikasi di beberapa wilayah TLDR – Kami menderita sehingga Anda tidak perlu suka