Making RDBMSs Efficient on Graph Workloads Through Predefined Joins
Guodong Jin, Semih Salihoglu
摘要
Joins in native graph database management systems (GDBMSs) are predefined to the system as edges, which are indexed in adjacency list indices and serve as pointers. This contrasts with and can be more performant than value-based joins in RDBMSs. Existing approaches to integrate predefined joins into RDBMSs adopt a strict separation of graph and relational data and processors, where a graph-specific processor uses left-deep and index nested loop joins (INLJ) for a subset of joins. In this paper we study and experimentally evaluate this technique's performance against an alternative technique that is based on using hash joins that use system-level row IDs (RIDs). In this alternative approach, when a join between two tables is predefined to the system, the RIDs of joining tuples are materialized in extended tables and optionally in RID indices. Instead of using the RID index to perform the join directly, we use it primarily in hash joins to generate filters that can be passed to scans using sideways information passing (sip), ensuring sequential scans. We further compare these two approaches against: (i) the default value-based joins of an RDBMS; and (ii) using materialized views that can avoid evaluating predefined joins completely and instead replace them with scans. We integrated our alternative approach to DuckDB and call the resulting system GRainDB. Our evaluation demonstrates that existing INJL-based approach can be very efficient when entity relations contain very selective filters. However, GRainDB's approach is more robust and is either competitive with or outperforms the INLJ-based approach across a wide range of settings. We further demonstrate that GRainDB far improves the performance of DuckDB, which uses default value-based joins, on relational and graph workloads with large many-to-many joins, making it competitive with a state-of-the-art GDBMS, and incurs no major overheads otherwise.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper2
- Chimera: A system design of dual storage and traversal-join unified query processing for SQL/PGQGeonho Lee, Jeongho Park, Min-Soo KimVLDB 2025 · 被引用 4 次
- Towards a Converged Relational-Graph Optimization FrameworkYunkai Lou, Longbin Lai, Bingqing Lyu, Yufan Yang 等SIGMOD 2025 · 被引用 4 次
它引用的顶会 Paper2
相关 Paper
- The Data World Is Not Flat: Efficient Factorized Execution for Relational SystemsStefan Lehner, Thomas NeumannVLDB 2026
- A+ Indexes: Tunable and Space-Efficient Adjacency Lists in Graph Database Management SystemsAmine Mhedhbi, Pranjal Gupta, Shahid Khaliq, Semih SalihogluICDE 2021 · 被引用 10 次
- Columnar Storage and List-based Processing for Graph Database Management SystemsPranjal Gupta, Amine Mhedhbi, Semih SalihogluVLDB 2021 · 被引用 31 次
- These Rows Are Made for Sorting and That's Just What We'll DoLaurens Kuiper, Hannes MühleisenICDE 2023 · 被引用 6 次
- Saving Private Hash JoinLaurens Kuiper, Paul Gross, Peter Boncz, Hannes MühleisenVLDB 2025
