高性能MySQL读书笔记 - 第四章

2021-08-06  本文已影响0人  哲人王

第四章

选择数据类型,几个简单的原则:

  1. 更小的通常更好
  2. 简单就好,比如使用MySQL内建datetime、timestamp,不使用字符串存储时间。使用整数存储IP地址 SELECT INET_ATON('192.168.1.212'), INET_NTOA(3232235988)
  3. 尽量避免NULL

摘要

选择标示列类型

标示列,一般是主键或者关联列。

范式和反范式

反范式是值schema把数据都放一张表里,可以很好避免关联

计数器表的优化

如果有一张表CREATE TABLE hit_counter(cnt int unsigned not null)
记录点击次数,每次更新这行数据事务来说,都有一个全局的互斥锁mutex。要获得更高性能可以采用分治思想,把热点行数据分拆。

CREATE TABLE hit_counter( slot tinyint unsigned not null primary key,
cnt int unsigned not null);
insert INTO hit_counter(slot, cnt) VALUE (RAND() * 100, 1)
ON DUPLICATE KEY UPDATE cnt = cnt + 1;
上一篇下一篇

猜你喜欢

热点阅读