Velox: An Open-source Unified Execution Engine
summary
Velox is an open‑source C++ vectorized execution library that supplies concrete building blocks: flat, dictionary, bias and sequence vectors, a string view representation that stores pointers for out‑of‑order parallel ops, and lazy vectors that avoid loading columns when runtime filters reject rows. It exposes rowwise and batch function APIs, does expression compilation with CSE and null behavior metadata, provides Hive and Parquet connectors (Parquet currently wrapped via DuckDB but being refactored), uses an Umbra‑style mmap allocator and hierarchical memory pools, and powers a drop‑in Prestissimo C++ worker for Presto.
AI-written summary · about
chapters (30)
- 0:00Introduction
- 1:42Why Velox
- 8:07Velox Components
- 17:39Functions
- 18:39Function Coverage Map
- 19:19Sample Function API
- 19:55Templates
- 20:15Helper Functions
- 20:35Expression Evaluation
- 24:20Plan Nodes
- 25:31Connectors
- 26:51Local File System
- 28:27Tasks Pipelines Drivers
- 31:07Buffer Management
- 32:38Memory Management
- 36:50Cache
- 39:56SSD Cache
- 40:56Velox extensibility
- 43:56Pestis MO
- 44:34The Big Picture
- 45:41Velox Worker
- 46:13Presto Optimizer
- 47:00Velox Plan
- 47:35Code Generation
- 48:36Local Planning
- 50:46Documentation
- 51:23March Update
- 51:47Conclusion
- 52:17What is Hana
- 53:37Questions
related talks
22mPresto for Your Fast, Open SQL Lakehouse
22mIntroduction to Presto: The SQL Engine for Data Platform Teams
46mPresto - Today and Beyond - The Open Source SQL Engine for Querying all Data Lakes
35mMilvus 2.0: Building the World's Most Advanced Open-source Vector Database
30mMilvus Vector Database: Unlocking the Future of Open Source Vector Databases
01h 03mVertica – High Performance Over Varying Terrain
26mThe Rise of Vector Databases - Lessons from the Milvus Community
28mThe Memory Efficient Indexing for Vector Databases
