暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

DB吐槽大会,第68期 - PG server less场景下的quota控制灵活性较弱

原创 digoal 2022-01-20
232

作者

digoal

日期

2021-10-02

标签

PostgreSQL , quota , 存储空间 , saas, dbaas , 微服务


视频回放

1、产品的问题点
- PG server less场景下的quota控制灵活性较弱

2、问题点背后涉及的技术原理
- PG 本身没有quota控制能力, 例如要控制一个用户、一个数据库、一个实例的存储空间使用上限, 只能建立逻辑对象、表空间、目录的关系, 在目录层面进行控制, 而且这种控制不友好, 到达上限写入失败会导致数据库崩溃.
- 限制一个租户在一个实例中空间的使用.
- 限制一个实例的空间使用.

3、这个问题将影响哪些行业以及业务场景
- SaaS, 一个实例可能创建很多个database被不同租户使用
- 微服务场景, 一个实例可能通过创建很多个database服务于多个微服务
- DBaaS场景

4、会导致什么问题?
- 使用过程中可能打满存储, 从而导致数据库崩溃, 影响业务.
- 不能对用户、schema、database或表空间控制其存储空间使用率, 无法满足saas,微服务的业务需求, 例如: 租户a就想多花点钱, 保留它的存储配额.
- 资源都应该可量化其价值, 如果无法量化, 那么会导致租户争抢资源, 造成不公平.

5、业务上应该如何避免这个坑
- 基本无解, 只能在OS层或者FS层进行控制, 例如zfs, btrfs都支持文件系统级别的quota配置, 通过目录、表空间来和用户、数据库挂钩.

6、业务上避免这个坑牺牲了什么, 会引入什么新的问题
- 管理非常复杂, 而且无法满足精细化管理需求(只能到表空间级别)

7、数据库未来产品迭代如何修复这个坑
- 希望内核支持table、用户、schema、database或tablespace的存储空间quota配置.
- 希望内核层面支持只读保护功能, 当触发quota阈值时, 转换为只读模式, 而不是直接数据库崩溃.
- 《DB吐槽大会,第54期 - PG 资源隔离、管理手段较少》
- 除了quota资源, 还有cpu\iops\带宽\网络等资源都可以量化管理.

PostgreSQL 许愿链接

您的愿望将传达给PG kernel hacker、数据库厂商等, 帮助提高数据库产品质量和功能, 说不定下一个PG版本就有您提出的功能点. 针对非常好的提议,奖励限量版PG文化衫、纪念品、贴纸、PG热门书籍等,奖品丰富,快来许愿。开不开森.

9.9元购买3个月阿里云RDS PostgreSQL实例

PostgreSQL 解决方案集合

德哥 / digoal's github - 公益是一辈子的事.

digoal's wechat

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论