2 Repos
Physical query operators that combine two relations by building a hash table on one and probing it with the other.
Distinct from Custom Hashing Implementations: The candidates focus on the internal hashing functions and data structures (Custom Hashing, Linear Hashing) rather than the relational join operator logic.
Explore 2 awesome GitHub repositories matching data & databases · Hash Join Implementations. Refine with filters or upvote what's useful.
MiniOB is an open-source educational relational database kernel designed for learning the internals of database systems. It implements a dual-engine storage architecture combining B+ Tree and LSM-Tree, supports SQL parsing and query execution, and provides transactional processing with multi-version concurrency control. The system communicates with clients using the MySQL wire protocol and includes a vector database extension for storing and querying high-dimensional vectors. The project distinguishes itself through its comprehensive coverage of core database concepts in a single, learnable c
Combine rows from two tables by building a hash table on one table and probing it with rows from the other.
Velox ist eine leistungsstarke C++-Abfrage-Ausführungs-Engine und eine Bibliothek für spaltenbasierte Datenverarbeitung. Sie dient als kompositionsfähiges Framework zur Implementierung analytischer Query-Engines und bietet einen vektorisierten Ausdrucksauswerter sowie ein Toolkit für Datenmanagementsysteme. Das Projekt zeichnet sich durch die Verwendung vektorisierter spaltenbasierter Ausführung und arena-basierter Speicherallokation zur Verarbeitung großer Datensätze aus. Es bietet spezialisierte Optimierungen wie Broadcast-Join-Table-Caching, Dynamic-Filter-Push-Down und Dictionary-Encoding, um den Speicher-Overhead zu reduzieren und analytische Lesezugriffe zu beschleunigen. Die Engine deckt ein breites Spektrum analytischer Funktionen ab, einschließlich der Implementierung von Hash-, Merge- und Semi-Joins sowie mehrstufiger paralleler Aggregation und der Berechnung von Fensterfunktionen. Sie bietet Primitive für spaltenbasierte In-Memory-Speicherung, Parquet-Datendekodierung und die Integration mit Cloud-Speichern. Erweiterbarkeit wird durch ein Funktionsregistrierungssystem für benutzerdefinierte Skalar- und Aggregatfunktionen geboten, wobei High-Level-Bindings verfügbar sind, um die C++-Logik mit Python zu verbinden.
Combines datasets based on matching keys using partitioned or broadcast distribution strategies.