当前位置: 首页 > news >正文

mysql控制单表数据存储及单实例表创建

1. 单表数据存储不要过大

  • 主流建议
    • 保守建议。100万以内保持最佳性能
    • 其他。不超过2000万
  • 理论依据。
    • B+树层级可能变多。从3增加到4。导致索引查询路径边长,增加IO开销
  • 优化
    • 加索引。对高频查询字段增加索引。避免全表扫描
    • 低频历史数据通过分区表或归档隔离。
    • 足够的内存 + 高速磁盘
    • 分库分表
      • 当查询延迟显著增加
      • 高并发导致锁竞争激烈(热点更新)
      • 业务拓展。预计数据量快速增长。预先规划可拓展架构

2. 单实例中表数目不要过多

  • 应小于500.
    • 过多的表增加元数据管理开销。影响查询性能
    • 增加了维护成本。表数量过多提升了备份、监控、DDL操作的复杂度
    • 业务解耦。通过分库分表垂直拆分控制单实例表数量。符合高内聚低耦合的设计。

3. 单表列数目不要过多

  • 存储效率。
    • 单表列数过多会导致单条数据体积增大,降低内存缓存效率。
  • 查询性能。
    • 增加了I/O压力索引维护成本高。
  • 拓展性。
    • 列超30通过垂直拆分避免业务调整使表结构臃肿

实际应用中的灵活性

例外场景

  • 若确实需要宽表。在数据仓库中可以接受,但需配合列式存储引擎(如ClickHouse)
  • 若有特殊需求。则控制主表的列数。保留高频的访问字段。低频字段通过关联表存储。

替代方案

  • 可以使用json存储数据,减少列数,但要考虑查询效率
  • 按周期归档历史数据。控制单表数据量

相关文章:

  • 生物化学笔记:医学免疫学原理23 免疫检查点分子与肿瘤免疫治疗(PD-1抑制剂黑色素瘤)
  • 【进程信号】五、信号集操作接口详解
  • SICAR标准功能块 FB1514 “Robot_request_FB”
  • 增量式PID基础解析与代码实例:温控系统
  • 有效的完全平方数--LeetCode
  • HFSS3(limy)——建模学习记录
  • 工业级MIFI解决方案:打造低时延、高可靠性的Wi-Fi网络快速部署体系!
  • 【专刷】滑动窗口(一)
  • 字符串系列一>二进制求和
  • HTML5+CSS3小实例:CSS立方体
  • 在RK3588上使用哪个流媒体服务器合适
  • 性能比拼: Elixir vs Go(第二轮)
  • JAVA的泛型
  • C++项目 —— 基于多设计模式下的同步异步日志系统(3)(日志器类)
  • 前端面试中高频手撕[待补充]
  • BR_频谱20dB 带宽(RF/TRM/CA/BV-05-C [TX Output Spectrum – 20 dB Bandwidth])
  • RAG工程-基于LangChain 实现 Naive RAG
  • 从GET到POST:HTTP请求的攻防实战与CTF挑战解析
  • 嵌入式linux系统中内存管理的方法与实现
  • 筑基挑战 | 第14期
  • 深化应用型人才培养,这所高校聘任行业企业专家深度参与专业设置
  • 玉渊谭天丨这是一个时代的结束
  • 1672万!大乐透8.8亿派奖第4期松江彩民18元中头奖
  • 专业纯粹,安静温暖,上海古籍书店明日重新开张
  • 商务部:敦促美方立即停止极限施压,停止胁迫讹诈
  • 塞尔维亚新政府正式成立,马楚特出任总理