Vast+产品展厅 | Vastbase G100数据库是什么架构?(1)

news/2024/10/18 18:23:26/

Vastbase G100是海量数据融合了多年对各行业应用场景的深入理解,基于openGauss内核开发的企业级关系型数据库

了解Vastbase G100的架构,可以帮助您确保数据库系统的高效、可靠和安全运行。

“Vast+产品展厅”将分两期,为您详细讲解Vastbase G100架构。本期,带您了解其部署架构物理架构


1.Vastbase G100的部署架构

作为集中式数据库系统,Vastbase G100业务数据存储在单个物理节点上,数据访问任务被推送到服务节点执行,通过服务器的高并发,实现对数据处理的快速响应。

同时,通过日志复制可以把数据复制到备机,提供数据的高可靠扩展,示意图如下:

业务应用(APP)利用驱动(DRV)来连接Vastbase G100主库,G100可以有0或多个副本,主备之间通过同步复制或异步复制来复制数据。

1.1异步复制

在异步复制中,主数据库(Master)在执行完客户端提交的事务后,会立即将结果返回给客户端,而不会等待从数据库(Slave)是否已经接收并处理这些变更。

这种方式不需要等待网络通信等,对主数据库的性能影响较小。但是异步复制有备数据丢失风险。因此适用于网络延迟较高或者对实时数据一致性要求不高的场景。

1.2同步复制

同步复制要求主数据库在执行完事务后,必须等待从数据库完成接收并处理这些事务变更后,才会向客户端确认事务完成。

这种方式可有效的保障数据一致性,因为在主数据库确认事务完成之前,从数据库已经更新了数据。同步复制可能会对主数据库的性能产生较大影响,因为它需要等待所有从数据库的操作完成,这可能会增加事务的响应时间。因此同步复制适用于对数据一致性要求较高的场景,尤其是在低延迟的网络环境中。

1.3单机部署架构

当Vastbase G100没有副本时,称为单机部署架构,这是一种非常特殊的部署形态,对于可靠性、可用性均无任何保证。由于只有一个数据副本,一旦发生数据损坏、丢失,只能通过物理备份恢复数据。

这种部署形态,一般用于数据库体验用户,以及测试环境做语法功能调测等场景,一般不用于商业现网运行。

2.Vastbase G100的逻辑架构

单机的Vastbase G100数据库节点的逻辑架构如图所示:

数据库(Database)

数据库对象的集合,常见的数据库对象包括表(Table)、索引(Index)、视图(View)、函数(Function)等。

可以看出,Vastbase G100中各个数据库之间是相互隔离的,它们各自管理者自己的对象

表空间(Tablespace)

是一个存储空间,里面存储的是它所包含的数据库的各种物理文件。每个表空间可以对应多个数据库,同时每个数据库的对象又可以分布在不同的表空间上。

表(Table)

数据库中的一种对象,每张表只能属于一个数据库,也只能对应到一个表空间,每张表对应的数据文件必须在同一个Tablespace中(不考虑分区表)。通常每张(行存)表只对应一个数据文件(Datafile Segment),但是如果某张表的数据大于1GB,则会分为多个数据文件存储。

数据块(Block)

数据库管理的基本单位,默认大小为8KB。

在Vastbase G100数据库内部,所有数据库对象都通过相应的对象标识符(Obeject Identifier,OID)进行管理,这些标识符是无符号的4字节整型。

数据库对象与相应OID之间的关系存储在对应的系统目录中,依具体的对象类型而异。

例如,堆表对象的OID存储在pg_class系统表中,OID列是一个隐藏属性,默认不会在查询结果中显示,需要时必须显示指定oid列来查询。

例如查询pg_class表本身的对象标识符如下:

elect relname, oid from pg_class where relname = 'pg_class';oid  |  relname-----+-----------1259 |  pg_class

一个数据库的逻辑架构是实现数据库管理的基石,Vastbase G100的一个数据库节点又称为一个数据库集簇,集簇中包含表空间、数据库等概念,这些是Vastbase G100数据库管理系统的核心组成部分,它们为数据的组织、存储和管理提供了灵活性和高效性。通过合理规划数据库集簇,可以提高数据库的整体性能和存储效率


通过以上介绍,我们为您详细讲解了Vastbase G100的部署架构和逻辑架构。

在部署架构中,Vastbase G100可部署为单机、主备以及一主多备等形态,通过部署多副本可以提供抵御实例级故障的能力,从而实现了数据库高可用

在逻辑架构中,Vastbase G100在一个数据库集簇中包含了表空间以及数据库等概念,可以更加方便地来管理数据库

接下来,我们将为您介绍Vastbase G100的物理架构和系统架构,敬请锁定《Vast+产品展厅》。


http://www.ppmy.cn/news/1425350.html

相关文章

【leetcode面试经典150题】61. 反转链表 II(C++)

【leetcode面试经典150题】专栏系列将为准备暑期实习生以及秋招的同学们提高在面试时的经典面试算法题的思路和想法。本专栏将以一题多解和精简算法思路为主,题解使用C语言。(若有使用其他语言的同学也可了解题解思路,本质上语法内容一致&…

20240418金融读报:银行参考汇丰全球化布局银行全球化布局现有路径再读金融助力新型工业化

1、银行全球化布局参考汇丰中国市场开拓思路(时光机效应):(1)找对外开放的国家并利用我国现搭建的网络,比如一带一路沿线(2)找经济向好的国家(3)投资倾向于全…

js预编译原理

预编译(Hoisting)是指在代码执行之前,JavaScript 引擎会将变量和函数的声明提升到当前作用域的顶部。 这意味着在代码中,变量和函数的声明可能在实际代码执行之前 已经被处理了。(提升优先级:函数>变量) 变量提升…

实时数据同步之Maxwell和Canal

文章目录 一、概述1、实时同步工具概述1.1 Maxwell 概述1.2 Canal概述 2、数据同步工作原理2.1 MySQL 主从复制过程2.2 两种工具工作原理 3、MySQL 的 binlog详解3.1 什么是 binlog3.2 binlog 的开启3.3 binlog 的分类设置 4、Maxwell和Canal对比5、环境安装 二、Maxwell 使用1…

MinIO + Prometheus + Grafana docker部署

文章目录 说明MinIO简介MinIO 容器化部署Prometheus服务地址配置方法一:先部署后修改方法二:部署时修改compose文件(未验证) MinIO Access Key配置Prometheus 容器化部署MinIO 生成抓取配置修改Prometheus配置文件Grafana 容器化部…

react经验12:等待状态更新

应用场景: 等待react组件内的state发生变更后进行后续操作。 已知问题 通常state的变化会引起dom的刷新,更新state一般使用setState,但这是个异步操作。 如果此时需要立即操作dom,得到的目标dom是刷新之前的样子。 应对方法 方法1:使用u…

lua的字符串和Table类型实现

字符串 实现在lstring.c中。 字符串类型TString定义如下: typedef union TString {L_Umaxalign dummy; /* ensures maximum alignment for strings */struct {CommonHeader;lu_byte reserved;unsigned int hash;size_t len;} tsv; } TString;字符串内容紧随其后&a…

手机三要素验证不一致的原因有哪些

在当前数字化时代,手机三要素验证已经成为众多业务场景中的关键环节,它是指通过专门的接口技术手段,核实用户提供的姓名、身份证号码及手机号码这三项关键信息的一致性,以确认用户身份的真实性。然而,在实际操作中&…