要确定分段存储策略,您必须收集有关可能分段的表的信息。还必须知道表中数据的使用方式。
要收集有关表的信息:
-
标识对于性能至关重要的查询,以确定这些查询是联机事务处理 (OLTP) 还是决策支持系统 (DSS) 查询。
-
使用 SET EXPLAIN 语句可确定数据的访问方式。
-
确定每个查询检查数据的哪一部分。
例如,如果在大部分时间中读取表中的某些行,那么您可以在小的分段中将它们进行隔离以减少其他分段的 I/O 争用。
-
确定哪些语句创建临时文件。
决策支持查询通常会创建和访问很大的临时文件,而临时数据库空间对于性能而言非常关键。
-
如果在一个决策支持查询中,某些特定的表总是连接在一起,那么应将这些表的分段分布在不同的磁盘上。
-
检查表中的列,以确定哪个分段存储方案对于决策支持查询而言,可以使每个扫描线程的繁忙程度相同。
要了解列值如何分布,可使用 UPDATE STATISTICS 语句在列上创建分布,并使用 dbschema 检查分布。
dbschema -d database -hd table