https://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0902yuancg/

临时表空间的使用 (sorts or joins)

(1) 最好和大多数 数据表空间的页大小一致

(2) 批量和顺序的访问,就是说数据行被批量的写入和读取。所以较大的页大小会有利于性能,减少逻辑和物理io

平均行大小 小于 页大小除以255   (32k*1024/255 = 128byte)

最大255行可以存在于任何页,无论页大小是多少

15byte 在 4k页上会更好  (4k*1024/255 = 16byte)    page size过大,会造成浪费

(3) 共享数据表空间的bufferpools

(4) reorg table 时,要有匹配的page size,才能使用临时表空间。直接在目标表的表空间重组,需要额外的空间

(5) 添加一个8K 页大小的临时表空间,并使用一个较大的bufferpool。 优化器通常会选择较大buffer的临时表空间

(6) 一般情况下,定义具有相同页大小的多个临时表空间没有什么好处

(7) 数据库错误

SQL1585N  A system temporary table space with sufficient page size does not exist.  SQLSTATE=54048

8K表空间 使用 4k 的临时表空间 报错

4k表空间 使用 4k 的临时表空间 某种情况 也会报错,如:

(select aa.* from yeyu.b1 aa,yeyu.b2 bb where aa.c1=bb.c1 order by aa.c1,bb.c1)

================================================================================================

1、表空间对应指定的容器的设备名及大小

2、分“系统管理表空间SMS”“数据库管理表空间DMS”

3、系统临时表空间用来存储分组、排序、连接、重组、创建索引操作。

4、用户临时表空间批量插入、批量删除、批量更新提高速度“declare global temporary table”声明临时表需要有临时表空间存在

5、查看表空间“db2 list tablespaces show detail”

6、默认自动创建三个表空间(SYSCATSPACE、TEMPSPACE1、USERSPACE1)“系统编目表空间SYSCATSPACE”和“系统临时表空间TEMPSPACE1”是只读的,不能在上面创建表

7、

8、查看表空间容器的情况,使用LIST TABLESPACE CONTAINERS命令,该命令将列出指定表空间中的所有容器。如上所示的路径指向容器物理上所在的位置

9、对于SMS表空间,我们只能增加容器,对于DMS表空间,可以添加、扩展、重新平衡、删除或减少容器,或者调整容器大小。要使用命令行来改变表空间,可使用ALTER TABLESPACE语句

10、通过将一个或多个容器添加至DMS表空间,可以增大该表空间的大小。增加容器后会平衡表空间数据,不影响读数据

11、SMS表空间,由系统分配,大小可变,物理上存储可能不连续。

12、DMS表空间,物理上连续,大小不可变(可增加容器增加大小)有增删改操作的数据适合用DMS表空间

13、小型个人数据库用SMS管理方便。数据不断变大的数据库最好用SMS作为系统临时和用户临时表空间,每个表用容器对应的DMS表空间管理,并对长字段数据,索引放在分别存放在不同的表空间

14、存储许多小表用SMS表空间。对数据量非常大的表可以使用单独的DMS表空间

15、例如,某些历史数据用户可以接受较长的查询时间,可以为历史记录表使用单独的一个表空间,并将次表空间分配给访问速率较低的较便宜的物理设备。   对于需要快速响应的频繁配置的参数表等,那么需要将这些表分配给一个快速物理设备的表空间中

16、通过使用DMS表空间,还可以将表数据分发在3个不同的表空间中:一个存储索引数据;一个存放大对象(LOB)和长字段(LF)数据;一个存储常规表数据。把索引放在最快的设备上

17、可以备份表空间,允许频繁备份有大量更改的表空间,或者偶尔备份有少量更改的表空间

18、表空间页大小限定行的最大长度和存储空间最大值

19、

20、OLTP(随机存取,例如银行交易),OLAP(大量读取,例如数据仓库)对于OLAP:PREFETCHSIZE=EXTENTSIZE*容器设备数,预存取大小指定为-1,PREFETCHSIZE设置为AUTOMATIC或-1

更多DB2表空间知识:https://www.cnblogs.com/heml/p/3368617.html

