在实际的生产运行环境中,很多客户现场都看到开发人员和系统管理人员遇到很多有关于GBase 8s 数据库引起的性能问题,进而被多次问起如何进行GBase 8s 数据库性能调优,
WildFly配置连接GBase 8s
简介:
WildFly,原名 JBoss AS(JBoss Application Server) 或者 JBoss,是一套应用程序服务器,属于开源的企业级 Java 中间件软件,用于实现基于 SOA 架构的 Web 应用和服务。 WildFly 包含一组可独立运行的软件。
GBase 8s(南大通用安全数据库管理系统),是具有完全自主知识产权的数据库产品,产品符合SQL92、ODBC、OLEDB、JDBC、ADO.NET等国际数据库规范和开发接口,参照国际主流数据库产品定义,提供完备的数据存储和数据管理功能
[GBase 8s 教程]GBase 8s 时间/日期函数和操作符
日期/时间操做符
下表演示了基本算术操作符的行为(+,-,*,/等):
类型1 | 操作符 | 类型2 | 返回类型 | 示例、说明 |
---|---|---|---|---|
DATE | - | DATE | INTERVAL DAY TO DAY | date('2020-05-08') - date('2020-05-01') 值为7 |
DATE | - | DATETIME | INTERVAL DAY TO DAY | date('2020-05-08') - datetime(2020-05-01 12:00:00) year to second 值为7 |
DATE | + - | INTERVAL DAY TO DAY | DATETIME | date('2020-05-08') + interval(10) day to day 值为2020-05-18 00:00:00 |
DATE | + - | NUMBER | DATE | date('2020-05-08') - 10 值为2020-04-28 |
DATETIME | - | DATE | INTERVAL | current year to second - date('2020-05-08')值为 0 20:46:57 当前时间为2020-05-08 20:46:57,将DATE类型转换为当天00:00:00 |
DATETIME | - | DATETIME | INTERVAL | current year to second - datetime(2020-05-01 12:58:58) year to second 值为 7 07:50:05 |
DATETIME | + - | INTERVAL | DATETIME | current year to second - interval(03:04:05) hour to second 值为2020-05-08 17:46:02 |
DATETIME | + - | NUMBER | DATETIME | current year to second + 2/24/60 值为2020-05-08 21:07:17 当前时间为2020-05-08 21:05:17,2/24/60 (2分钟) |
INTERVAL | + - | INTERVAL | INTERVAL | interval(03:04:05) hour to second + interval(3) hour to hour 值为 6:04:05 |
INTERVAL | * / | NUMBER | INTERVAL | interval(03:04:05) hour to second * 4 值为12:16:20 |
GBase 8s 系统表syscolumns字段说明
syscolumns表结构
系统表syscolumns保存的是表的字段信息。其包含的主要字段如下:
字段名称 | 字段类型 | 说明 |
---|---|---|
colname | VARCHAR(128) | 字段名称 |
tabid | INTEGER | 该字段所属的表的唯一ID |
colno | SMALLINT | 字段编号(表内) |
coltype | SMALLINT | 字段的数据类型(数字形式) |
collength | 对不同的数据类型有不同解释: 基本数值类型 可变长字符型 时间类型 定点数据类型 简单大对象 IDSSECURITYLABEL | 取决于数据类型 |
colmin | INTEGER | 最小字段长度(单位:字节) |
colmax | INTEGER | 最大字段长度(单位:字节) |
extended_id | INTEGER | 从系统表sysxtdtypes而来的数据类型编码 |
seclabelid | INTERGER | 总是NULL |
colattr | SMALLINT | 字段属性: HIDDEN: 1 - 隐藏字段 ROWVER: 2 - 行版本字段 ROW_CHKSUM: 4 - 行键字段 ER_CHECKVER: 8 - ER行版本字段 UPGRD1_COL:16 - ER自动主键字段 UPGRD2_COL: 32 - ER自动主键字段 UPGRD3_COL: 64 - ER自动主键字段 PK_NOTNULL: 128 - 主键非空 |
说明:在tabid和colno上建有复合主键。
GBase 8s 普通表转换成分片表的方式分析
GBase 8s中的普通表可以通过两种方式转换成分片表:通过init初始化为分片表;通过attach加入新建的分片表。
以下面的测试表t1为例:
create table t1(col1 int, col2 datetime year to second, col3 varchar(128)) in datadbs01;
create index ix_t1_col1 on t1(col1);
以下将以col2字段按月进行表分片。
Docker 搭建 GBase 8s数据库服务
前置条件
1,Docker服务已经创建
2,足够的空间(GBase 8s For Docker最少需要2G的空间及1G以上的内存)
具体步骤
1,查找GBase 8s 镜像版本
[root@localhost ~]# docker search gbase8s
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
liaosnet/gbase8s GBase8sV8.7_2.0.1a2_2 1
GBase 8s TimeSeries(时间序列) 指南
时间序列概念
时间序列数据类型(TimeSeries data type)
元素(Element)
包装元素(Packed Element)
时间点(Time point)
起点(Origin):
时间序列实例(TimeSeries Instance)
日历(Calendar)
日历模式(Calendar pattern)
容器(Container)
规则性(Regularity)
虚表(Virtual table)
[GBase 8s 教程]GBase 8s 正则表达式
在前面的章节我们已经了解到GBase 8s可以通过 LIKE ...% 来进行模糊匹配。
GBase 8s 同样也支持其他正则表达式的匹配, GBase 8s中使用 REGEXP_LIKE 操作符来进行正则表达式匹配。
GBase 8s的正则表达式匹配与PHP、Perl这些脚本的类似。
注:在2.0.1a2_2和3.0.0_1版本中,该功能默认并未开放使用,需要手动开启。
[GBase 8s 教程]GBase 8s LIKE 子句
在数据库中使用 SQL SELECT 命令来读取数据, 同时我们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录。
WHERE 子句中可以使用等号 = 来设定获取数据的条件,如 "name = '李雷'"。
但是有时候我们需要获取 name 字段含有 "李" 字符的所有记录,这时我们就需要在 WHERE 子句中使用 SQL LIKE 子句。
SQL LIKE 子句中使用百分号 %字符来表示任意字符,类似于UNIX或正则表达式中的星号 *; 使用下划线 _ 字段来表示单个字符。
GBase 8s 数据库操作指南
一、数据库日常管理指南
简介:
GBase 8s数据库日常管理包括数据库模式的切换,以及服务器的监控。监控主要分为两个方面,一方面是系统级别的监控,主要包括对系统cpu的监控,以及内存的占用情况;另一方面是数据库级别的监控,包括对磁盘空间大小的监控,对逻辑日志物理日志的监控,对数据表中数据量的监控,以及表中索引层数,顺序扫描次数等等。我们可以通过命令或者sql语句的方式,完成对数据库的监控,也可以通过OAT图形化管理界面实现对GBase 8s数据库的监控。