返回首页

gbase数据、南大通用产品文档:GBase8a

更新日期:2024年09月11日

导出到kafka 集群说明
GBase 8a 集群将查询结果的数据生产到kafka topic 的所有分区或指定分区中
select * from test.lineitem into outfile
'kafka://192.168.8.127:9092/test?brokers=192.168.8.127:9092|192.168.8.127:9093&pa
rtition=0' [OPTIONS];

KAFKA URL 格式:
kafka://broker1/topicname?[brokers=broker2|broker3|...][partition=pt1]
brokers:kafka 集群中一个或多个broker 地址的IP 和端口号列表,格式为

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1227
host2:port2|host3:port3|...。8a 集群会通过URL 中指定的broker 地址连接到kafka
集群,使用brokers 参数指定多个broker 地址,可以避免在单个broker 宕机情况
下连接不到kafka 集群。
topicname:指定导出到的topic 名称,区分大小写。
partition:指定导出到topic 的一个分区,格式为partition=ptnum。省略该参数时,
默认导出到topic 的所有分区中。

导出到kafka 支持的OPTION 参数有:
字段分隔符、字段包围符、转义标识符、字段包围符自转义(double_enclosed by)、
定长模式字段长度、longblob 字段的文本和base64 导出方式(fields/columns
blobmode type_text/type_base64)、行分隔符、行起始符(lines starting by)、空值标
识符、导出文件字符集。

不支持的OPTION 参数有:
导出表头信息、导出方式(outfilemode by)、写入方式writemode by overwrites、并
行导出的文件个数(filecount)、导出文件大小、longblob 字段独立文件导出方式
(fileds blobmode type_url)

说明:
(1)当前不支持多节点并行导出到kafka,消息按轮询方式写入各broker,消费
时不保证多个broker 之间消息的顺序。
(2)kafka 集群本身支持高可用,建议kafka 集群配置时指定topic 分区副本数大
于1。
(3)8a 集群导出过程中如果某个broker 不可用,数据会自动导出到其他broker
中,保证高可用。参数gbase_kafka_producer_message_timeout_ms 为指定kafka
发送消息超时时间参数,如果消息无法在设定时间内发送到broker,会产生发送
超时的报错信息,默认是300000 秒,取值范围为1~2147483647。
(4)
设置gbase_sql_trace_level>=5 时,
执行导出的gnode 下express.log 会记录导
出的kafka 消息条数和topic 所有分区最后一条消息导出前后的偏移量。
(5)
支持配置每条kafka 消息的最大字节数或包含的数据行数,
8a 查询的结果集
数据会根据该配置被分割成多条kafka 消息:
参数gbase_kafka_producer_message_max_bytes 为一条kafka 消息的最大字节数,
默认值为8192,取值范围为1~1000000000
参数gbase_kafka_producer_message_max_rows 为一条kafka 消息中最多的数据行
数,默认值为100000000,取值范围为1~4294967295
(6)支持设置批量发送消息的个数,每次发送单条kafka 消息效率低时,可以配
置批量发送消息的个数,当消息积累到一定数量后一起发送到broker:

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1228
参数gbase_kafka_producer_batch_messages 为批量发送消息的个数,默认值为
1000,取值范围为1~10000000
(7)kafka 0.11 版本(含)以上支持EOS 特性,集群数据导出到kafka 也支持
EOS(exactly-once semantics 精确一次语义)配置,即不会重复生产和消费数据,包
含幂等性和事务性两种特性。开启事务性配置后,幂等性配置会连带置为开启。
参数gbase_kafka_producer_enable_idempotence 为幂等性开关,默认值为0,取值
范围0、1,0 代表关闭幂等性,1 代表开启幂等性。开启幂等性功能,可以保证
导出的消息中没有因为发送重试产生的重复消息(如果broker 端收到数据,
但是返
回给发送端的确认信息ACK 在网络中丢失会造成发送端再次发送重复消息)。
参数gbase_kafka_enable_transaction 为事务性开关,默认值为0,取值0、1,0 代
表关闭事务性,1 代表开启事务性。开启事务性功能,可以保证所有导出的消息
属于同一事务,即其中一条消息生产失败,整个事务提交失败。同样开启事务性
功能后,kafka 数据导入到8a 集群也只有提交成功的事务内的消息可以被导入。
(8)集群数据导出到kafka 新增对应kafka 集群的两个配置参数:
参数_gbase_kafka_producer_transaction_timeout_ms 为事务超时时间,对应kafka
配置中的transaction.timeout.ms ,该参数默认值6000000 ,取值范围为
1000~2147483647。
参数_gbase_kafka_producer_queue_buffering_max_messages 为一批中最多的消息
数,对应kafka 配置中的queue.buffering.max.messages,默认值为10000000,取
值范围为1~10000000

功能说明
记录vc 级别权限信息。
表结构说明
表5- 308 表结构信息说明:




Host
主机IP
VC_ID
虚拟集群编码
User
用户名

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1518
Select_priv
select 语句的执行权限
Insert_priv
insert 的权限
Update_priv
update 的权限
Delete_priv
delete 语句的执行权限
Create_priv
create table 的权限
Drop_priv
drop 的权限
Drop_table_priv
drop table 的权限
Drop_view_priv
drop view 的权限
Drop_database_priv
drop database 的权限
Unmask_priv
unmask 的权限
Grant_priv
管理权限的权限
References_priv
未来功能的占位符,当前无用
Index_priv
create index 和drop index 的权限
Alter_priv
Alter 权限
Create_tmp_table_priv
创建temporary table 权限
Lock_tables_priv
允许在有select 权限的表上使用lock tables
Create_view_priv
创建视图的权限
Show_view_priv
使用show create view 的权限
Create_routine_priv
创建存储过程和函数的权限
Alter_routine_priv
是否允许alter 过程及函数
Execute_priv
执行存储过程和函数的权限
Event_priv
event 权限
Trigger_priv
触发器使用权限

功能说明
如果要访问非当前VC 的库表,需要显式指定VC name。访问当前VC 的库表可以
省略VC name。

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
212
示例
gbase> select * from vc1.db1.t1;
+------+------+
| a
| b
|
+------+------+
|
1 | test |
+------+------+
1 row in set (Elapsed: 00:00:00.02)