DB2表空间的更多相关文章

  1. DB2 表空间监控

    默认DB2 缓冲池信息监控是OFF, 需要开启(DB2表空间是由缓冲池分配的) CollBufferpool : ============ The CollBufferpool collector c ...

  2. db2 表空间扩容

    DB2表空间扩容 1 - Detect what tablespace has size issues db2 list tablespaces show detail 2 - Check the p ...

  3. DB2 表空间和缓冲池

    简介 对于刚涉足 DB2 领域的 DBA 或未来的 DBA 而言,新数据库的设计和性能选择可能会很令人困惑.在本文中,我们将讨论 DBA 要做出重要选择的两个方面:表空间和缓冲池.表空间和缓冲池的设计 ...

  4. db2 表空间容器调整

    1.查看当前容器的分布,并确定如何调整 db2look -d sample -l -cor -dp -o dd.sql 2.给表空间添加容器 db2 "alter tablespace tb ...

  5. db2 表空间容量

    Db2 connect to xxx Db2 “LIST TABLESPACES SHOW DETAIL” Tablespace ID = 7 Name = TSASNAA Type = Databa ...

  6. db2表空间及日志文件调整

    1.SQLState '57011' and errorCode '-964'  原因:数据库的日志文件已满  解决方法:修改日志文件大小(加大),增加日志文件个数,增加辅助日志文件个数(三个修改参数 ...

  7. DB2表空间重定向恢复数据库实战

    DB2的备份恢复有点坑,当源系统和目标系统的路径设置不同时,要手动进行重定向恢复,本文是我一次实战操作之后总结的过程,仅供参考. 一.发出重定向恢复命令 DB2 RESTORE DB TO " ...

  8. 查看db2表空间使用率

    select char(TABLESPACE_NAME,16) tablespace_name,decimal(PAGE_SIZE/1024,4,2) page,used_pages*100/usab ...

  9. 【DB2】查看表空间对应的物理文件地址

    使用的命令: db2 list tablespaces show detail db2 list tablespace containers for [Tablespace ID] [show det ...

随机推荐

  1. Unity脚本打包android工程

    using UnityEngine; using System.Collections; using UnityEditor; public class NewBehaviourScript : Ed ...

  2. 公司内网,无法使用yum在线下载,肿么办?

    1 配置上网代理 编辑/etc/yum.conf,增加如下属性: proxy=你的代理地址 proxy_user=你的用户名 proxy_password=你的密码 2 配置国内163 yum源 备份 ...

  3. SVG动画 -- 描边动画

    代码说明:纯CSS实现,无JS <!DOCTYPE html> <html lang="en"> <head> <meta charset ...

  4. hdu 4704 Sum【组合数学/费马小定理/大数取模】By cellur925

    首先,我们珂以抽象出S函数的模型:把n拆成k个正整数,有多少种方案? 答案是C(n-1,k-1). 然后发现我们要求的是一段连续的函数值,仔细思考,并根据组合数的性质,我们珂以发现实际上答案就是在让求 ...

  5. svn项目添加到tomcat后,tomcat无法打开问题解决

    1,tomcat版本更改 由7.0.81更改至8.0.47(8.5.23在添加至eclipse后版本不符无法使用) 更改版本后记得修改Server Locations-->双击服务器--> ...

  6. 在IDEA中使用JSP中的out内置对象,out.println()——println红色解决方法

    今天在学习JSP的时候,在jsp中使用out内置对象,开发工具用的是IDEA,结果如下图所示 郁闷了半天找度娘,可能关键字输的不准确,乱七八糟的方法一大堆,什么加依赖啊啥的,反正都不管用,最后找到一篇 ...

  7. springboot&mybatis 增删改查系列(二)

    数据库篇 我的数据库名为data0525,数据表名为user,其中有五列uid,uname,upass,usex,umessage.uid为主键并且自动生成,由于是练习表,所以并没有考虑设计的合理性. ...

  8. 继续(3n+1)猜想 (25)

    #include <algorithm> #include <iostream> using namespace std; int main(){ ] = { }; ], nu ...

  9. <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>

    那么 pageEncoding , contentType 分别用来做什么那?在解释之前让我们先了解下jsp从被请求到响应经历的三个阶段: 第一阶段:将jsp编译成Servlet(.java)文件.用 ...

  10. python中的栈

    # @File: stack # 列表实现栈 class MyStack(object): def __init__(self): self.data = [] def push(self, item ...