返回首页

gbase数据、南大通用产品文档:GBase8s分配磁盘空间

更新日期:2024年09月11日

本节说明如何分配数据库服务器的磁盘空间。请在分配磁盘空间之前阅读下列章节:

UNIX 上的未缓冲或已缓冲磁盘的访问

存储数据所需的磁盘空间量

磁盘布局准则
在您可以创建存储空间或块、或对现有存储空间制作镜像之前,必须为块文件分配磁盘空
间。您可以为数据库服务器磁盘空间分配空文件或部分原始磁盘。
仅限 UNIX:在 UNIX™ 上,如果分配原始磁盘空间,必须使用 UNIX ™ ln 命令来创建字符专用设备名
称和另一个文件名之间的链接。有关此主题的更多信息,请参阅创建到原始设备的符号链接 (UNIX)。
将 UNIX 文件及其固有操作系统接口用于数据库服务器磁盘空间称为使用熟空间。
您可以在磁盘和控制器上平衡块。在单个磁盘上放置多个块可提高吞吐量。

指定偏移量

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 193 -
当您将磁盘空间块分配至数据库服务器时,为达到以下两个目的之一,请指定偏移量:
 防止数据库服务器覆盖分区信息
 在分区、磁盘设备或熟文件上定义多个块
偏移量的最大值为 4 太字节。
许多计算机系统和一些磁盘驱动器的制造商会将有关物理磁盘驱动器的信息保存在驱动器
本身中。
此信息有时称为卷目录 (VTOC) 或磁盘标签。
VTOC 通常存储在驱动器的第一个
磁道上。备用扇区及坏扇区映射表(又称为重指向表)也可能存储在第一个磁道上。
如果计划从磁盘起始处分配分区,那么可能需要使用偏移量来防止数据库服务器覆盖操作
系统所需的关键信息。有关所需的精确偏移量,请参阅磁盘驱动器手册。
重要: 如果您正运行数据库服务器的两个或两个以上实例,那么要非常小心,不要定义重叠的块。重叠
的块会导致数据库服务器用不相关的重叠块中数据覆盖另一个块中的数据。此覆盖实际上会删除重叠数
据。
为根数据库空间的初始块指定偏移量
对于根数据库空间的初始块及其镜像(如果镜像存在),分别用 ROOTOFFSET 和
MIRROROFFSET 参数指定偏移量。有关更多信息,请参阅《GBase 8s 管理员参考》中有
关配置参数的主题。
为附加块指定偏移量
要为数据库服务器空间的附加块指定偏移量,必须在为数据库服务器分配空间时将偏移量
作为参数而提供。有关更多信息,请参阅创建使用缺省页大小的数据库空间。
使用偏移量创建多个块
通过指定偏移量以及分配小于可用总空间的块,您可从磁盘分区、磁盘设备或文件中创建
多个块。偏移量指定块的开始位置。数据库服务器通过将块大小增加至偏移量来确定块的
最后字节的位置。
对于第一个块,分配任何初始偏移量(如有需要)并将大小指定为少于分配磁盘空间总大
小的数量。对于每个附加块,请指定偏移量以包含所有先前分配的块并加上初始偏移量,
然后分配少于或等于分配中剩余的空间量大小。

在 UNIX 上分配熟文件空间
以下过程显示了在 UNIX™ 上为名为 usr/data/my_chunk 的熟文件分配磁盘空间的示例。
要分配熟文件空间,请执行以下操作:
1. 以用户 gbasedbt 身份登录:su gbasedbt
2. 将目录切换至将熟空间将位于的目录:cd /usr/data
3. 通过将 null 连接至数据库服务器要用于磁盘空间的文件名来创建块:
cat /dev/null >
my_chunk
4. 将文件许可权设置为 660 (rw-rw----):chmod 660 my_chunk
5. 必须将组和文件所有者均设置到 gbasedbt:

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 194 -
ls -l my_chunk -rw-rw----
1 gbasedbt gbasedbt
0 Oct 12 13:43 my_chunk
6. 使用 onspaces 创建存储空间或块。
有关如何使用已分配的文件来创建存储空间的信息,请参阅创建使用缺省页大小的数据库
空间、创建 BLOB 空间和创建智能大对象空间。

