【免费下载链接】serenedb
The First Real-Time Search Analytics Database
SereneDB是号称"The First Real-Time Search Analytics Database"(首个实时搜索分析数据库)的开源项目,它把Elasticsearch 级别的全文/向量搜索与ClickHouse 级别的 OLAP 分析统一进同一个PostgreSQL 兼容的数据库中:一份数据、一个引擎、一条 SQL 同时完成"检索 + 排序 + 聚合",无需在搜索集群与数仓之间同步数据、写胶水代码。🎯
下面用最短的路径带你跑通它:从安装、连接到核心能力,全部面向新手,几乎不用看源码。
一、它解决了什么问题?
传统架构里,搜索和分析通常是两套系统:
| 痛点 | 传统方案 | SereneDB 方案 |
|---|---|---|
| 全文搜索 | Elasticsearch 集群 | 内置倒排索引,BM25 排序,SQL 里直接@@查询 |
| 日志/分析 | ClickHouse 数仓 | 列式存储 + OLAP 聚合,同一张表 |
| 向量/语义搜索 | 独立向量库 | ai_embed生成向量,IVF/HNSW 索引,与全文混合检索 |
| 数据同步 | ETL 管道 + 多系统运维 | Zero-ETL:直接在 S3/HDFS 上的 Parquet、Iceberg、CSV、JSON 上建索引查询 |
| 学习成本 | 学 ES DSL + 学 ClickHouse SQL | 会 Postgres 就会用,走 PG 协议 + 标准 SQL |
一句话概括:如果会 SQL,就会 SereneDB。
💡 它的搜索内核来自开源 C++ 信息检索库IResearch,核心贡献者自 2016 年起持续开发,在官方基准中击败了 Lucene(Elasticsearch 的底层引擎)的全部查询类型。
二、一键安装:3 分钟跑起来
SereneDB 以单个二进制文件交付(serened),无需依赖其他组件。官方提供四种安装方式,完整对比见 安装指南:
| 方式 | 适用场景 |
|---|---|
| Shell 脚本 | 最快上手,免 root,推荐新手 |
| Docker | 容器化、CI,以及 macOS/Windows 用户 |
.deb包 | Debian/Ubuntu 服务器,systemd 托管服务 |
| Tarball | 离线/内网机器,自定义安装路径 |
最快安装步骤(Shell 脚本)
curl https://linux.serenedb.com | sh或者用 Docker
docker run -d --name serenedb -p 7890:7890 -e SERENEDB_HOST_AUTH_METHOD=trust serenedb/serenedb系统要求速览:
- 64 位 Linux(macOS/Windows 请用 Docker),内存最低 2 GB、推荐 8 GB+
- 默认监听7890 端口(PostgreSQL 线协议),单机部署无需其他端口
三、首次连接:像连 Postgres 一样连它
SereneDB 讲PostgreSQL 线协议,所以任何 PG 客户端(psql、DBeaver、DataGrip 等)都能直接连:
psql -h localhost -p 7890 -U postgres默认无需密码。连接成功后即可执行标准 SQL,CREATE TABLE、GROUP BY、JOIN等行为与 PostgreSQL 高度一致(差异细节见 PostgreSQL 兼容性说明)。
四、5 分钟看懂 5 个核心能力
以下能力详解都来自官方 Quick Start,这里只讲"它是什么、为什么牛"。
1️⃣ Zero-ETL 远程搜索
CREATE TABLE直接指向 S3、HDFS 或 HTTP 上的 Parquet / Iceberg / CSV / JSON 文件,数据立刻变成可查询的普通表——不需要导入任务,也不需要预先定义 schema。也可以在远程存储上"原地"建索引,彻底省掉昂贵的摄入管道。
2️⃣ 全文搜索:SQL 里的@@运算符
给文本列建一个倒排索引后,用@@做全文匹配,ts_phrase构造短语查询,按BM25评分排序——所有 ES 熟悉的能力,全部变成一句 SQL。
3️⃣ 向量与混合搜索(AI 应用刚需)
ai_embed函数在 SQL 里直接调用嵌入模型,把文本变成向量存进FLOAT[N]列;再用<=>距离算子做语义排序。最惊艳的是混合搜索:全文谓词先筛出"提到该词"的行,向量距离再按"真实含义"重排——一条语句、一个索引同时完成词法召回与语义排序。
4️⃣ 搜索 + 分析一条查询搞定
搜索谓词选出候选行集,GROUP BY直接在其上聚合——检索召回、语义排序、OLAP 聚合发生在同一个引擎的同一条语句里。没有要同步的搜索集群、要喂数据的向量库、要拷贝的数仓。
5️⃣ 实时高效更新
采用列级更新(column-wise updates),数据保持新鲜的同时不牺牲性能,这正是"实时搜索分析"的含义。
五、性能:公开可复现的基准数据
官方坚持"透明性能":所有基准的方法论、硬件与原始结果全部公开。
- SearchBench:在 1 亿与 10 亿条 OpenTelemetry 日志上跑 92 条搜索/分析查询,对比 Elasticsearch、OpenSearch、ClickHouse、ArangoDB 等。宣称在100 亿条日志上比 ClickHouse 快10 倍;
- Search Benchmark, The Game:底层检索引擎 IResearch vs Lucene vs Tantivy,IResearch 在全部查询类型上获胜。
基准详情见 Benchmarks 文档 与 SearchBench 说明。
六、图形界面:SereneUI,一个窗口管完搜索与分析
不想手写 SQL?官方自带开源 UI 客户端SereneUI(Web 端 + Electron 桌面端,见 serene-ui 说明):
- 连接管理与数据库导航,Postgres 与 SereneDB 同界面接入
- 编辑器式多标签查询窗口、保存查询、查询历史
Cmd/Ctrl + J命令面板,键盘流操作
它支持把查询结果直接做成仪表盘,无需把数据导出到别的可视化工具。
七、动手资源导航
| 你想做什么 | 去哪里 |
|---|---|
| 10 分钟完整上手(装、连、建索引、混合搜索) | docs/quick-start.md |
| 选择安装方式 | docs/installation/index.md |
| 了解 SQL 方言与 PG 差异 | docs/compatibility/core-sql-compatibility.md |
| 搜索实战配方(36 篇) | docs/cookbook/search/ |
| 从零到一的 SQL 教程 | docs/sql/introduction.md |
| 搜索内核 IResearch 源码 | iresearch/README.md |
| 可运行的示例 SQL(demo0~demo7) | examples/ |
| 服务器配置(端口、认证、日志) | docs/configuration/overview.md |
| 角色与权限 | docs/security/roles.md |
想阅读源码的话,克隆仓库即可:
git clone https://gitcode.com/gh_mirrors/se/serenedb八、总结:谁该上手 SereneDB?
✅日志/可观测性团队:OpenTelemetry 日志的搜索与分析不再需要 ES + 数仓双系统; ✅AI 应用开发者:全文 + 向量混合搜索一条 SQL 搞定,ai_embed直接接 OpenAI 兼容端点(含本地 Ollama); ✅Postgres 老手:零新语法成本,客户端、驱动、知识全部复用; ✅数据湖用户:S3 上的 Parquet/Iceberg 直接搜索,零 ETL。
完整的单节点版本采用Apache 2.0许可证,完全开源;水平扩展、高可用等生产特性持续演进中。现在就可以用一条 shell 命令装好它,用你最熟悉的 SQL,开启"一份数据、一个引擎"的实时搜索分析之旅。🚀
【免费下载链接】serenedb
The First Real-Time Search Analytics Database
相关推荐
Hyperf Elasticsearch集成:全文搜索与数据分析实践
Hyperf Elasticsearch集成:全文搜索与数据分析实践 引言:为什么选择Hyperf+Elasticsearch? 在现代Web应用开发中,全文搜
后端微服务探索新一代嵌入式数据库——ChaiSQL
探索新一代嵌入式数据库——ChaiSQL 在日益繁复的数据管理需求下,一款能够灵活应对多变场景的数据库系统显得尤为重要。今天,我们将聚焦于 ChaiSQL ,这
数据库嵌入式数据库Lichess搜索与数据库系统:Elasticsearch与PGN处理
Lichess搜索与数据库系统:Elasticsearch与PGN处理 本文详细介绍了Lichess平台如何管理47亿棋局数据的存储方案、Elasticsear
后端游戏开发即时通讯
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考