Dữ liệu lưu trữ tốc độ cao cho backfill và lập chỉ mục
Truy vấn dữ liệu lịch sử Solana nhanh hơn tới 10 lần bằng hệ thống lưu trữ hiện đại và các phương thức RPC độc quyền như getTransactionsForAddress.



Độ trễ thấp hơn 10 lần, số lệnh gọi RPC ít hơn 100 lần
Dễ dàng truy cập toàn bộ lịch sử Solana từ khối khởi nguyên và tự tin xây dựng các dịch vụ backend.
Truy cập toàn bộ lịch sử Solana chỉ với một lệnh gọi RPC
Lập chỉ mục dữ liệu dễ dàng hơn với getTransactionsForAddress, phương thức mới kết hợp getSignaturesForAddress và getTransaction trong một lệnh gọi duy nhất.
- Dùng tìm kiếm đảo ngược để trả về kết quả cũ nhất trước
- Thêm bộ lọc theo thời gian để lọc theo dấu thời gian hoặc slot
- Nhận lịch sử hợp nhất cho địa chỉ và tài khoản token
{
"jsonrpc": "2.0",
"id": 1,
"method": "getTransactionsForAddress",
"params": [
"YOUR_ADDRESS_HERE",
{
"transactionDetails": "full",
"sortOrder": "asc", // Oldest first
"limit": 1000,
"filters": {
"tokenAccounts": "all",
"blockTime": {
"gte": 1735689600, // Jan 1, 2025
"lte": 1738368000 // Jan 31, 2025
},
"status": "succeeded"
}
}
]
}
- Dùng tìm kiếm đảo ngược để trả về kết quả cũ nhất trước
- Thêm bộ lọc theo thời gian để lọc theo dấu thời gian hoặc slot
- Nhận lịch sử hợp nhất cho địa chỉ và tài khoản token
Toàn bộ lịch sử chuyển tiền của ví,
không cần ghép nối
Dùng getTransfersByAddress để trả về các bản ghi chuyển SOL và token đã được phân tích cú pháp, dễ đọc cho một địa chỉ ví với các bộ lọc chính xác.
- Lọc giao dịch chuyển theo mint, thời gian, số lượng, slot, trạng thái, hướng hoặc đối tác giao dịch
- Trả về các đối tượng giao dịch chuyển ngắn gọn, dễ đọc thay vì toàn bộ payload giao dịch
- Truy xuất toàn bộ lịch sử chuyển tiền của ví với tính năng phân trang dành cho ứng dụng production
{
"jsonrpc": "2.0",
"id": 1,
"method": "getTransfersByAddress",
"params": [
"YOUR_ADDRESS_HERE",
{
"mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"direction": "in",
"with": "COUNTERPARTY_ADDRESS",
"filters": {
"amount": { "gte": 1000000 },
"blockTime": { "gte": 1735689600, "lte": 1738368000 },
"status": "succeeded"
},
"limit": 100
}
]
}
- Lọc giao dịch chuyển theo mint, thời gian, số lượng, slot, trạng thái, hướng hoặc đối tác giao dịch
- Trả về các đối tượng giao dịch chuyển ngắn gọn, dễ đọc thay vì toàn bộ payload giao dịch
- Truy xuất toàn bộ lịch sử chuyển tiền của ví với tính năng phân trang dành cho ứng dụng production
Lập chỉ mục Solana,
nay nhanh hơn 10 lần
Backfill cơ sở dữ liệu bằng dữ liệu lịch sử nhanh hơn 10 lần với hệ thống lưu trữ được tối ưu hóa về hiệu năng, đồng thời dùng LaserStream để dữ liệu luôn được cập nhật.
- Thời gian tra cứu P50 là 8ms dưới tải production
- Chạy trên máy chủ vật lý với NVMe quy mô petabyte
- Được sao chép trên nhiều khu vực để bảo đảm khả năng dự phòng
- Thời gian tra cứu P50 là 8ms dưới tải production
- Chạy trên máy chủ vật lý với NVMe quy mô petabyte
- Được sao chép trên nhiều khu vực để bảo đảm khả năng dự phòng
“Trước đây, việc đưa các giao dịch Solana từ những ví có hơn 15.000 giao dịch vào công cụ thuế của Awaken mất 3–5 phút. Với getTransactionsForAddress, quá trình này mất chưa đến 60 giây. Ngoài ra, nhờ tính năng lọc theo slot của gTFA, chúng tôi có thể liên tục đồng bộ các giao dịch mới từ slot được nhập gần nhất, nhanh chóng và dễ dàng hơn so với việc duyệt ngược từ giao dịch mới nhất đến cũ nhất.”

