返回首页

gbase数据、南大通用产品文档:GBase8s功能概述

更新日期:2024年09月11日

DBMS 中的主体与客体均需标以敏感标记(简称标记),标记分为安全等级标记与
范畴标记,等级标记是用正整数表示,而范畴标记则用集合表示。
由负责 MAC 管理的安全管理员设定主体和客体的密级和范畴。
在标记的基础上可以进行强制访问控制,强制访问控制采用 Bell
Lapadula 访问
策略模型,即当主体访问客体时,对主体与客体的标记作比较,一般而言,只有当主
体安全等级标记大于等于客体安全等级标记并且其主体范畴标记包含客体范畴标记时,
才能进行读访问(称向下读原则)。只有当主体安全等级标记小于等于客体安全等级
标记并且其主体范畴标记被客体范畴标记包含时,才能进行写(包括修改、删除)访

(称向上写原则)

Bell-La
Padula 模型的基本安全策略是
“下读上写”

在 GBase
8s 中,
基于实用性的考虑对安全策略进行了优化。
默认的安全访问策略为:
下读等写。
当主体访问客体时,强制访问控制需按安全访问策略模型作安全检查,只有当符
合模型要求时访问才能进行,否则为非法,访问不能进行。
强制访问控制粒度支持记录、字段级。

选择数据类型
高效数据类型,主要包括以下三方面:
(1)
尽量使用执行效率比较高的数据类型
一般来说整型数据运算(包括=、>、<、≧、≦、≠等常规的比较运算,以及group by)
的效率比字符串、浮点数要高。比如某客户场景中对列存表进行点查询,filter 条件在一个
numeric 列上,执行时间为10+s;修改numeric 为int 类型之后,执行时间缩短为1.8s 左右。
(2)
尽量使用短字段的数据类型
长度较短的数据类型不仅可以减小数据文件的大小,提升IO 性能;同时也可以减小相
关计算时的内存消耗,提升计算性能。比如对于整型数据,如果可以用smallint 就尽量不用
int,如果可以用int 就尽量不用bigint。
(3)
使用一致的数据类型
表关联列尽量使用相同的数据类型。
如果表关联列数据类型不同,
数据库必须动态地转
化为相同的数据类型进行比较,这种转换会带来一定的性能开销。

功能说明
源表包含自增列,create table like 的目标表继承自增列属性。
示例

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1018
gbase> CREATE TABLE t1_1 like t1;
Query OK, 0 rows affected (Elapsed: 00:00:00.07)
gbase> SHOW CREATE TABLE t1_1 \G
*************************** 1. row ***************************
Table: t1_1
Create Table: CREATE TABLE "t1_1" (
"name" varchar(10) DEFAULT NULL,
"id" int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY ("id")
)
ENGINE=EXPRESS
DEFAULT
CHARSET=utf8
TABLESPACE='sys_tablespace'
1 row in set (Elapsed: 00:00:00.00)