在 UNIX 上分配原始磁盘空间
要分配原始空间,您必须具有专用于未加工空间的可用磁盘分区。要创建原始磁盘空间,
您可以将磁盘重新分区或卸载现有文件系统。在卸载设备之前请备份所有文件。
分配原始磁盘空间
1. 创建并安装原始设备。
有关如何在 UNIX™ 上分配原始磁盘空间的特定指示信息,
请参阅您的操作系统文档
和 UNIX 上的未缓冲或已缓冲磁盘的访问。
2. 将字符专用设备的所有权和许可权更改到 gbasedbt。
字符专用设备的文件名通常以字母 r 开头。有关过程,请参阅在 UNIX 上分配熟文
件空间中的步骤 4 和步骤 5。
3. 验证指定特征的设备的操作系统许可权是否为 crw-rw----。
4. 使用 UNIX 链接命令 ln -s 创建字符专用设备名称和另一个文件名之间的符号链
接。
有关详细信息,请参阅创建到原始设备的符号链接 (UNIX)。
限制: 在您创建数据库服务器用于磁盘空间的原始设备之后,请不要在您为数据库服务器磁盘
空间分配的同一原始设备上创建文件系统。并且,也不要将同一原始设备用作您为数据库服务
器磁盘空间分配的交换空间。

创建到原始设备的符号链接 (UNIX)
使用符号链接来分配标准设备名称并指向设备。要在字符专用设备名和另一个文件名之间
创建链接,请使用 UNIX™ 链接命令(通常为 ln)。要验证设备和链接是否都存在,请在
设备目录下运行 UNIX 命令 ls -l(DBS 上的 ls -lg)。以下示例显示原始设备的链接。如
果您的操作系统不支持符号链接,那么硬链接也可起作用。
ln -s /dev/rxy0h /dev/my_root # orig_device link to symbolic_name
ln -s /dev/rxy0a /dev/raw_dev2
ls -l
crw-rw--- /dev/rxy0h
crw-rw--- /dev/rxy0a
lrwxrwxrwx /dev/my_root@->/dev/rxy0h
lrwxrwxrwx /dev/raw_dev2@->/dev/rxy0a

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 195 -
为何使用符号链接?如果是在原始设备上创建块,但该设备发生了故障,那么直到替换该
原始设备并使用相同路径名之后才能从备份复原。在上次备份时可访问的所有块在您执行
复原时均必须为可访问的。
符号链接简化了磁盘故障的恢复,并使您可迅速替换块所处的磁盘。您可以用其他设备替
换故障设备,将新设备路径名链接至先前为故障设备创建的同一文件名,然后复原数据。
无需等待原始设备修复。

force_bitmapand
参数说明:控制优化器强制使用bitmapand 规划类型的使用。
该参数属于USERSET 类型参数,请参考表15-1 中对应设置方法进行设置。

GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
1237
取值范围:布尔型

on 表示使用。

off 表示不使用。
默认值:off

资源对SMP 性能的影响
SMP 架构是一种利用富余资源来换取时间的方案,计划并行之后必定会引起资源消耗
的增加,
包括CPU、
内存、
I/O 等资源的消耗都会出现明显的增长,
而且随着并行度的增大,
资源消耗也随之增大。当上述资源成为瓶颈的情况下,SMP 无法提升性能,反而可能导致
集群整体性能的劣化。下面对各种资源对SMP 性能的影响情况分别进行说明。

CPU 资源
在一般客户场景中,
系统CPU 利用率不高的情况下,
利用SMP 并行架构能够更充分地
利用系统CPU 资源,提升系统性能。但当数据库服务器的CPU 核数较少,CPU 利用率已
经比较高的情况下,如果打开SMP 并行,不仅性能提升不明显,反而可能因为多线程间的
资源竞争而导致性能劣化。

内存资源
查询并行后会导致内存使用量的增长,
但每个算子使用内存上限仍受到work_mem 等参
数的限制。假设work_mem 为4GB,并行度为2,那么每个并行线程所分到的内存上限为
2GB。在work_mem 较小或者系统内存不充裕的情况下,使用SMP 并行后,可能出现数据
下盘,导致查询性能劣化的问题。

I/O 资源
要实现并行扫描必定会增加I/O 的资源消耗,因此只有在I/O 资源充足的情况下,并行
扫描才能够提高扫描性能。