华为Gaussdb 高级知识培训

GaussDB 高级知识

1. 第一章 GaussDB OLTP概述···················································································································3
2. 第二章 SQL语法进阶······························································································································73
3. 第三章 数据库日常操作··························································································································152
4. 第四章 云DBA智能运维··························································································································264
5. 第五章 数据库性能调优··························································································································371
6. 第六章 数据库安全管理··························································································································435
7. 第七章 数据库高级特性··························································································································493
8. 第八章 华为云GaussDB OLTP华为云解决方案······················································································548
9. 附录1:思考题参考答案·························································································································573
10. 附录2:术语缩写大全·····························································································································582

第一章Gaussdb 介绍
1.GaussDB(for MySQL)云数据库介绍
1.1是华为自研的最新一代企业级高扩展海量存储分布式数据库,完全兼容MySQL 8.0。
1.2基于华为最新一代DFV存储,采用计算存储分离架构,128TB的海量存储,无需分库分表,数据0丢失,既拥有商业数据库的高可用和性能,又具备开源低成本效益。
1.3.一主2从节点,通过RDMA,对SAL 的DFV SERVER,SLICE的调用,对存储数据操作(Redo,pages).

1.1 主节点:处理所有的写操作,写wal日志(redo)
1.2只读节点:处理只读请求,快速升主节点,快速删除,快速增加
1.3 数据分区:数据按slice保存,来区分,隔离
1.4 Slice服务:将数据存储在多个slice,存储处理日志记录,维护重构数据页
1.5数据库实例规格(16cpu/64g,60CPU/256g;60cpu/480g)
1.6部署模式:
2.6.1目前支持公有云和混合云两种方式
2.6.1融合了公有云(计算能力)和私有云(存储数据)
1.7版本关系:gaussdb for mysql 兼容mysql8.0

2. GaussDB(for MySQL)云数据库特性
2.1 超高性能,高扩展性,高可靠性,高兼容性,超低成本
2.2 特点:
极致可靠:数据0丢失,故障闪恢复 ,支持跨AZ 高可用。采取计算存储分离架构,将数据持久化放入新一代存储中
多维扩展:计算节点双向扩展,横向扩展:支持1写15读横向扩展,纵向扩展:在线
弹性扩容60cpu/256g内存,按需计费,添加计算节点,无论多大数据量,只需5分钟左右。
海量存储:128TB,无需分库分表,超低应用改造,业务急速上云
创新自研:分布式数据库架构,基于华为最新一代 DFV 存储计算存储分
离,保证扩展性价比;数据库逻辑下推存储,最小网络负载,极致性能
卓越性能:原生MySQL的7倍,100%兼容MySQL,业界领先
尖端硬件:基于 V5 CPU+Optane DC SSD+RDMA 网络行业领先硬件组合,数据处理
既稳又快。
存储3副本容错,单点故障0中断
2.3 华为Cloud Native数据库设计
2.3.1解耦:
2.3.2近数据计算下推
2.3.3云存储
2.3.4SSD
2.3.5 性能瓶颈从计算存储,转向网络
2.4 备份恢复更快
强大的数据快照处理能力
任意时间点快速回滚
并行高速备份、恢复
快速实例恢复
2.5.兼容性
语法兼容
工具兼容
连接器兼容
开发生态兼容
3. GaussDB(for MySQL)分布式体系结构
3.1计算存储解耦:sql node,storage node
3.2存储抽象层(SAL):slice store,plog,
3.3数据库读写:redolog,slicelog,log service
4. GaussDB OLTP云数据库配套工具
4.1 数据管理服务功能DAS
DAS标准版
DAS云DBA
DAS企业版
4.2 数据复制服务DRS服务:用于数据库实时迁移和数据库实时同步的云服务
实时迁移:全部数据库对象:复制到目标库
数据订阅:
实时灾备:
4.3 数据库和应用迁移 UGO:异构数据库对象迁
移和应用迁移的专业化工具


DFV 是如何分片的,自动分片的,分了多少片128T?
并行处理能力,提高速度,支持多少线程

第二章Gaussdb 语句,函数,
1.进阶函数

常用函数

正则表达式

流控制函数

JSON函数

窗口函数
2. 存储对象Stored Routine
https://www.ictxuetang.com/bict/course/detail?courseId=999719616178036736


