加载中
【数据库内核分析系列】:数据库索引的创建过程

文章目录 普通表索引 DefineInde Index_create函数 index_build 分区表索引 数据库索引可以提高数据的访问速度,openGauss支持唯一索引、多字段索引、部分索引和表达式索引。 行存表(ASTOR...

【数据库内核分析系列】:数据库表的创建过程

在数据库中,除了DML之外的所有查询都通过ProcessUtility模块来执行,包括了各类DDL语句、事务相关语句、游标相关语句等。上层调用函数为exec_simple_query函数,其中PortalStart函数和Porta...

遇到慢SQL该怎么办?(下)

在数据库的日常使用中,难免会遇到慢SQL,遇到慢SQL本身并不可怕,困难之处在于如何识别慢SQL并对其优化,使它不至于拖慢整个系统的性能,避免危害到日常业务的正常进行。 上期我们讲了索引原...

遇到慢SQL该怎么办?(上)

目录 索引原因导致的慢SQL 缺乏有效索引 索引失效 索引冗余 系统配置原因导致的慢SQL 资源竞争导致的慢SQL 在数据库的日常使用中,难免会遇到慢SQL,遇到慢SQL本身并不可怕,困难之处在于如何...

openGauss内核分析-统计信息与行数估计

目录 统计信息 行数估计 SQL引擎执行查询主要经历了词法语法解析、查询重写、查询规划和计划执行等步骤。其中,在查询规划过程中,为了生成可执行的最优计划,首先要生成路径,而由于路径存在...

openGauss数据库源码解析系列文章—— 密态等值查询技术详解(下)

上期我们介绍了密态等值查询技术及如何创建客户端密钥CMK,本期继续讲解如何创建列加密密钥CEK和创建加密表。 目录 创建列加密密钥CEK 创建加密表 客户端主密钥创建语法本质上是将CMK的元信息...

openGauss数据库源码解析系列文章—— 密态等值查询技术详解(上)

风吹麦浪,当收割机又一次奔跑在广阔的原野上,高考结束了。6月,既是高考季,又是毕业季。有一群人变成了大学生,而又有一群人要初入职场。职场人来分享一点个人经历。作为一名IT人,周围的...

openGauss内核分析之查询重写

目录 查询重写介绍 示例:外连接消除Outer2Inner 查询重写介绍 SQL语言是丰富多样的,非常的灵活,不同的开发人员依据经验的不同,手写的SQL语句也是各式各样,另外还可以通过工具自动生成。...

聊一聊数据库的行存与列存

目录 存储方式比较 优缺点比较 行存与列存实验 选择建议 注意事项 好多人最开始学习数据库的时候,是关系数据库,数据以表格形式存储,一行表示一条记录。其实这种就是典型的行存储(Row-bas...

从内核代码了解SQL如何解析

目录 词法分析Lexical Analysis 语法分析Syntax Analysis 语义分析Semantic Analysis 在传统数据库中SQL引擎一般指对用户输入的SQL语句进行解析、优化的软件模块。 SQL的解析过程主要分为: ...

openGauss数据库ODBC环境连接配置(Windows)

目录 实验环境 操作步骤 1.下载客户端并进行安装 2.打开驱动管理器 3.配置数据源 4. 验证并保存设置 Windows操作系统自带ODBC数据源管理器,无需用户手动安装管理器便可直接进行配置。 实验环...

openGauss简单查询SQL的执行流程解析

目录 简单查询的执行 gdb调试 上一期酷哥分析了openGauss数据库的启动过程,包括主线程,辅助线程及业务处理线程的启动过程,这一期主要分析简单查询语句在业务处理线程Postgres上的执行流程...

码农必备SQL调优(下)

目录 1. Plan Hint调优概述 2. Join顺序的Hint 3. Join方式的Hint 4. 行数的Hint 5. Scan方式的Hint 6. 子链接块名的hint 7. Hint的错误、冲突及告警 8. 优化器GUC参数的Hint 9. Custom Plan...

openGauss 多线程架构启动过程详解

目录 openGauss为什么要使用多线程架构 openGauss主要线程有哪些 openGauss启动过程 gs_ctl启动数据库 PostmasterMain函数 ServerLoop函数 PostgresMain函数 思考如何新增一个辅助线程 open...

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部