6 Repos
Extends built-in aggregation by implementing user-defined aggregation functions (UDAFs) in Java.
Distinct from Custom SQL Functions: Distinct from Custom SQL Functions: specifically focuses on aggregation functions (UDAFs), not general scalar or table functions.
Explore 6 awesome GitHub repositories matching data & databases · Custom Aggregation Function Writing. Refine with filters or upvote what's useful.
AlaSQL is a JavaScript SQL database engine that allows for the filtering, grouping, and joining of in-memory object arrays and JSON data. It functions as an in-memory SQL database and client-side data processor, enabling the execution of SQL statements against JavaScript arrays and external data sources in both browser and server environments. The project serves as a universal data query tool capable of performing relational joins across diverse sources, such as merging Google Spreadsheets, SQLite files, and remote APIs into a single result set. It also acts as an IndexedDB SQL wrapper, allow
Allows the implementation of multi-stage user-defined aggregation functions to summarize grouped data.
Pinot is a distributed, columnar analytical database designed for high-concurrency, low-latency query processing. It functions as a real-time OLAP datastore, enabling interactive, user-facing analytics by ingesting and querying massive datasets from both streaming and batch sources. The system architecture relies on a centralized controller for cluster coordination and a distributed segment-based storage model to ensure horizontal scalability. The platform distinguishes itself through a hybrid ingestion pipeline that unifies real-time event streams and historical batch data into a single quer
Allows configuration of aggregation functions to compute results directly within the index.
Apache Hive is a SQL-on-Hadoop data warehouse that enables querying and managing petabytes of data stored in distributed storage such as HDFS and cloud storage services. It provides a familiar SQL interface for batch analytics and reporting, supported by a core set of components including the HiveServer2 Thrift service for remote query execution, the Hive Metastore Service for central metadata management, the Hive ACID Transaction Engine for concurrent read-write operations, and the Hive LLAP Interactive Engine for low-latency analytical processing. The WebHCat REST API offers an HTTP interfac
Extends built-in aggregation by implementing user-defined aggregation functions in Java.
Arroyo is a high-performance stream processing platform built in Rust. It executes continuous SQL queries on streaming data with event-time semantics, enabling accurate windowed aggregations, joins, and stateful computations on unbounded event streams. The platform uses native Rust execution for high throughput and low latency, with periodic checkpointing for exactly-once fault tolerance and horizontal scaling across distributed workers. The system integrates deeply with Kafka for reading and writing topics with exactly-once delivery and supports change data capture (CDC) from MySQL and Postg
Extends SQL with custom aggregation functions written in Rust for stateful stream processing.
H2 ist ein JDBC-konformes relationales Datenbankmanagementsystem, das in Java geschrieben ist. Es fungiert als einbettbare SQL-Datenbank, die direkt innerhalb eines Anwendungsprozesses ausgeführt werden kann, um Netzwerklatenz zu eliminieren, oder als In-Memory-Datenbank für performante, flüchtige Speicherung. Es enthält zudem eine webbasierte Konsole zur Ausführung von SQL-Befehlen und zur Verwaltung von Schemata. Das System zeichnet sich durch flexible Bereitstellungsmodi aus, einschließlich eines Standalone-Server-Modus für Remote-TCP/IP-Zugriffe und eines gemischten Modus für gleichzeitige lokale und Remote-Konnektivität. Es verfügt über eine Dialekt-Emulationsschicht und Kompatibilitätsmodi, die es ermöglichen, das Verhalten und die Syntax anderer Datenbanksysteme nachzuahmen. Die Engine bietet ein breites Spektrum an Funktionen, darunter ACID-Transaktionen mit Multi-Version Concurrency Control (MVCC), Unterstützung für Geodaten und JSON sowie fortgeschrittene analytische Fensterfunktionen. Es enthält Tools zur Datensicherung durch komprimierte Backups, SQL-Skript-Wiederherstellung und Off-Heap-Speicherverwaltung für große Datensätze. Die Datenbank lässt sich über Standard-JDBC-Treiber und Verbindungs-URLs in Anwendungen integrieren.
Supports the creation of user-defined aggregate functions (UDAFs) by mapping them to source code.
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.
Allows definition of new aggregation logic using vector interfaces and registration with specific type signatures.