We report the results of a yearlong effort to port the WebGraph framework [4] from Java to Rust. For two decades WebGraph has been instrumental in the analysis and distribution of large graphs for the research community of TheWebConf, but the intrinsic limitations of the Java Virtual Machine had become a bottleneck for very large use cases, such as the Software Heritage Merkle graph [2] with its half a trillion arcs. As part of this clean-slate implementation of WebGraph in Rust, we developed a few ancillary projects bringing to the Rust ecosystem some missing features of independent interest, such as easy, consistent and zero-cost memory mapping of data structures. WebGraph in Rust offers impressive performance improvements over the previous implementation, enabling open-source graph analytics on very large datasets on top of a modern systems programming language.

WebGraph: The Next Generation (Is in Rust) / T. Fontana, S. Vigna, S. Zacchiroli - In: WWW '24: Companion / [a cura di] T.-S. Chua, C.-W. Ngo. - [s.l] : ACM, 2024 May 13. - ISBN 979-8-4007-0172-6. - pp. 686-689 (( Intervento presentato al 33. convegno ACM Web Conference tenutosi a Singapore nel 2024 [10.1145/3589335.3651581].

WebGraph: The Next Generation (Is in Rust)

S. Vigna
Secondo
;
2024

Abstract

We report the results of a yearlong effort to port the WebGraph framework [4] from Java to Rust. For two decades WebGraph has been instrumental in the analysis and distribution of large graphs for the research community of TheWebConf, but the intrinsic limitations of the Java Virtual Machine had become a bottleneck for very large use cases, such as the Software Heritage Merkle graph [2] with its half a trillion arcs. As part of this clean-slate implementation of WebGraph in Rust, we developed a few ancillary projects bringing to the Rust ecosystem some missing features of independent interest, such as easy, consistent and zero-cost memory mapping of data structures. WebGraph in Rust offers impressive performance improvements over the previous implementation, enabling open-source graph analytics on very large datasets on top of a modern systems programming language.
big data; compression; graphs; Java; Rust; social networks; web graphs
Settore INFO-01/A - Informatica
   SEcurity and RIghts in the CyberSpace (SERICS)
   SERICS
   MINISTERO DELL'UNIVERSITA' E DELLA RICERCA
   codice identificativo PE00000014
13-mag-2024
ACM SIGWEB
Book Part (author)
File in questo prodotto:
File Dimensione Formato  
3589335.3651581.pdf

accesso aperto

Tipologia: Publisher's version/PDF
Dimensione 888.05 kB
Formato Adobe PDF
888.05 kB Adobe PDF Visualizza/Apri
Pubblicazioni consigliate

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/2434/1131196
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 5
  • ???jsp.display-item.citation.isi??? ND
  • OpenAlex ND
social impact