第三章数据库日常操作
1. 云服务基础知识
2. 数据库实例管理
3. 数据库连接管理
4. 数据库用户管理
5. 数据库备份恢复管理
6. 数据库对象管理
7. 数据库日常监控


第五章 数据库性能调优
1.数据库性能瓶颈
2. 数据库存储引擎
3. 数据库对象优化
4. SQL调优与执行计划

 

 

0.ICT
https://www.ictxuetang.com/bict/course/detail?courseId=999719616178036736

1.华为GaussDB 认证流程
https://e.huawei.com/cn/talent/#/cert/product-details?certifiedProductId=379&authenticationLevel=CTYPE_CARE_HCIP&technicalField=PSC&version=1.5

2.考试大纲
chrome-extension://ibllepbpahcoppkjjllbabhnigcbffpi/https://apigw-04.huawei.com/api/talentcommon/servlet/ignoreDownload?X-HW-ID=com.huawei.prm.talent&env=&dlType=Attachment&attachmentType=AttachmentTalent&attachmentMask=AJWrlAr0H8v9L+QKVTfzLg==&verify=oYch7XQoPtS6NbtqFhJ9zQ89/6r+f8Ohcm24/crpWN0=&x-appId=com.huawei.prm.talent&x-subAppId=talent_ubms_msa

3.模拟考试
https://e.huawei.com/cn/talent/#/cert/product-details?certifiedProductId=379&authenticationLevel=CTYPE_CARE_HCIP&technicalField=PSC&version=1.5

 

1条sql 拖垮整个数据库: in 为'' 会进行全表扫描,让cpu瞬间从0% 到100%

SELECT `Sku` AS `Sku`

FROM `Product`
WHERE `Id` = 1
AND `ParentId` IN ('', '')
 

SELECT `Sku` AS `Sku`
FROM `Product`
WHERE 
`ParentId` IN ('', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '')

 

创建索引时指定长度:

CREATE INDEX index_name ON table_name (column_name(length), clolumn_name(length)…);

ALTER TABLE `pp_plan_allegro` ADD INDEX `idx_StrategyId_MarketId_FailureReason` (`StrategyId`, `MarketId`, `FailureReason`)

 

-----------------------

GaussDB
是华为自研的分布式数据库,100%兼容mysql8.0
基于华为DFV存储,采用计算和存储分离架构
最大128TB存储,无需分库分表,数据0丢失
SQL NODE:write,read
DFV:dfv server,slice
Storage Node:redo,pages
1主15读

Region,AZ,OBS,EIP,VPC,安全组

DAS,
CTS审计
用户角色权限
备份恢复
性能,会话,慢sql,锁事务,日报
DBSS

1. explain | desc sql

2.show session statu like 'Com_%';
show session statu like 'Innodb_%';
show session当前连接/global数据库启动至今 status
Threads_connected 当前建立连接的线程数
Threads_running 未休眠的线程数
queries 服务器执行的语句次数
slow_queries 慢sql数量

com_rollback 执行回滚语句的次数
com_commit 执行提交语句的次数
com_select 执行查询语句的次数
com_insert 执行insert语句的次数
com_update 执行update语句的次数
com_delete 执行delete语句的次数
com_insert_select 执行插入查询语句的次数

innodb_rows_read 从innodb的表中读取的行数
innodb_rows_inserted 从innodb的表中inserted的行数
innodb_rows_updated
innodb_rows_deleted
innodb_rows_lock_time_avg
innodb_rows_lock_waits
innodb_rows_lock_current_waits

innodb_buffer_pool_read_requests逻辑请求的数据
created_tmp_files创建临时表的数量
byted_received
byted_sent
updime:运行时间秒

3. show processlist 查询会话相关信息:IP,host,user,db

innodb_buffer_pool_size 内存参数20/60GB内存,提高读的性能
innodb_log_buffer_size:log buffer的大小,提高写log的io性能
innodb_flush_log_at_trx_commit:log从buffer到磁盘的刷新频率

4.Hints:force index(index_name) 指定索引

max_connections 支持最大的客户端连接数据
connection_timeout

5.快的查询原因:
select count(*) from t
将count()计算下推到slice store,这样只需从slice store读取count值即可,
不需要传输所有的数据页,大量减少了网络开销,尤其是在表数据量比较大的情况下
提高查询性能

posted @ 2022-07-25 18:16  大树2  阅读(418)  评论(0编辑  收藏  举报