dzisiaj wcześniej @heliuslabs uruchomił nową metodę RPC, getTransactionsForAddress (gTFA) porozmawiajmy o tym, jak to działa od kuchni transakcje solana zazwyczaj odnoszą się do 6-10 kont (do ~256) gdy pytasz "pokaż mi historię konta X", prosisz RPC o przeszukanie transakcji i znalezienie tych, które zawierają X na swojej liście kont to w zasadzie próba znalezienia igły w stogu siana nie możesz po prostu dodać standardowego indeksu do tablicy "accounts" w skali – bazy danych mają problemy z indeksowaniem tablic o zmiennej długości rozwiązanie: zbudowaliśmy własny indeks, z jednym wpisem na każdą unikalną parę (transakcja, konto) to nie jest małe osiągnięcie – jest około 493 miliardów transakcji (i rośnie) nasz indeks obecnie zawiera ponad 2,3 biliona (!) wierszy pomimo rozmiaru, czas wyszukiwania P50 wynosi ~8ms przy obciążeniu produkcyjnym mamy również wiele innych indeksów, aby wspierać wyszukiwania według slotu, czasu, statusu itp. wszystko działa na specjalnie zaprojektowanych serwerach bare metal z petabajtami najwyższej jakości NVMEs, replikowanych w wielu regionach tldr – cierpieliśmy, abyś ty nie musiał miłego korzystania