美文网首页
4Schema与数据类型优化

4Schema与数据类型优化

作者: begonia_rich | 来源:发表于2020-05-10 23:05 被阅读0次

原则

尽量小,简单,避免null

ID列

统一用BIGINT类型
不能用字符串当做ID存储.insert慢(不连续),select也慢

Schema设计陷阱

1太多的列 -> 转换代价高
2太多的关联 -> 尽量避免关联
3枚举类型
4变相的null

范式和反范式 -> 要混用,保持一定数据的冗余

优点:写密集场景性能高
缺点:一般情况都需要关联

技巧

1可以用CQRS模式将查询服务和写服务分离
2通过缓存表和统计表解决复杂查询与统计的问题
3通过数据行加槽(slot)将一行数据分解到多行,降低并发(避免行锁).后面再用异步汇总

如:update hit_count set cnt=cnt+1 where slot = RAND() * 100 -> 相当于加了100个槽,将更新的数据分散到槽内

4Alter Table大部分修改表结构的方法都是新建一张表,从旧表查所有的数据再插入到新表,然后删除旧表,所以大部分都很慢,可以主库切换(从无流量表结构修改),影子拷贝(新建表,重命名,删表)更平滑的过度

数据库类型总结

数据类型,常用的用蓝色标出

相关文章

  • 4Schema与数据类型优化

    原则 尽量小,简单,避免null ID列 统一用BIGINT类型不能用字符串当做ID存储.insert慢(不连续)...

  • MySQL Schema与数据类型优化

    Schema与数据类型优化 选择优化的数据类型 1.更小的通常更好 更小的数据类型通常更快,因为它们占用更少的磁盘...

  • mysql 性能监控

    性能监控 Schema与数据类型优化 数据类型的优化 更好的通常更好 简单就好 整型字符操作代价更低,因为字符集和...

  • 《高性能MySQL》笔记(1)——Schema与数据类型优化

    Schema与数据类型优化 最常用的数据类型分类 数字(int、decimal) 字符串(varchar、char...

  • 高性能MySQL分析

    Schema与数据类型优化 选择优化的数据类型 有几个简单的原则: 更小的通常更好一般情况下使用可以正确存储数据的...

  • 干货 | Redis 内存使用优化与存储

    干货 | Redis 内存使用优化与存储 Redis 常用数据类型 Redis 最为常用的数据类型主要有以下五种:...

  • MYSQL-数据类型优化

    MYSQL-数据类型优化 优化数据类型 MySQL支持的数据类型非常多,选择正确的数据类型对获得高性能至关重要。选...

  • MySQL性能优化

    Schema与数据类型优化 选择数据类型原则更小的通常更好更小的数据类型通常更快,因为它们占用更少的磁盘、内存和C...

  • 数据库性能优化

    1、Scheme设计与数据类型优化 选择数据类型只要遵循小而简单的原则就好,越小的数据类型通常会更快,占用更少的磁...

  • mysql索引使用以及优化

    1、Scheme设计与数据类型优化 选择数据类型只要遵循小而简单的原则就好,越小的数据类型通常会更快,占用更少的磁...

网友评论

      本文标题:4Schema与数据类型优化

      本文链接:https://www.haomeiwen.com/subject/lylenhtx.html