标签

MySQL

PB级数据摄入管线零停机迁移:Meta 的反向影子与持续校验实践

来源:infoq.com 36
每天从 MySQL 搬运数 PB 级的社交图谱数据到下游数据仓库,任何一次管线迁移都像在高速行驶的汽车上换引擎——稍有不慎,就是全局性的数据延迟或丢失。Meta 最近完成了这项硬核操作,不仅实现了零停机迁移,还把管线的可靠性拉到了新水位。他们靠的不是运气,而是两套精准的工程利器:反向影子测试与持续校验监控。 社交图谱数据是 Meta 生态的命脉。好友关...

不再为 JSON 纠结:MySQL HeatWave Document Store 的混合之道

来源:blogs.oracle.com 21
用户画像、IoT 遥测、AI 提示词日志、商品目录——现代应用每天都在吞吐大量半结构化数据。这些数据天生带着 JSON 的灵活基因,字段随时增减,嵌套层级深浅不一,硬塞进严苛的关系型表结构里,往往意味着无休止的 和痛苦的 ORM 映射。 但另一方面,企业又很难彻底拥抱纯文档数据库。事务一致性、细粒度权限控制、成熟的运维生态,以及最关键的——对海量数据做...

ApiGo 5.1.0:把 SQL 直接变成可管可控的 API

来源:oschina.net 29
做后台开发,最重复的工作之一就是:写 SQL → 写 Controller → 写 Service → 写权限校验 → 发布接口。一个简单的查询接口,从建表到上线可能要折腾半小时。ApiGo 这个项目想做的事情很直接——在线写 SQL,一键发布成 REST API,顺带把数据源管理、权限、上下线这些运维动作也收进来。 5.1.0 版本最大的变化是项目从...

选对 MySQL ADO.NET Provider:异步性能、许可证与 EF Core 集成才是真正的分水岭

来源:devart.com 24
开发阶段,几乎所有 MySQL ADO.NET Provider 都能跑通 CRUD——连接字符串写对, 一开,查询结果就回来了。真正的差异藏在三个地方:高并发下的异步表现、许可证是否给生产环境留坑、与 EF Core 及云环境的磨合程度。这些差异不会在本地调试时暴露,而是在流量上来、团队扩张、部署走向混合云时才突然变成阻力。 下面从实际选型角度拆解 ...

MySQL 外键级联操作"静默"跳过子表触发器——一个活了近 20 年的 Bug

来源:oschina.net 21
2005 年,Oracle 的工程师 Omer Barnir 向 MySQL 提交了 Bug #11472:当父表的外键级联操作(、 等)间接修改或删除子表行时,子表上定义的触发器不会被执行。近 20 年过去了,这个 Bug 仍然开着,状态是"Verified"——没有修复,没有计划修复的时间表。 这不是一个边缘场景。任何依赖外键级联 + 触发器做审计...

用 FDW + 物化视图把异构数据变成本地分析引擎

来源:postgr.es 12
大多数开发者第一次接触 PostgreSQL 的 Foreign Data Wrapper(FDW),都是在某个快速演示里——从 Postgres 直接查 MySQL,甚至查远程 CSV,感觉很酷。但一旦用到生产环境,延迟高、谓词下推不靠谱、索引不可控,折腾一圈下来往往觉得"不值得"。问题不在 FDW 本身,而在用法。把 FDW 当成查询层是走弯路;把...

告别重复 CRUD:ApiGo 5.0 如何把 SQL 直接变成接口

来源:oschina.net 21
每次为内部报表、运营后台写一个简单的查询接口,都要经历 Controller → Service → Mapper 的全套套路,这不仅是体力活,更是对开发时间的浪费。原 开源项目近期正式更名为 ApiGo 并发布了 5.0.0 版本,它的核心思路非常直接:在浏览器里写 SQL,一键发布成 REST API,省去中间所有的模板代码。 ApiGo 的定位是...

MySQL HeatWave 数据库日常维护:别只顾扩容,先做好"家务"

来源:blogs.oracle.com 22
业务在涨,数据在涨,团队的第一反应往往是——加节点、扩存储。但 MySQL HeatWave 环境里最容易被忽视的问题,恰恰不是资源不够,而是"家务没做"。长期不清理的冗余数据、过期的二进制日志、膨胀的临时表空间,会悄悄拖慢备份、放大复制延迟、拉低查询性能,最后账单也跟着涨。 这篇文章把 HeatWave 里最值得定期执行的几项维护操作梳理出来,并给出...

Shopify 用 MySQL + SKIP LOCKED 替代 Redis 做库存预留——一行 SQL 如何撑住百万级并发

来源:oschina.net 28
买家点下"完成购买"的那几秒,库存预留必须绝对准确:多卖一件,两个订单撞上同一库存,商家被迫取消订单、承担客服成本;少卖一件,页面显示有货却下单失败,白白丢掉一笔成交。在 Shopify 的量级下,这个"几秒窗口"被放大到每秒数万次并发请求,任何锁争用或网络抖动都可能让整条链路崩塌。 Shopify 的工程团队最终做了一个反直觉的决定:把 Redis ...