Backfill dữ liệu Solana
và luôn cập nhật dữ liệu
Xác định tập dữ liệu
Chọn phạm vi ngày hoặc slot, loại dữ liệu (ví dụ: block, tài khoản, chương trình) và bộ lọc (ví dụ: tokenAccounts) để xác định phạm vi tập dữ liệu.
Nạp dữ liệu lịch sử
Nhận các tập dữ liệu có cấu trúc tại đích bạn chọn, bao gồm Amazon S3, ClickHouse và PostgreSQL
Luôn cập nhật các chỉ mục
Đồng bộ các chỉ mục với dữ liệu Solana mới nhất bằng cách truyền phát sự kiện mới theo thời gian thực qua LaserStream gRPC hoặc WebSockets.
Các trường hợp sử dụng dữ liệu lịch sử
Lập chỉ mục
Nhanh chóng khởi tạo cơ sở dữ liệu bằng dữ liệu lưu trữ mà không cần xây dựng trình lập chỉ mục.
Tuân thủ
Truy xuất hoạt động giao dịch trong quá khứ để tuân thủ quy định và yêu cầu của cơ quan quản lý.
Kiểm thử dữ liệu quá khứ
Tải xuống các tập dữ liệu để kiểm thử thuật toán giao dịch, cải thiện ROI và giảm rủi ro.
Phân tích lịch sử
Khám phá xu hướng onchain, dòng luân chuyển và hành vi người dùng bằng cách phân tích các tập dữ liệu có cấu trúc.
Báo cáo
Backfill dữ liệu lịch sử về ứng dụng và doanh thu để bảo đảm báo cáo chính xác.
Huấn luyện
Dùng dữ liệu có cấu trúc để huấn luyện LLM trên một tập dữ liệu Solana đầy đủ và có thể tìm kiếm.
Câu hỏi thường gặp về dữ liệu lịch sử
Trong bối cảnh dữ liệu lưu trữ Solana, lập chỉ mục là quá trình cấu trúc và sắp xếp dữ liệu giao dịch lịch sử vào cơ sở dữ liệu để truy xuất nhanh chóng, hiệu quả. Hầu hết công ty xây dựng sản phẩm trên Solana đều duy trì các chỉ mục liên quan đến hoạt động kinh doanh của mình (ví dụ: giao dịch chuyển stablecoin). Backfill là quá trình truy xuất dữ liệu giao dịch lịch sử từ bất kỳ thời điểm nào kể từ khối khởi nguyên của Solana để xây dựng chỉ mục. Trong hầu hết trường hợp, nhà phát triển có thể dùng một phương thức RPC như getTransactionsForAddress để áp dụng bộ lọc theo thời gian, đặt thứ tự sắp xếp (tức là theo trình tự thời gian hoặc mới nhất trước) và phân trang qua các lô giao dịch. Với các tác vụ backfill lớn, công ty có thể liên hệ đội ngũ của chúng tôi để sử dụng dịch vụ backfill được quản lý.
Tùy chọn tự phục vụ cho phép bạn backfill hoặc lập chỉ mục dữ liệu Solana bằng các phương thức RPC hiện có, chẳng hạn như getTransactionsForAddress nâng cao của chúng tôi, rồi đưa dữ liệu đến đích bạn chọn. Backfill được quản lý là dịch vụ beta mà chúng tôi thay bạn xử lý quy trình trên. Ban đầu, chúng tôi giới hạn quyền truy cập dịch vụ backfill được quản lý cho một số lượng khách hàng nhất định để hiểu rõ hơn các vấn đề và đích đến mong muốn của dữ liệu backfill trước khi triển khai dưới dạng tùy chọn tự phục vụ.
Phương pháp được đề xuất để lập chỉ mục dữ liệu Solana là dùng phương thức RPC getTransactionsForAddress để lấy toàn bộ dữ liệu lưu trữ của Solana, lưu trữ trong cơ sở dữ liệu bạn chọn như PostgreSQL hoặc cơ sở dữ liệu dạng cột như ClickHouse, sau đó dùng giải pháp truyền phát dữ liệu Solana như LaserStream hoặc Enhanced WebSockets để cập nhật chỉ mục theo thời gian thực.
Phương thức RPC getTransactionsForAddress (gTFA) là phương thức RPC Solana để truy vấn dữ liệu lưu trữ chỉ có tại Helius, kết hợp getSignaturesForAddress và getTransaction trong một lệnh gọi duy nhất. Nhà phát triển có thể sử dụng các tính năng mới mạnh mẽ, bao gồm tìm kiếm đảo ngược, lọc theo thời gian, trạng thái và slot, cùng tính năng phân trang để trả về các lô gồm tối đa 100 giao dịch đầy đủ hoặc 1.000 chữ ký.
Bộ lọc tokenAccounts mới cho getTransactionForAddress trả về tất cả giao dịch của một địa chỉ Solana — bao gồm mọi giao dịch liên quan đến các Tài khoản Token Liên kết (ATA) của địa chỉ đó — chỉ với một lệnh gọi. Trước đây, nhà phát triển phải truy vấn getTokenAccountsByOwner rồi gọi getSignaturesForAddress cho từng tài khoản token. Cách này chậm, tốn kém và thường cần thêm hàng trăm lệnh gọi RPC.
Có. Để có cái nhìn toàn diện, hãy dùng Parsed Events API để phân trang qua lịch sử của một địa chỉ. Các instruction được hỗ trợ sẽ được giải mã thành đối số và tài khoản có tên trên hơn 3.600 chương trình Solana, kèm thông tin chi tiết về giao dịch chuyển token và bản tóm tắt bằng ngôn ngữ tự nhiên khi được hỗ trợ. Dữ liệu instruction thô vẫn được giữ lại khi không thể giải mã. Dùng getTransactionsForAddress khi cần payload giao dịch thô. Bạn cũng có thể dùng getTransfersByAddress để trả về các bản ghi chuyển SOL và token ngắn gọn, đã được phân tích cú pháp cho một địa chỉ.
Để lấy toàn bộ lịch sử của một ví Solana, bao gồm tất cả Tài khoản Token Liên kết (ATA) của ví, hãy dùng phương thức RPC getTransactionsForAddress và đặt bộ lọc tokenAccounts thành all. Các giao dịch được trả về phải tham chiếu đến địa chỉ ví hoặc một tài khoản token thuộc sở hữu của ví. Để biết thêm thông tin, hãy đọc hướng dẫn về cách lấy lịch sử token Solana chỉ bằng một lệnh gọi.
Chúng tôi đã xây dựng từ đầu một hệ thống lưu trữ Solana hoàn toàn mới để thay thế cơ sở dữ liệu Google BigTable mặc định mà hầu hết nhà cung cấp RPC khác dùng để cung cấp dữ liệu lịch sử. Chỉ mục của chúng tôi lưu một mục cho mỗi cặp (giao dịch, tài khoản) duy nhất. Tính đến nay, chỉ mục có hơn 2,3 nghìn tỷ hàng, lưu trữ hơn 450 tỷ giao dịch của Solana tại thời điểm viết bài. Mặc dù có quy mô lớn, thời gian tra cứu P50 chỉ khoảng 8ms dưới tải production. Chúng tôi cũng xây dựng các chỉ mục khác để hỗ trợ tra cứu theo slot, thời gian, trạng thái và nhiều tiêu chí khác. Tất cả chỉ mục này chạy trên các máy chủ vật lý chuyên dụng với hàng petabyte NVMe hàng đầu, được sao chép trên nhiều khu vực để cung cấp cho nhà phát triển quyền truy cập dữ liệu lịch sử đáng tin cậy, có khả năng mở rộng và độ trễ thấp.
Các phương thức RPC tiêu chuẩn như getBlock chậm và không phù hợp với những tập dữ liệu nhỏ, cụ thể. Việc lặp qua các phương thức như getSignaturesForAddress và getTransaction đòi hỏi nhiều yêu cầu RPC không cần thiết, cơ chế exponential backoff và logic thử lại. Trước đây, các phương thức RPC tiêu chuẩn này cũng truy cập Google BigTable, kho dữ liệu lưu trữ mặc định được hầu hết nhà cung cấp RPC sử dụng. Chúng tôi đã tự xây dựng chỉ mục từ đầu để tối ưu hóa cách lưu trữ, truy cập và cung cấp dữ liệu lịch sử. Khi nhà phát triển truy vấn phương thức getTransactionsForAddress (gTFA), họ kết hợp các phương thức tiêu chuẩn getSignaturesForAddress và getTransaction thành một truy vấn duy nhất với các tùy chọn sắp xếp, lọc và phân trang bổ sung. Nhờ các chỉ mục tùy chỉnh, getTransactionsForAddress giúp nhà phát triển kiểm soát truy vấn tốt hơn, đơn giản hóa quy trình làm việc và nhận dữ liệu nhanh hơn.
Được các đội ngũ hàng đầu tin dùng
Nhờ endpoint getTransactionsForAddress (gTFA), chúng tôi đã giảm 40% số lệnh gọi RPC. Các tính năng tiên tiến của Helius giúp chúng tôi mang đến trải nghiệm nhanh nhất và đáng tin cậy nhất cho người dùng.
Trước đây, việc đưa giao dịch Solana từ các ví có hơn 15.000 giao dịch vào công cụ thuế của Awaken mất 3-5 phút. Với getTransactionsForAddress, quá trình này mất chưa đến 60 giây. Ngoài ra, khả năng lọc theo slot của gTFA giúp chúng tôi liên tục đồng bộ giao dịch mới từ slot được nhập gần nhất nhanh và dễ hơn so với việc duyệt ngược từ mới nhất đến cũ nhất.
Trước đây, chúng tôi phải thực hiện nhiều lệnh gọi và ghép nối logic để xây dựng quy trình lịch sử giao dịch trên Solana. Với endpoint getTransactionsForAddress mới của Helius, giờ đây chúng tôi chỉ cần một truy vấn để nhận dữ liệu giao dịch đầy đủ, cùng khả năng lọc, sắp xếp và phân trang trong một bước. Điều này giúp giảm đáng kể công sức kỹ thuật và mang lại kết quả nhanh hơn, đáng tin cậy hơn cho người dùng.
Về RPC, Helius phản hồi cực kỳ nhanh. Điều này vô cùng giá trị khi làm việc với công nghệ tiên phong như nén NFT. Thời gian xử lý nhanh và ít thời gian gỡ lỗi lập chỉ mục hơn giúp chúng tôi dành nhiều thời gian hơn để xây dựng trải nghiệm người dùng tuyệt vời.
Ưu tiên hàng đầu của chúng tôi là sự an toàn của người dùng. Để cung cấp cho nhà giao dịch mức giá tốt nhất và chênh lệch giá thấp nhất, chúng tôi dựa vào LaserStream để cung cấp dữ liệu onchain mới nhất, nhanh nhất cho công cụ định giá.
Khi hoạt động trên Solana tiếp tục tăng trưởng, Helius nổi bật là một trong những nhà cung cấp hạ tầng Solana hàng đầu, giúp đội ngũ của chúng tôi truy cập dữ liệu đáng tin cậy, đáp ứng yêu cầu của một nền tảng cấp doanh nghiệp.
Từng tự xây dựng hệ thống lập chỉ mục và pipeline dữ liệu nội bộ tại Zeta, tôi hiểu điều đó gây đau đầu đến mức nào cho các đội ngũ mới. Khả năng tiết kiệm vô số giờ kỹ thuật dữ liệu và chi phí AWS đắt đỏ là một lợi thế lớn đối với chúng tôi.
Helius cực kỳ nhanh, đáng tin cậy và tôi sẵn sàng giới thiệu cho bất kỳ ai muốn có trải nghiệm phát triển tốt nhất trên Solana. Helius vận hành phần lớn hạ tầng của chúng tôi tại Backpack.
Nhờ endpoint getTransactionsForAddress (gTFA), chúng tôi đã giảm 40% số lệnh gọi RPC. Các tính năng tiên tiến của Helius giúp chúng tôi mang đến trải nghiệm nhanh nhất và đáng tin cậy nhất cho người dùng.
Trước đây, việc đưa giao dịch Solana từ các ví có hơn 15.000 giao dịch vào công cụ thuế của Awaken mất 3-5 phút. Với getTransactionsForAddress, quá trình này mất chưa đến 60 giây. Ngoài ra, khả năng lọc theo slot của gTFA giúp chúng tôi liên tục đồng bộ giao dịch mới từ slot được nhập gần nhất nhanh và dễ hơn so với việc duyệt ngược từ mới nhất đến cũ nhất.
Trước đây, chúng tôi phải thực hiện nhiều lệnh gọi và ghép nối logic để xây dựng quy trình lịch sử giao dịch trên Solana. Với endpoint getTransactionsForAddress mới của Helius, giờ đây chúng tôi chỉ cần một truy vấn để nhận dữ liệu giao dịch đầy đủ, cùng khả năng lọc, sắp xếp và phân trang trong một bước. Điều này giúp giảm đáng kể công sức kỹ thuật và mang lại kết quả nhanh hơn, đáng tin cậy hơn cho người dùng.
Về RPC, Helius phản hồi cực kỳ nhanh. Điều này vô cùng giá trị khi làm việc với công nghệ tiên phong như nén NFT. Thời gian xử lý nhanh và ít thời gian gỡ lỗi lập chỉ mục hơn giúp chúng tôi dành nhiều thời gian hơn để xây dựng trải nghiệm người dùng tuyệt vời.
Ưu tiên hàng đầu của chúng tôi là sự an toàn của người dùng. Để cung cấp cho nhà giao dịch mức giá tốt nhất và chênh lệch giá thấp nhất, chúng tôi dựa vào LaserStream để cung cấp dữ liệu onchain mới nhất, nhanh nhất cho công cụ định giá.
Khi hoạt động trên Solana tiếp tục tăng trưởng, Helius nổi bật là một trong những nhà cung cấp hạ tầng Solana hàng đầu, giúp đội ngũ của chúng tôi truy cập dữ liệu đáng tin cậy, đáp ứng yêu cầu của một nền tảng cấp doanh nghiệp.
Từng tự xây dựng hệ thống lập chỉ mục và pipeline dữ liệu nội bộ tại Zeta, tôi hiểu điều đó gây đau đầu đến mức nào cho các đội ngũ mới. Khả năng tiết kiệm vô số giờ kỹ thuật dữ liệu và chi phí AWS đắt đỏ là một lợi thế lớn đối với chúng tôi.
Helius cực kỳ nhanh, đáng tin cậy và tôi sẵn sàng giới thiệu cho bất kỳ ai muốn có trải nghiệm phát triển tốt nhất trên Solana. Helius vận hành phần lớn hạ tầng của chúng tôi tại Backpack.
Bắt đầu truy vấn lịch sử Solana
Xây dựng nhanh hơn với các phương thức dữ liệu lịch sử chỉ có tại Helius và hạ tầng lưu trữ có độ trễ thấp.



