Foreign Key Optimization

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: 当查询涉及大量不同列组合时,可将不常用数据拆分至独立表中,每个表包含若干列,并通过复制主表的数字ID作为关联纽带。这样每个小表都有一个主键以快速检索数据,并可通过联接操作实现按需查询,减少I/O操作和缓存占用,从而优化查询性能,提升磁盘读取效率。

如果一个表有很多列,并且您查询了许多不同的列组合,那么将不太常用的数据拆分为单独的表,每个表有几列,并通过从主表复制数字ID列将其与主表相关联,可能会很有效。这样,每个小表都可以有一个主键来快速查找其数据,并且您可以使用联接操作只查询所需的列集。根据数据的分布方式,查询可能会执行较少的I/O并占用较少的缓存,因为相关列被打包在磁盘上。(为了最大限度地提高性能,查询试图从磁盘读取尽可能少的数据块;只有几列的表可以在每个数据块中容纳更多的行。)

相关文章
|
1月前
|
SQL
FOREIGN
【11月更文挑战第15天】
50 6
|
3月前
|
存储 关系型数据库 索引
Primary Key Optimization
表的主键是在重要查询中使用的列或列集,并附有索引以确保快速查询性能。由于不允许NULL值,所以能进行NOT NULL优化。在InnoDB存储引擎下,表数据被物理组织,实现基于主键的高效查找与排序。对于大型且重要的表,若无明显主键,可创建自动增量列作为唯一标识符,在外键联接时作为指向其他表行的指针。
|
3月前
|
存储 算法 关系型数据库
Comparison of B-Tree and Hash Indexes
B树和哈希数据结构对索引查询性能至关重要,尤其是在支持选择B树或哈希索引的MEMORY存储引擎上。B树索引适用于=、>、>=、<、<=及BETWEEN运算符,并能用于特定的LIKE比较;而哈希索引则专长于快速等式比较,但不支持范围查询,也无法用于加速ORDER BY操作。合理选择索引类型可显著提升查询效率。
|
SQL 关系型数据库 MySQL
explain 之 possible_keys 和 key 介绍|学习笔记
快速学习 explain 之 possible_keys 和 key 介绍
1699 0
|
关系型数据库 PostgreSQL
Principles and Optimization of 5 PostgreSQL Indexes (btree,hash,gin,gist,and brin)
What are the different indexes of PostgreSQL for? How can we optimize our database with these indexes?
2612 0