© 2026FindAgent  · @simprr
返回列表
M

MaterializeInc/materialize

The live data layer for apps and AI agents. Create up-to-the-second views into your business, just using SQL

cdcdata-meshdata-storedatabasedistributed-systemskafkamaterialized-viewmysqloperational-data-storepostgresqlpostgresql-dialectrustsqlsql-serverstream-processingstreamingstreaming-data
⭐

6.3k

Stars

🔱

496

Forks

👁

68

Watchers

📋

500

Issues

RustNOASSERTION创建于 2019/2/22更新于 今天
在 GitHub 上查看访问主页
README
由 Gemini 翻译整理

Build status Doc reference Chat on Slack

Materialize 是一个实时数据集成平台,它能够跨组织创建并持续更新事务性数据的一致性视图。其 SQL 接口使得提供和访问实时数据变得平民化。Materialize 可以部署在您基础设施运行的任何地方。

使用 Materialize,您可以实现诸如为 AI/RAG 流水线提供实时上下文、驱动操作仪表板,以及创建更动态的客户体验等功能,而无需构建耗时且复杂的定制数据流水线。

采用 Materialize 的三个最常见模式如下:

  • 查询卸载 (CQRS) - 比只读副本更高效地扩展复杂读取查询,且无需处理缓存失效的痛点。
  • 集成中心 (ODS) - 从多个源提取、加载并增量转换数据。创建数据的实时视图,这些视图可被直接查询或推送到下游。
  • 操作数据网格 (ODM) - 使用 SQL 创建并交付实时的、强一致性的数据产品,以简化各服务和领域之间的协作。

快速开始

准备好试用 Materialize 了吗?您可以注册获取免费的云试用版,或者下载我们的社区版。社区版对于内存使用低于 24 GiB 且磁盘使用低于 48 GiB 的部署永久免费!

有疑问吗?我们期待您的反馈:

  • 加入我们的 Slack
  • 给我们发送邮件

关于

Materialize 致力于以最小的延迟提供正确且一致的查询结果,且不要求您接受近似结果或最终一致性。即使在合并来自多个上游系统的数据时,这一保证依然有效。每当 Materialize 回答查询时,该答案都是基于您数据的特定(且最新)版本得出的正确结果。Materialize 通过将您的 SQL 查询重构为*数据流(dataflows)*来完成所有这些工作,从而能够对数据的实时变更做出高效反应。

我们的全托管服务是云原生的,具有以下特性:通过多主复制(multi-active replication)实现高可用性;通过在多台机器上无缝扩展数据流实现水平扩展性;以及通过利用云对象存储(如 Amazon S3)实现近乎无限的存储。您可以使用我们的企业版或社区版自行管理 Materialize。

我们支持很大一部分 PostgreSQL 功能,并正在积极扩展对更多内置 PostgreSQL 函数的支持。如果您有任何改进想法,欢迎提交 Issue!

数据接入

Materialize 可以直接从 PostgreSQL 或 MySQL 复制流、Kafka(以及其他与 Kafka API 兼容的系统,如 Redpanda),或者通过 Webhooks 从 SaaS 应用中读取数据。

转换、操作与读取数据

数据接入后,即可定义视图并通过 PostgreSQL 协议执行读取。您可以使用自己喜欢的 SQL 客户端,包括您系统里现有的 psql。在生产环境中使用 Materialize 的客户通常会使用 dbt Core。

Materialize 支持多种多样的 SQL 功能,全部使用 PostgreSQL 方言和协议:

  • 连接 (Joins):支持多列连接条件、多路连接、自连接、交叉连接、内连接、外连接等。
  • Delta-joins:相比只能规划嵌套二元连接的系统,避免了中间状态爆炸——已在多达 64 个关系的连接上进行了测试。
  • 子查询支持:Materialize 的 SQL 优化器开箱即用地执行子查询去相关(decorrelation),无需手动将子查询重写为连接。
  • 增量维护:可以在存在任意插入、更新和删除操作的情况下,增量地维护视图,无需任何特殊标记。
  • 所有聚合函数:min, max, count, sum, stddev 等。
  • HAVING
  • ORDER BY
  • LIMIT
  • DISTINCT
  • JSON 支持:PostgreSQL 方言中的 JSON 支持,包括操作符和函数,如 ->, ->>, @>, ?, jsonb_array_element, jsonb_each。Materialize 会自动规划横向连接(lateral joins)以实现高效的 jsonb_each 支持。
  • 视图嵌套:支持层层嵌套的视图!
  • 多视图支持
贡献者
bdntdmpmdp
项目信息
默认分支main
LicenseOther
创建时间2019/2/22
最近更新今天
GAI 中文摘要

Materialize 是一个专为应用程序和 AI 智能体打造的实时数据层,利用流式计算技术将复杂的实时数据处理简化为标准的 SQL 查询。它旨在解决企业在整合多源异构数据时面临的延迟与一致性难题,帮助用户快速构建实时更新的业务视图。

支持将复杂的 SQL 查询转化为高效的增量数据流,实现毫秒级的实时数据响应。 通过 CDC 技术从数据库、消息队列等多个来源摄取数据,并将其统一整合为实时更新的物化视图。 提供强一致性的查询保证,确保每次返回的结果都是基于最新数据的准确状态。 支持横向扩展与云原生架构,能够灵活部署在多种基础设施之上以应对大规模数据吞吐。

该项目适用于需要处理实时数据的后端工程师、数据架构师及 AI 开发者,常用于构建实时业务仪表盘、提供 AI/RAG 系统的实时上下文,以及实现低延迟的跨服务数据集成。