apache / apache/arrow-rs

Sparse tensor support

Closed
#10,462 0 comments 1 reaction 0 assignees View on GitHub
enhancement
Dominant language
Rust
Stars
3.6k
Forks
1.3k
Avg merge
2d 16h
Merged PRs (30d)
168

Description

### Discussed in https://github.com/apache/arrow-rs/discussions/9718

Originally posted by **JosiahParry** April 15, 2026
Arrow C++ implementation has a sparse tensor implementation that supports CSR, COO, CSC, and CSF formats:
https://github.com/apache/arrow/blob/4eca50770f7f2c5938a676f0719fbfc8aae4803c/cpp/src/arrow/sparse_tensor.h#L52

It would be really great if the rust library could also support this. It would open up the ability to do sparse matrix math using arrow data—e.g. with faer, burn, or alternatives and make it very easy for data to cross the FFI boundary.

Specifically, my interest is in spatial statistics and GeoAI.

Reference: https://arrow.apache.org/docs/format/Other.html

Contributor guide

Open the contributing guide

Research direction

Start by reading the Arrow format reference and the C++ sparse_tensor.h implementation linked in the issue, then review the related discussion. Define the scope for CSR, COO, CSC, and CSF support and identify the Rust entry points and tests needed; done means the selected sparse tensor formats work across the Rust and Arrow data boundaries.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.