标签

数据库

别再盲设 70:用真实行大小计算 PostgreSQL 表的 Fillfactor

来源: postgr.es 34
PostgreSQL 的 是一个很小、却经常被忽略的设置。它决定数据首次写入时,每个表页要填多满,并为后续更新预留多少空间。对频繁更新的表来说,合适的预留空间可能提高 HOT update 的机会,减少索引改写、WAL 和 I/O;但把所有表统一设成 70 或 80,同样是一种猜测。 更稳妥的做法是:先用真实数据估算平均行大小,再结合更新频率和监控结果...

AWS 收购 DuckLabs:DuckDB 如何打好一场 MIT 许可保卫战

来源: oschina.net 42
DuckLabs 被 AWS 收购后,关注 DuckDB 的开发者产生疑虑并不奇怪。过去十年里,大公司收购开源团队的案例反复出现,项目的许可证、治理方式和社区关系也可能随之变化。 这次事件值得关注的地方在于:收购公告没有只强调商业价值,而是专门解释“什么不会变”。DuckDB 会继续采用 MIT 许可证开源,DuckDB Foundation 继续掌管...

把 PostgreSQL 日志配置理顺:理解 log_destination 与 logging_collector

来源: postgr.es 31
PostgreSQL 的日志配置看起来只是几个 GUC 参数,实际却关系到日志是否丢失、不同进程的输出是否互相打乱,以及配置什么时候真正生效。 决定日志要写到哪里, 则负责启动一个基于管道的日志收集进程,把服务器进程产生的消息集中处理。 其中一个容易被忽略的操作边界是:打开 需要重启 PostgreSQL,而不是简单执行一次 reload。生产环境如果...

把 Lua 嵌进 psql:用自定义反斜杠命令扩展 PostgreSQL 终端

来源: postgr.es 35
的内置命令稳定而实用,但一旦团队希望调整 的排序、参数或输出,就会碰到一个现实问题:通用工具很难为每种工作流增加专用语法。Pavel Stehule 准备的一组补丁尝试把 Lua 集成进 ,让用户通过脚本注册自己的反斜杠命令。例如,可以实现一个按表大小排序的 ,而不必修改和重新编译对应命令的 C 代码。 需要明确的是,这里讨论的是补丁所展示的扩展机制。...

用 Google Cloud Fault Injection Testing 把云端故障演练变成可重复实验

来源: cloud.google.com 35
数据库切换、可用区故障和网络路径抖动,往往不是架构图上最难的一部分。真正困难的是证明应用在这些事件发生时会按照预期工作。Google Cloud Fault Injection Testing(FIT)在预览阶段提供了原生的故障注入能力,让开发者和架构师可以用实验模板自动化定义故障、目标资源、持续时间和恢复动作。 在自建数据中心中,团队通常可以直接控制...

Postgres 数据库迁移:把复杂谜题拆成可验证的步骤

来源: percona.com 38
Postgres 正被用于替换旧系统、支撑新的绿色项目,也开始成为智能代理系统的后端。相比数据库本身的创新应用,迁移往往显得乏味,却经常因为数据量、版本差异、权限和停机窗口而变成一场不该如此困难的排障工作。 解决迁移问题的关键,不是寻找一条“万能命令”,而是把过程拆成可以检查、回滚和重复执行的阶段:盘点源库,设计目标环境,完成备份与恢复,验证数据和应用...

AI 智能体时代的动态容量管理:预订、回退与资源切片

来源: cloud.google.com 46
企业开始把大量 AI 智能体接入业务系统,基础设施面对的已不只是推理流量增长。智能体会持续调用模型、数据库和内部应用,负载既消耗 GPU、TPU 等稀缺资源,又具有明显的突发性。若仍把应用绑定到单一机型、单一区域或整块加速卡,结果通常是两个极端:高峰期申请不到容量,低谷期则有大量资源闲置。 动态容量管理的核心不是无限扩容,而是把需求分成可预测与不可预测...

PostgreSQL 18 的 UUIDv7:为什么插入性能最高提升 23 倍

来源: postgr.es 35
UUID 作为主键很方便,但不同 UUID 版本对 PostgreSQL 插入性能的影响并不相同。一次真实迁移显示,在 PostgreSQL 18.4 上将部分表的主键默认值从 UUIDv1 或 UUIDv4 切换到 UUIDv7 后,某些高频多行 INSERT 的平均执行时间从 0.7ms 降到 0.03ms,提升约 23 倍。 这不是所有表都会获得...

pgwatch v6:让 Prometheus 成为指标来源,而不只是输出目标

来源: postgr.es 40
pgwatch v6.0.0-beta 带来了一个重要变化:它现在可以直接抓取 Prometheus exporter,把 Prometheus 文本格式的指标作为一等数据源,与 PostgreSQL 数据源并列采集。这样,数据库内部状态和数据库外部环境信息就能进入同一个指标存储系统。 pgwatch 的传统模式是执行针对 视图的 SQL 查询,并把结...