返回首页

gbase数据、南大通用产品文档:GBase8sTIMESTAMP 数据类型

更新日期:2024年09月11日

TIMESTAMP 与 DATETIME 同义。唯一不同的是,其中指定小数秒精度的
FRACTION 时间单位值是 1 到 6 范围内的数字,缺省值为 0。

当您启动数据库服务器时,oninit 实用程序将启动您已直接和间接指定了数量和类型的虚
拟处理器。主要通过 ONCONFIG 参数配置虚拟处理器,并且对于网络虚拟处理器,那么
通过 sqlhosts 文件或注册表中的参数来配置。有关虚拟处理器类的描述,请参阅虚拟处理
器类。
可以使用数据库服务器来启动最多 1000 个虚拟处理器。
当数据库服务器处于联机方式后,如果需要,您可以启动其他虚拟处理器以提高性能。有
关更多信息,请参阅在联机方式下添加虚拟处理器。
当数据库服务器处于联机方式,那么您可以删除 CPU 和用户定义类的虚拟处理器。有关
更多信息,请参阅删除 CPU 和用户定义的虚拟处理器。
要终止数据库服务器并且从而终止所有的虚拟处理器,请使用 onmode -k 命令。有关使用
onmode -k 的更多信息,请参阅《GBase 8s 管理员参考》。

在联机方式下添加虚拟处理器
当数据库服务器处于联机方式时,您可以启动以下类的其他虚拟处理器:CPU、AIO、PIO、
LIO、SHM、STR、TLI、SOC、JVP 和用户定义。数据库服务器自动为 LIO 和 PIO 类的
每一个类启动一个虚拟处理器,除非使用了镜像,如果使用了镜像,那么数据库服务器将
启动两个虚拟处理器。
可以使用 onmode 实用程序的 -p 选项启动这些额外的虚拟处理器。
可以使用 onmode 实用程序的 -p 选项或者 ISA 启动这些额外的虚拟处理器。
还可以启动用户定义类的附加虚拟处理器来运行用户定义的例程。有关用户定义的虚拟处
理器的更多信息,请参阅将 UDR 指定给用户定义的虚拟处理器类。

在联机方式下使用 onmode 添加虚拟处理器
使用 onmode 命令的 -p 选项可在数据库服务器处于联机方式时添加虚拟处理器。用正数
指定希望添加的虚拟处理器数。
作为选择,您可以在虚拟处理器数前加上一个加号 (+)。在
这个数字后面,请以小写字母指定虚拟处理器的类。例如,以下两个命令中任意一个都可
启动 AIO 类中的其他四个虚拟处理器:

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 112 -
onmode -p 4 aio
onmode -p +4 aio
onmode 实用程序将立即启动附加的虚拟处理器。
一次只可以将虚拟处理器添加到一个类。要为另一个类添加虚拟处理器,您必须再次运行
onmode。

添加网络虚拟处理器
添加网络虚拟处理器时,可添加轮询线程,其中每个轮询线程都需要其自已的虚拟处理器
才能运行。
如果尝试在数据库服务器处于联机方式时为协议添加轮询线程,
并且在 NETTYPE 配置参
数中指定轮询线程在 CPU 类中运行,那么在没有 CPU 虚拟处理器可用于运行新轮询线
程时,数据库服务器不会启动新轮询线程。
在以下示例中,轮询线程总共处理 240 个连接:
NETTYPE ipcshm,4,60,CPU # Configure poll thread(s) for nettype
对于 ipcshm,轮询线程的数量对应于内存段的数量。例如,如果 NETTYPE 设置为 3,100
并且您只想要一个轮询线程,那么请将该轮询线程设置为 1,300。

删除 CPU 和用户定义的虚拟处理器
当数据库服务器处于联机方式中,那么您可以使用 onmode 实用程序的 -p 选项来删除或
终止 CPU 或用户定义类的虚拟处理器。
删除 CPU 虚拟处理器
紧跟 onmode 命令之后,请指定一个负数,该数值是您想要删除的虚拟处理器的数量,然
后以小写字母指定 CPU 类。例如,以下命令删除两个 CPU 虚拟处理器:
% onmode -p -2 cpu
如果您尝试删除一个正在运行轮询线程的 CPU 虚拟处理器,那么您将接收以下消息:
onmode: failed when trying to change the number of cpu virtual processor by -number.
有关更多信息,请参阅在 CPU 或网络虚拟处理器上运行轮询线程。
删除用户定义的虚拟处理器
在 onmode 命令的后面,请指定一个负数(该数字是您希望删除的虚拟处理器的数量),
然后以小写字母指定用户定义的类。例如,以下命令将删除类 usr 的两个虚拟处理器:
onmode -p -2 usr
有关如何创建用户定义的虚拟处理器类以及如何将用户定义的例程指定给该类,请参阅用
户定义的虚拟处理器类。


Hash 列字段在使用过程中禁止加类似LTRIM 等函数处理操作,这样做会破
坏hash 分布,必须去掉,由外部保证字段数据的正确性。
例如:字段col1 在GROUP BY、INSERT INTO SELECT 投影列中对col1 加
的RTRIM、LTRIM 破坏了hash 分布,必须去掉。

GROUP BY 语句如果含有hash 列,将hash 列放在最前面。

多个JOIN 列如果有hash 列JOIN 的,将hash 列JOIN 放到最前面。