kafgres
概览
| 扩展包名 | 版本 | 分类 | 许可证 | 语言 |
|---|---|---|---|---|
kafgres | 0.3.0 | SIM | Elastic-2.0 | Rust |
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 9440 | kafgres | 否 | 是 | 是 | 是 | 否 | 否 | - |
PGSTY targets PG16; requires preload and broker readiness before topic SQL; segment logs need separate replication and archiving.
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | PIGSTY | 0.3.0 | 1817161514 | kafgres | - |
| RPM | PIGSTY | 0.3.0 | 1817161514 | kafgres_$v | - |
| DEB | PIGSTY | 0.3.0 | 1817161514 | postgresql-$v-kafgres | - |
| OS / PG | PG18 | PG17 | PG16 | PG15 | PG14 |
|---|---|---|---|---|---|
| el8.x86_64 | N/A | N/A | PIGSTY 0.3.0 el8.x86_64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el8.x86_64.rpm
| N/A | N/A |
| el8.aarch64 | N/A | N/A | PIGSTY 0.3.0 el8.aarch64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el8.aarch64.rpm
| N/A | N/A |
| el9.x86_64 | N/A | N/A | PIGSTY 0.3.0 el9.x86_64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el9.x86_64.rpm
| N/A | N/A |
| el9.aarch64 | N/A | N/A | PIGSTY 0.3.0 el9.aarch64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el9.aarch64.rpm
| N/A | N/A |
| el10.x86_64 | N/A | N/A | PIGSTY 0.3.0 el10.x86_64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el10.x86_64.rpm
| N/A | N/A |
| el10.aarch64 | N/A | N/A | PIGSTY 0.3.0 el10.aarch64.pg16 : kafgres_16 kafgres_16-0.3.0-1PGSTY.el10.aarch64.rpm
| N/A | N/A |
| d12.x86_64 | N/A | N/A | PIGSTY 0.3.0 d12.x86_64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~bookworm_amd64.deb
| N/A | N/A |
| d12.aarch64 | N/A | N/A | PIGSTY 0.3.0 d12.aarch64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~bookworm_arm64.deb
| N/A | N/A |
| d13.x86_64 | N/A | N/A | PIGSTY 0.3.0 d13.x86_64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~trixie_amd64.deb
| N/A | N/A |
| d13.aarch64 | N/A | N/A | PIGSTY 0.3.0 d13.aarch64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~trixie_arm64.deb
| N/A | N/A |
| u22.x86_64 | N/A | N/A | PIGSTY 0.3.0 u22.x86_64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~jammy_amd64.deb
| N/A | N/A |
| u22.aarch64 | N/A | N/A | PIGSTY 0.3.0 u22.aarch64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~jammy_arm64.deb
| N/A | N/A |
| u24.x86_64 | N/A | N/A | PIGSTY 0.3.0 u24.x86_64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~noble_amd64.deb
| N/A | N/A |
| u24.aarch64 | N/A | N/A | PIGSTY 0.3.0 u24.aarch64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~noble_arm64.deb
| N/A | N/A |
| u26.x86_64 | N/A | N/A | PIGSTY 0.3.0 u26.x86_64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~resolute_amd64.deb
| N/A | N/A |
| u26.aarch64 | N/A | N/A | PIGSTY 0.3.0 u26.aarch64.pg16 : postgresql-16-kafgres postgresql-16-kafgres_0.3.0-1PGSTY~resolute_arm64.deb
| N/A | N/A |
构建
您可以使用 pig build 命令构建 kafgres 扩展的 RPM / DEB 包:
安装
您可以直接安装 kafgres 扩展包的预置二进制包,首先确保 PGDG 和 PIGSTY 仓库已经添加并启用:
使用 pig 或者是 apt/yum/dnf 安装扩展:
预加载配置:
创建扩展:
用法
来源:
kafgres 在 PostgreSQL 中提供 Kafka 协议代理。上游 0.3.0 使用 pgrx 0.16.1,面向 PostgreSQL 16。需要超级用户安装、共享预加载及重启,许可为 Elastic License 2.0。
启用代理
Kafka 客户端连接配置的代理端口,SQL 消息生产参与调用者的事务。将监听器暴露到受信任本地环境之外前,应配置 TLS、身份认证和访问控制。
存储与变更捕获
kafgres.storage_engine 默认为 segment,日志保存在独立文件中,需要使用扩展自己的复制与归档流程。依赖 segment 保留和恢复能力前,应配置 kafgres.segment_archive_command 并监控 kafgres_archive_status()。普通 PostgreSQL WAL/PITR 无法覆盖整个 segment 日志。table 引擎将日志保存在 PostgreSQL 表内;切换引擎不会迁移已有记录。
CDC 还需要 wal_level = logical;部分 PostgreSQL 构建另外要求配置 output_plugin_libraries 白名单。0.3.0 支持带投影和过滤的 SQL CDC 映射。部署前应审阅映射与恢复流程;发行产物面向 PostgreSQL 16,不能仅凭 Cargo 特性名称推断其他主版本受支持。
持久性设置
0.3.0 默认开启 kafgres.fsync_before_ack,默认关闭 kafgres.relaxed_produce_commit。放宽前者可能在断电时丢失已经确认的分段记录;放宽后者可能在崩溃后丢失最新的幂等生产者状态,使重试产生重复记录。这些参数的作用范围小于事务性 SQL 生产,并不统一作用于表引擎。应保留严格默认值,直到明确接受对应的持久性取舍。
这个页面对您有帮助吗?
感谢反馈,我们会据此改进这篇文档。
哪里没有解决?(可选)