返回首页

gbase数据、南大通用产品文档:GBase8s磁盘布局准则

更新日期:2024年09月11日

有效磁盘布局具有以下典型目标:

限制磁盘头的移动

减少磁盘争用

平衡负载

最大化可用性
您必须在设计磁盘布局时对这些目标作一些折中。例如,将系统目录表、逻辑日志和物理
日志分开可以帮助减少对这些资源的争用。然而,此操作也会增加必须执行系统复原的机
率。

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 179 -
数据库空间和块准则
本主题列出了磁盘布局的一些常规策略,这些策略不需要有关特定数据库特征的任何信
息:

将磁盘分区与块关联并为根数据库空间分配至少一个附加块。
已经分区的磁盘可能需要使用偏移量。 有关详细信息,请参阅在 UNIX 上分配原
始磁盘空间。
提示: 有了块的 4 太字节的最大大小的限制,您可以通过为每个磁盘驱动器指定
块来避免进行分区。

为关键数据库空间(根数据库空间、包含逻辑日志和逻辑日志文件的数据库空间)
建立镜像。还可为使用率高的数据库和表建立镜像。
可以在数据库空间级别上指定镜像。对于所有属于数据库空间的块来说,镜像可以
打开也可以关闭。在不同的磁盘上定位主要和镜像数据库空间。理论上,不同的控
制器将处理不同的磁盘。

在多个磁盘上分布临时表并将文件排序。
要为临时表和排序文件定义数个数据库空间,可使用 onspaces -t。 当在不同的磁盘
上放置这些数据库空间并将它们列在 DBSPACETEMP 配置参数中时,可以展开与
临时表相关联的 I/O 并在多个磁盘上对文件进行排序。有关使用 DBSPACETEMP
配置参数或环境变量的信息,请参阅《GBase 8s 管理员参考》中有关配置参数的章
节。

将物理日志保留在根数据库空间中,而将逻辑日志从根数据库空间移出。然而,如
果您计划将系统目录存储在根数据库空间中,请将物理日志移至另一个数据库空
间。
有关日志存储的位置的建议,请参阅指定物理日志的位置和逻辑日志文件的位置。
另请参阅将逻辑日志文件移至另一个数据库空间和更改物理日志的位置和大小。

要提高备份与复原的性能,请执行以下操作:
o
将系统目录与它们跟踪的数据集群起来。
o
如果使用 ON-Bar 对高速磁带机执行并行备份,请将这些数据库存储在多个小
数据库空间中。
有关附加的性能建议,请参阅《GBase 8s 备份与复原指南》。
表位置准则
本主题将列出用于优化磁盘布局的一些策略,前提是数据库中存在有关表的某些特征。您
可以使用表分段存储通过更高程度的控制来实现这些策略中的许多策略:

隔离独立磁盘上使用率高的表。
要在其自身的磁盘设备上隔离使用率高的表,请将该设备指定给一个块,然后将
同一个块指定给数据库空间。最后,将使用频繁的表放置在刚使用 CREAT
TABLE 的 IN dbspace 选项创建的数据库空间中。
要显示对每个块的 I/O 操作级别,请运行 onstat -g iof 选项。

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 180 -

将使用率高的表在多个磁盘上分段。

将有关的表在数据库空间中分组。
如果包含数据库空间的设备发生故障,该数据库空间中的所有表都是不可访问
的。然而,其他数据库空间中的表将仍然可以访问。尽管在包含关键信息的数据
库空间发生故障时必须执行冷复原,然而如果只是非关键的数据库空间发生故
障,那么只须执行热复原即可。

将使用率高的表放置在磁盘的中间分区上。

优化表扩展数据块的大小。
有关 onstat 选项的信息,请参阅《GBase 8s 管理员参考》。

GBase 8s 的日期时间类型有:
C 类型
GBase 8s 类型
sql 数据长度
SQLT 类型
GCIDateTime
或者是
GCIDate
DATE
16 字节
SQLT_DAT
SQLT_ODT
SQLT_TIMESTAMP
SQLT_DATE
SQLT_TIME
TIME
16 字节
DATETIME
16 字节

在不同的应用场景中使用的SQLT 的类型是不同的,
不同的类型使用的数据结构也不同:

l
SQLT_DAT:其数据结构是一个7 字节的数组。
l
SQLT_ODT:其使用的数据结构是GCIDate 数据结构,详见SQLT_ODT 章节。
l
SQLT_TIMESTAMP:是一个对象句柄,详见Datetime 对象类型章节

由于GBase 8s 与Oracle 在时间类型的区别也导致GCI 接口根据厂家设定不同的SQLT 的
类型使用,见表:

上表可见SQLT_TIMESTAMP 与SQLT_DAT 是不同时出现的,这主要是应用程序在获取字
段的sql 类型时的情况(主要原因是Oracle 时间类型是两种对应到8s 只有一种Datetime)

实际两种类型都可以获取用来绑定数据。

您的 GBase 8s 软件包括演示数据库。GBase 8s ESQL/C 在本出版物中,还包括许多演示
程序和示例的源文件,其中有些访问该演示数据库。
在 Windows™ 环境中,您可在 %GBASEDBTDIR%\demo\esqldemo 目录中找到 GBase 8s
ESQL/C 示例程序的源文件。
在 UNIX™ 操作系统上,您可在 $GBASEDBTDIR/demo/esqlc 目录中找到 GBase 8s
ESQL/C 示例程序的源文件。包括 GBase 8s ESQL/C 的 esqldemo 脚本将源文件从
$GBASEDBTDIR/demo/esqlc 目录复制至当前目录内。
要获取关于创建演示数据库的信息,请参阅 GBase 8s DB-Access 用户指南。