PixelsDB

PixelsDB is a cloud-native data lakehouse engine optimized for both cloud and on-premises environments. It features NL2SQL interface, multi-level SLA, high-performance columnar storage, serverless elastic computing, and compatibility with multiple query engines like Trino and Presto.

Check out PixelsDB on CurateClick

• Copy the embed code to showcase this product on your website

• Share on X to spread the word about this amazing tool

PixelsDB=======PixelsDB是一个同时面向Cloud-native和本地化计算环境高度优化、高易用的数据湖仓引擎。Github主仓库地址:https://github.com/pixelsdb/pixelsDemo视频:https://www.bilibili.com/video/BV1awDQYcEsN/?vd_source=da6f80d8fe2bab1291999a9535251c78## 对于用户PixelsDB对用户提供:- (1)基于自然语言的查询交互接口。除了直接提交SQL之外,用户也可以用自然语言提出分析需求,PixelsDB后台借助微调后的大模型完成SQL翻译;- (2)灵活地为不同查询选择不同的performance-price SLA。例如为离线查询选择low price,则可以极低的资源消耗执行查询、成本为AWS Athena等公有云Lakehouse的5%左右;为交互式查询选择high performance,则可以较高的性能迅速执行查询、成本与AWS Athena等相当;为仪表盘类应用的后台查询选择均衡模式,则可以在满足性能要求的情况下以远低于AWS Athena的成本完成查询;- (3)比Parquet快两个量级的高性能列式存储。PixelsDB内置高性能列式存储引擎,可以在S3对象存储、HDFS、本地文件系统等主流存储系统上进行高效的数据表存储和查询,并且针对云对象存储、机械磁盘、NVMe SSD等进行了针对性的性能优化,配合高性能数据编解码、内存零拷贝、分布式列式缓存,在TPC-H和ClickBench等测试基准上性能远超Parquet;- (4)按用量付费的高弹性Serverless计算。当PixelsDB部署在公有云上时,可以自动调用云函数和云容器等高弹性的Serverless计算资源完成查询执行,做到精确到每个查询、每个CPU-sec和GB-memory-sec的按需付费,没有查询时可以scale-to-zero、不产生任何费用;- (5)良好的生态兼容性。PixelsDB内部的SQL执行引擎是插件式的,目前支持Trino、Presto、DuckDB、StarRocks、Hive、PostgreSQL。用户可以选择各种主流的SQL执行引擎,无需学习SQL方言和修改现有SQL、避免Lock-in。## 对于开发者欢迎开发者参与PixelsDB开发。项目的核心组件在主仓库中,其他组件(Web UI、SQL执行引擎集成等)在项目下的独立仓库中。### 语言兼容性PixelsDB使用了Java和C++语言实现不同的组件。其中列式存储引擎提供Java和C++两个版本的实现,便于以更加native的方式接入不同的SQL执行引擎;其他组件使用Java实现。此外,PixelsDB正在用Go语言实现一个云上的高弹性资源调度层。PixelsDB中的Java代码对Java 8/11/17/21/23全面兼容,其中涉及到的底层堆外内存操作和系统调用的代码对这些版本的JDK做了自适应,无需任何配置和代码修改。C++代码兼容C++ 17及以上。### 开发环境Java代码使用Maven编译和管理依赖,可以使用IntelliJ、VS Code等IDE;C++代码使用CMake编译,除AWS C++ SDK之外的其他依赖通过git sudmodule和CMake ExternalProject自动拉取,可以使用CLion、VS Code等IDE。项目文档中提供了编译和IntelliJ、Clion开发环境搭建流程,10分钟轻松搞定。### 安装部署项目提供了在AWS上的完整部署流程,同时也提供了Docker File、可以在Docker容器中轻松部署运行PixelsDB的主要组件。## 论文发表PixelsDB中部分核心技术在以下论文中公开,欢迎交流:> ICDE'25 PixelsDB: Serverless and NL-Aided Data Analytics with Flexible Service Levels and Prices> Haoqiong Bian, Dongyang Geng, Haoyang Li, Yunpeng Chai, Anastasia Ailamaki> arXiv'24 Serverless Query Processing with Flexible Performance SLAs and Prices> Haoqiong Bian, Dongyang Geng, Yunpeng Chai, Anastasia Ailamaki> SIGMOD'23 Using Cloud Functions as Accelerator for Elastic Data Analytics> Haoqiong Bian, Tiannan Sha, Anastasia Ailamaki> EDBT'22 Columnar Storage Optimization and Caching for Data Lakes (short)> Guodong Jin, Haoqiong Bian, Yueguo Chen, Xiaoyong Du> ICDE'22 Pixels: An Efficient Column Store for Cloud Data Lakes> Haoqiong Bian, Anastasia Ailamaki> CIDR'20 Pixels: Multiversion Wide Table Store for Data Lakes (abstract)> Haoqiong Bian> ICDE'18 Rainbow: Adaptive Layout Optimization for Wide Tables (demo)> Haoqiong Bian, Youxian Tao, Guodong Jin, Yueguo Chen, Xiongpai Qin, Xiaoyong Du> SIGMOD'17 Wide Table Layout Optimization by Column Ordering and Duplication> Haoqiong Bian, Ying Yan, Wenbo Tao, Liang Jeff Chen, Yueguo Chen, Xiaoyong Du, Thomas Moscibroda