一起学习华为自研数据库gaussdb(dws)

2022/9/8 2:24:27

本文主要是介绍一起学习华为自研数据库gaussdb(dws),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一,什么是GaussDB?这次高斯不是数学家

GaussDB是华为公司数据库产品品牌名。华为公司从开始自研数据库至今已经有近20年历史,其中经历了早期发展、GaussDB的诞生和发展、数据库产业化三个阶段。本文简明介绍华为公司自研数据库的历程,并给出一些GaussDB的里程碑时间点。GaussDB的发展历史是中国数据库发展历程的典型案例。GaussDB以云服务形式提供商业版本,并已在2020年中期推出开源数据库产品openGauss(社区网址为https://opengauss.org )。
在这里插入图片描述

二,搜索路径

show search_path; 查看模式搜索路径,无论如何搜索路径前两个一定是pg_temp和pg_catalog
set search_path to my_schema,public; 将my_schema,public两个模式加入搜索路径

三,模式

select current_schema; 查看数据库当前模式
set current_schema=my_schema; 设置当前数据库模式。
\dn 查看所有模式及其所有者
create schema my_schema authorization dlpuser; 创建schema并指定owner
用户只能访问属于自己schema中的数据库对象,若要访问其他人的schema中数据库对象则必须具有该schema的usage权限。

四,关键设计

在这里插入图片描述
GTM 只维护一个CSN++ ,快照(snapshot)只包含CSN。
DN(Data Node,数据节点)本地维护事务ID(唯一标识符),维护ID 到CSN的映射(CSN_LOG)。
DN本地垃圾回收的过程中回填CSN。
单分片读事务使用本地快照:
① 获取本地最新的CSN 和准备阶段事务号;
② 如果CSN 状态为“提交中”则进行等待;
③ 如果row.CSN< localsnapshot.csn || xid in prepared_xid list可
见,否则不可见。

五,GaussDB 200详细解释

多:超大集群:Shared-Nothing架构+独创的大规模集群通讯技术,最大支持1024节点,支持在线扩容。
快: 并行计算架构:充分利用集群中所有资源,提供极致分析性能,且随着集群规模扩展性能线性增长。 行列混存,极速查询分析:行列混存+向量化执行, 并行Bulk Load,数据快速入库。
好: 全组件HA:无单节点故障,支持跨DC容灾。 租户隔离:租户资源隔离,适合运营商多部门多业务场景。
省: 开放架构:X86、ARM服务器部署,降低TCO。 标准SQL, 平滑应用迁移: 兼容标准ANSI SQL92、SQL2003应用改造小, 提供Oracle、Teradata语法迁移工具。

在这里插入图片描述

六,数据读写原理

  1. 解析器从客户端应用获取输入的数据;

  2. 解析器对数据进行解析后,将数据分发给各个处理单元进行处理;

  3. 各个处理单元把接受的记录存储到它自己的逻辑磁盘中;

  4. 每一个处理单元的逻辑磁盘可以是一个磁盘阵列中的多块物理磁盘。

在这里插入图片描述
【这次高斯不是数学家】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/345260



这篇关于一起学习华为自研数据库gaussdb(dws)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程