ITADN
risingwavelabs/risingwave
risingwavelabs/risingwave · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

🌊 面向 Agentic AI 的事件流

文档 | 基准测试 | 演示 | 案例研究

RisingWave 是一个面向 Agentic AI 的事件流处理平台。它持续从数据库、事件流和 Webhook 中摄取数据,进行增量处理,并以低延迟提供最新结果,用一个系统取代了传统的事件流处理技术栈(例如 Debezium + Kafka + Flink + 服务数据库)。

RisingWave


60 秒上手

curl -L https://risingwave.com/sh | sh

有关 Docker、Kubernetes 及其他选项,请参阅快速入门指南


问题

智能体(Agents)和实时应用需要始终新鲜且可低延迟查询的数据。标准方法将 Debezium 用于 CDC、Kafka 用于传输、Flink 用于处理,以及数据库用于服务串联起来。每一跳都会增加延迟,每个系统都会增加运维开销。

RisingWave 取代了整个技术栈:摄取、处理、服务、存储。


工作原理

从任意来源摄取

RisingWave 覆盖完整的数据谱系进行摄取:

  • Webhooks:来自 SaaS 应用程序和外部系统的基于 HTTP 的事件摄取
  • 数据库变更:通过读取事务日志,从 PostgreSQL、MySQL 及其他数据库进行原生 CDC
  • 事件流:Kafka、Pulsar、Kinesis 及其他消息代理
  • 历史数据:从 S3、数据仓库及其他存储系统进行批量摄取

所有来源都统一在相同的 SQL 接口之下。流和表可以自由连接。

持续处理

RisingWave 对摄取的数据执行增量计算。当上游数据发生变化时,仅重新计算受影响的结果。端到端的新鲜度低于 100 毫秒。

这是 RisingWave 所做一切背后的核心机制:始终最新的物化视图,无需在每次查询时进行全量重新计算。

低延迟服务

查询结果维护在 RisingWave 的内部行存储中,并以 10-20 毫秒的 p99 延迟提供服务。代理和应用程序使用标准 SQL 直接查询此层。无需轮询,无需缓存预热,无需 TTL 管理。

存储于 Apache Iceberg™

为了实现长期保留和分析访问,RisingWave 写入 Apache Iceberg™ 表。它直接托管 Iceberg REST catalog,并处理表维护——包括压缩、小文件优化和快照清理——无需外部工具。Iceberg 查询通过 Apache DataFusion 执行,这是一个向量化查询引擎。由于 Iceberg 是一种开放格式,数据也可被 Spark、Trino、DuckDB 及其他引擎读取。

行存储和 Iceberg 层服务于不同的目的:行存储用于低延迟服务,Iceberg 用于持久化、开放格式存储和分析查询。RisingWave 同时管理这两者。


用例

  • 监控与告警:针对阈值对流式指标进行持续评估
  • 特征存储:在相同管道上计算批处理和流式特征,并从同一系统提供服务
  • 实时仪表盘:增量更新的物化视图,无需计划刷新
  • 实时增强:在交付下游之前,将实时事件与历史参考数据在传输过程中进行关联
  • 流式湖仓:向开放格式表进行持续、精确一次的数据摄入,并自动执行压缩和快照管理

设计决策

极致成本效率

内部状态、表和物化视图存储在对象存储(S3 或等效服务)中,其成本大约比 RAM 低 100 倍。这实现了无需数据再平衡的弹性扩展,并能在数秒内完成故障恢复。对于延迟敏感型工作负载,弹性磁盘缓存 将热数据固定在本地 SSD 或 EBS 上,使 p99 查询延迟保持在 10-20 ms。

面向人类和智能体的原生体验

RisingWave 通过 PostgreSQL 线协议连接,可与 psql、JDBC 以及任何兼容 Postgres 的工具配合使用。对于智能体,RisingWave 提供了 MCP 服务器、CLI 和 Skills,使智能体无需自定义集成即可查询和操作 RisingWave。

开放性

RisingWave 原生集成 Apache Iceberg™,支持持续流式摄取、通过 DataFusion 直接读取以及自动化的表维护。Iceberg 中的数据采用开放格式,任何兼容的查询引擎均可访问。


部署

RisingWave Cloud 是托管选项。

对于自托管:


社区

加入我们的 Slack 以提问、讨论和贡献。


Telemetry

RisingWave 使用 Scarf 进行匿名化的安装分析,并收集匿名使用统计信息以改进产品。两者均可选择退出。详情请参阅 telemetry 文档


许可证

Apache License 2.0。参见 LICENSE

贡献

参见 RisingWave 开发者指南