onesparse
one_sparse : Sparse linear algebra and graph extension for PostgreSQL 18
Overview
| ID | Extension | Package | Version | Category | License | Language |
|---|---|---|---|---|---|---|
| 2620 | onesparse | one_sparse | 1.0.0 |
FEAT | Apache-2.0 | C |
| Attribute | Has Binary | Has Library | Need Load | Has DDL | Relocatable | Trusted |
|---|---|---|---|---|---|---|
| --s-d-- | No | Yes | No | Yes | no | no |
Packages
| Type | Repo | Version | PG Major Compatibility | Package Pattern | Dependencies |
|---|---|---|---|---|---|
| EXT | PIGSTY | 1.0.0 |
18 17 16 15 14 | one_sparse |
- |
| RPM | PIGSTY | 1.0.0 |
18 17 16 15 14 | onesparse_$v |
graphblas, lagraph |
| DEB | PIGSTY | 1.0.0 |
18 17 16 15 14 | postgresql-$v-onesparse |
libgraphblas10, liblagraph1, liblagraphx1 |
| Linux / PG | PG18 | PG17 | PG16 | PG15 | PG14 |
|---|---|---|---|---|---|
| el8.x86_64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| el8.aarch64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| el9.x86_64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| el9.aarch64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| el10.x86_64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| el10.aarch64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| d12.x86_64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| d12.aarch64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| d13.x86_64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| d13.aarch64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| u22.x86_64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| u22.aarch64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| u24.x86_64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| u24.aarch64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| u26.x86_64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
| u26.aarch64 | PIGSTY 1.0.0 | N/A | N/A | N/A | N/A |
Source
github.com/OneSparse/OneSparse
onesparse-1.0.0.tar.gz
Install
Make sure PGDG and PIGSTY repo available:
Install this extension with pig:
Create this extension with:
Usage
Sources: homepage, release v1.0.0, control file at v1.0.0, intro docs, matrix docs, vector docs, algorithm examples
OneSparse is a PostgreSQL extension that binds SuiteSparse:GraphBLAS into Postgres and exposes sparse linear algebra and graph algorithms as new types, functions, and operators.
The docs treat matrix as the core type, with vector and scalar built on top of the same model. The v1.0.0 release exists, while the extension control file at that tag still declares SQL default_version = '0.1.0'.
Core Setup
The docs site organizes the API around matrix, vector, and scalar, with interactive examples using casts and constructors.
Matrix and Vector
The matrix page shows common operations such as construction, print(), draw(), assignment, extraction, cast_to(), resize, and aggregation. The vector page documents the matching vector API including nvals(), size(), eadd(), emult(), reduce_scalar(), choose(), and apply().
Graph Algorithms
The examples page uses Matrix Market input and graph visualization with draw(...). The documented graph algorithms include:
bfs(graph, 1)for level and parent BFSsssp(cast_to(graph, 'int32'), 1::bigint, 1)for single-source shortest pathpagerank(graph)for ranking vertices by link structuretriangle_centrality(graph)for triangle-based centralitybetweenness(graph, ARRAY[...])andsquare_clustering(graph)for additional graph analysis
Representative example from the docs:
The same guide shows loading a graph with mmread('/home/postgres/onesparse/demo/karate.mtx').