Givens Rotations for QR Decomposition, SVD and PCA over Database Joins
Dan Olteanu, Nils Vortmeier, {\DJ}or{\dj}e \v{Z}ivanovi\'c

TL;DR
This paper presents Figaro, an algorithm that efficiently computes QR decomposition, SVD, and PCA directly over relational joins without materializing the join output, improving performance and accuracy.
Contribution
It introduces a novel method to push QR decomposition past database joins, enabling linear-time computation independent of join size for acyclic joins.
Findings
Figaro outperforms LAPACK Intel MKL in runtime.
It maintains numerical accuracy comparable to classical algorithms.
The method is efficient for large database joins.
Abstract
This article introduces Figaro, an algorithm for computing the upper-triangular matrix in the QR decomposition of the matrix defined by the natural join over relational data. Figaro's main novelty is that it pushes the QR decomposition past the join. This leads to several desirable properties. For acyclic joins, it takes time linear in the database size and independent of the join size. Its execution is equivalent to the application of a sequence of Givens rotations proportional to the join size. Its number of rounding errors relative to the classical QR decomposition algorithms is on par with the database size relative to the join output size. The QR decomposition lies at the core of many linear algebra computations including the singular value decomposition (SVD) and the principal component analysis (PCA). We show how Figaro can be used to compute the orthogonal matrix in the QR…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsCloud Computing and Resource Management · Parallel Computing and Optimization Techniques · Quantum Computing Algorithms and Architecture
