openGauss的MySQL兼容性主要通过Dolphin插件和内核实现。Dolphin插件的说明可参考Dolphin插件介绍。在openGauss内核中实现的MySQL兼容性特性见下表。表 1 在openGauss内核中实现的MySQL兼容性特性列表分类概述详细说明链接DDLCREATE DATA
5. 存取管理 openGauss中的ustore表访存接口如表4-24所示。由于openGauss中ustore表只有一种页面和元组结构,因此在上述接口中,直接实现了底层的页面和元组操作流程。 6. 空间管理和回收 不同于astore的空间管理和回收机制,ustore实现了自治式的空间管理机制。
数据库性能调优通常发生在用户对业务的执行效率不满意,期望通过调优加快业务执行的情况下。正如“性能因素”小节所述,数据库性能受影响因素多,从而性能调优是一项复杂的工程,有些时候无法系统性地说明和解释,而是依赖于DBA的经验判断。尽管如此,此处还是期望能尽量系统性的对性能调优方法加以说明,方便应用开发人
工具介绍openGauss兼容性评估工具,支持从多个场景下获取sql语句进行兼容性评估,并输出评估报告。支持从mysql端采集sql语句,支持从mysql端采集以下几种sql类型:对象定义语句(DDL)。慢sql语句。此类sql通过查询mysql.slow_log表获得,需要用户开启慢sql记录至该
性能日志主要关注外部资源的访问性能问题。性能日志指的是数据库系统在运行时检测物理资源的运行状态的日志,在对外部资源进行访问时的性能检测,包括磁盘、OBS等外部资源的访问检测信息。openGauss不支持OBS、Hadoop,所以只有磁盘访问的监控信息。磁盘监控的访问信息主要在磁盘文件IO读写的时候进
4.2.5 行存储索引机制 本节以B-Tree索引为例,介绍openGauss中行存储(格式)表的索引机制。索引本质上是对数据的一种物理有序聚簇。有序聚簇参考的排序字段被称为索引键。为了节省存储空间,一般索引表中只存储有序聚簇的索引键键值以及对应元组在主表中的物理位置。在查询指定的索引键键值元组时
工具部署架构图当前openGauss支持对MySQL迁移服务,具体包括:MySQL一键式迁移全量迁移增量迁移反向迁移数据校验
获取openGauss节点的CPU、内存、I/O和网络资源使用情况,确认这些资源是否已被充分利用,是否存在瓶颈点。CPU通过top命令查看openGauss内节点CPU使用情况,分析是否存在由于CPU负载过高导致的性能瓶颈。内存通过top命令查看openGauss节点内存使用情况,分析是否存在由于内
通过top命令查看openGauss内节点CPU使用情况,分析是否存在由于CPU负载过高导致的性能瓶颈。 top命令经常用来监控linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况。参数解释:d:number代表秒数,表示top命令显示的页面更新一次的间隔。默认是5秒
功能介绍gs_rep_portal是一个用Java编写的,在linux系统上运行的,集成了全量迁移、增量迁移、反向迁移、数据校验的工具。gs_rep_portal支持以上工具的一键式安装上述工具,设定迁移任务,任务根据用户设定的执行计划顺序的调用相应工具完成每个迁移步骤,并能实时展示每个步骤的状态、
4.2.6 行存储缓存机制 行存储缓存加载和淘汰机制如图4-20所示。 行存储堆表和索引表页面的缓存和淘汰机制主要包含以下几个部分。 1. 共享缓冲区内存页面数组下标哈希表 共享缓冲区内存页面数组下标哈希表用于将远大于内存容量的物理页面与内存中有限个数的内存页面建立映射关系。该映射关系通过一个分
功能介绍全量迁移gs_mysync是一个用Python3编写的将MySQL迁移至openGauss的复制工具,支持初始全量数据的复制功能。gs_mysync通过一次初始化配置,使用只读模式,将MySQL的数据全量拉取到openGauss。支持在同一快照下,表间数据并行迁移。全量迁移支持的功能:支持表
通过top命令查看openGauss节点内存使用情况,分析是否存在由于内存占用率过高导致的性能瓶颈。查看内存状况查询服务器内存的使用情况主要通过以下方式:执行top命令,查看内存占用情况。执行该命令后,按“Shift+M”键,可按照内存大小排序。top - 11:38:26 up 2 days, 1
4.2.7 cstore 列存储格式是OLAP类数据库系统最常用的数据格式,适合复杂查询、范围统计类查询的在线分析型处理系统。本节主要介绍openGauss数据库内核中cstore列存储格式的实现方式。 1. cstore整体框架 cstore列存储格式整体框架如图4-21所示。其主要模块代码分布
功能介绍增量迁移是指将mysql数据迁移期间(包括全量和增量迁移)产生的增量数据迁移至openGauss端。原理简介debezium mysql connector的source端,监控mysql数据库的binlog日志,并将数据(DDL和DML操作)以AVRO格式写入到kafka;debezium
使用iostat命令查看I/O情况。此命令主要关注单个硬盘的I/O使用率和每秒读取、写入的数量。iostat -xm 1 //1为间隔时间 Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgq
4. cstore访存接口和索引机制 cstore访存接口如表4-30所示,主要包括扫描、插入、删除和查询操作。 cstore表查询执行流程,可以参考图4-26中所示。其中,灰色部分实际上是在初始化cstore扫描阶段执行的,根据每个字段的具体类型,绑定不同的CU扫描和解析函数,主要有FillVe
5. cstore缓存机制 考虑到cstore列存储格式主要面向只读查询居多的OLAP类业务,因此openGauss提供只读的共享CU缓冲区机制。 openGauss中CU只读共享缓冲区的结构如图4-30所示。和行存储页面粒度的共享缓冲区类似,最上层为共享哈希表,哈希表键值为CU的slot类型、re
使用root用户身份登录服务器,执行如下命令查看服务器网络连接。SIA1000056771:~ # ifconfig eth0 Link encap:Ethernet HWaddr 28:6E:D4:86:7D:D5 inet addr:10.180.123.16
功能介绍反向迁移是指将openGauss端产生的增量数据迁移至mysql端。原理简介debezium opengauss connector的source端,监控openGauss的xlog日志,并将数据的DML操作以AVRO格式写入到kafka;debezium opengauss connect