00:00
我们现在的时间是晚上的九点半,那么咱们就开始今天晚上的学习啊,嗯,今天晚上呢,咱们来学习一下这个post c, 也就是我们的PG,那么咱们希望通过今天晚上的学习,能够让大家对我们的PG能够有一个进一步了解,为大家后续深入学习咱们的国产数据库奠定一个基础,因为呢,随着信创的不断的发展,那么国产数据库呢也得到了广泛的应用,那么在国产数据库当中很多就是基于我们的PG开发出来的,因此呢,大家如果掌握PG以后,对于大家后续深入学习国产数据库将会有非常大的帮助,那么大家之前哈如果听过赵老师的课程,那么应该都知道赵老师呢,在上课的过程当中会给大家记录这样的一个课堂笔记,因此呢,今天。
01:00
晚上咱们也按照同样的这种方式来给大家记录一个笔记,重点给大家介绍以下两个方面的问题,首先咱们需要对关对数据库,尤其是对关系型数据库呢,要有一个基本了解,因为呢,我们的什么,因为我们的postcom。包括我们的什么orcom,还有我们my com, 以及很多很多的什么国产数据库,那这些呢,总体上来说呢,都是属于传统的这个关系型数据库,因此呢,咱们需要对它的一些基本知识要有一个基本的了解,了解到基本知识以后,重点讨论一下PG,也就是我们的postico,它的体系架构,那么体系架构是我们在学习的时候最重要的一个部分,因为呢,只有把体系架构掌握以后,后面呢,咱们去干嘛呢?后面咱们去这个安装和部署,包括呢,管理和维护,以及呢备份恢复,还有我们的什么诊断和优化等等等等,那么所有我们在数据库里面执行的所有的操作,它都是以这个什么呢?体系架构为基础那。
02:20
那这句话呢,我再重复一下,大家以后在学习数据库的时候,不管是学习哪种数据库,有如学习MYSQL也好,学习Oracle也好,学习P进包括各种各样的国产数据库的时候,最重要的一个部分就是需要掌握它的体系架构,那么只有把体系架构掌握以后呢,后面怎么去安装、部署、管理和维护,备份、恢复、诊断、优化,包括搭建集群,那么它都是以这个体系架构为基础,那通过咱们稍后的学习,大家会了解到整个PG它的体系架构呢,主要包含了三个组成部分,我先把这三个部分的名字给大家记在咱们的课堂笔记上,首先第一个组成部分是它的什么存储结构,然后呢,第二个部分是它的什么?它的这个进程啊,进程结,进程结构,那么P。
03:20
D呢,跟Oracle是类似的,都是基于我们的进程来执行我们的CQL语句,然后呢,第三个组成部分,那就是我们的什么内层结构好,这三个结构共同组成的PG,它的体系架构,而在这里面呢,当然最核心。也是最重要的呢,就是它的存储结构,那么数据库呢,通过它的存储结构的存储和读写数据,并且呢,存储结构具体呢,又分为两种不同的类型,首先第一种是我们的什么逻辑存储结构,然后呢,第二种结构是我们的什么物理的存储结构,稍后呢,咱们详细来给大家介绍逻辑存储结构里面包含哪一些,物理存储结构里面又包含哪一些?但是呢,大家需要知道,只要是数据库都是通过逻辑存储结构来管理物理存储结构,这句话呢很重要,我用红色字母给大家记在咱们的课堂笔记上啊,那只要是什么数据库?
04:30
不管你是关系型数据库还是low西口数据库,它都是什么?通过我们的逻辑存储结构来管理什么呢?物理存储结构,稍后呢,咱们来给大家详细介绍这里面呢涉及到的相关的内容啊,因此介绍到这个地方的时候,好咱们呢,就按照这样的一个顺序来给大家介绍今天晚上的内容,首先咱们看一下一些基础知识,那首先第一个问题呢,我们就需要去简单的去了解一下国产数据库当中哪些是基于我们的posticq的,学一下国产数据库中啊基于什么PG的有哪些呢?好问一下各位直播间同学,如果说大家知道哪些国产数据库是基于PT的,你能够把这些数据库的名字发送到我们的公屏之上吗?如果说大家并不知道呢,就请在。
05:31
咱们的公屏之上,请给赵老师呢,回复一个0,或者给赵老师哈点一个赞,好,咱们接着往下来给大家进行相关的介绍,这些知识都是我们以后呀,你要从从事数据库,从事DB的话,都需要重点掌握的内容,那么国产数据库当中哪些是基于我们的postic库呢?比如说有我们呢,我们的金仓数据库,也就是我们的king配,包括了华为的什么高升,比如说我们open高升等等等等,那么这些数据库都是基于我们的poic的,那么它的使用方法基本上都是完全一样的,因此呢,强调一下,如果说大家掌握了postic以后,那么对学习咱们的国产数据库将会有非常大的帮助,那总体上来说,这些数据库都是属于传统的关系型数据库,因此呢。
06:31
我们的基础部分重点就需要讨论一下,到底什么是啊,到底什么是我们的关系型数据库呢?这些基本概念看似非常的基础,但是呢,赵老师认为越是基础的概念越是重要,如果大家认同赵老师的观点,那么就请在公屏之上啊,请给赵老师呢回复一个1,或者呢给赵老师呢点一个赞啊好,咱们接着往下来给大家进行相关的介绍,解释一下,解释一下什么叫做关系型数据库呢?那最基本的概念啊,它首先是基于我们什么关系模型,那么咱们基于关系模型我们所提出来的一种数据库就叫做关系型数据库,那接着再往下面去讨论什么又叫做。
07:25
关系模型呢?关系模型的本质是我们使用一张什么二维表的什么行和列的方式来存储数据的模型,就叫关系模型,换句话说,这上面列出来的什么这些数据库当中,最终存储数据的结构都是这种二维仪表的行和列,这个呢是关系型数据库它最基本的一个定义,那么我们在这个关系型的数据库当中,不管是哪一种哈,你去设计数据库的表结构的时候,那么咱们一般呢,需要什么遵循我们的范式,那什么叫遵循范式呢?也就是说当你拿到一个需求以后,首先根据咱们的需求设计出。
08:15
我们的什么一二模型,也就是实体关系模型,那有了一二模型以后,再抽象城市关系模型,然后呢,再根据范式,比如说我们的第一范,我们的第二范式,我们的第三范式,最终设计出关系型数据库的表结构,这个呢是咱们通常的一个做法,那么这个地方很自然而然的就需要问大家一个问题,就是说我们在关系型的数据库当中,为什么要遵循范式呢?你遵循范式以后它有什么优点,它又有什么缺点,那么大家能不能够告诉一下赵老师,首先各位直播间同学能不能够说一下什么fans的优点是什么,如果说大家知道呢,就请把它的优点。
09:09
发送到咱们的公屏之上,如果说大家不了解呢,就请在公屏之上回复个0啊,或者呢给老师点个赞,咱们接着往下来给大家进行介绍啊好范式的什么呢?主要的优点是什么呢?它能够去减少数据冗余,那什么叫减少数据冗余呢?数据不会多存,因为呢,因为呢,我们可以把数据存储在多张表这个当中,表与表之间通过表的外界那么进行关联,这种遵循范式的思想设计以后,呃,它能够减少数据冗余,数据不会多存,但是呢,正因为它有这样的一个优点,同时也就带来了一个缺点,那么它的缺点是什么呢?它会说它会影响或者说降低查询的效率,为什么呢?因为刚刚提到你把数据。
10:07
存储在了多张表的当中,表与表之间通过表的外界那么进行关联,因此呢,我们在进行查询的时候,就会执行一个什么呢?多表查询,多表连接,而多表查询多表连接首先它会干嘛呢?产生我们的笛卡尔级,由于在笛卡尔级当中包含一些不正确的数据,因此呢,我们需要使用连接条件,避免使用笛卡尔全集这样的一个过程,它是会降低查询性能的,因此呢,整个咱们讲啊,怎么讲整个关系型数据库遵循范式的什么,最基本的一个什么,出发点是什么,它是通过牺牲我们查询的什么效率来干嘛呢?来节约存储的空,来节约存储的空间,那么这个呢,是。
11:06
整个的这个,嗯,关系系数据库它最基本的一个什么出发点,那因为在早些迭代的这个时候呢,存储的介质是非常的昂贵,那么咱们需要节约一些存储的空间,那么再节约咱们的成本,对,那么关于我们的这个关系型数据库呢,了解到了他基本出发点以后呢,还需要去了解个知识,就是说他在读写数据的时候,它是以什么为单位呢?以我们的嘛,这个行式存储方式来读写数据,那什么叫做行式存储呢?就是说在你各种各样的关系型数据库当中,以行为单位,我读写完第一行以后,我再读写第二行,我再读写第三行的,如果说你没有特殊设置的话,那么他在进行查询的时候,它将会执行一个顺序扫描,通过C口L的查询计划,执行计划了,能够看出来。
12:07
它通过执行顺序扫描查询表中的数据,因此呢,我们在这个关系型数据库当中,为了去提高查询性能呢,我们可以通常去创建索引或者创建分区来去提高查询的性能。注意索引和分区是两个完全不同的概念,所以它是一个相,它是一个什么?它相当于是一本书的目录,而分区它是一个什么物理概念?那么当你在表上创建分区以后,它会按照分区条件把表中的数据分割进行存储,那么这种行式存储的啊,这个关系型数据库刚刚讨论一下它的里面的一些思想,因为那么它主要适合什么样的应用场景呢?那么行式存储的关系型数据库主要适合我们的OLTP的什么用场景?那么什么叫OLTP呢?首先了解一下它的全称,全称是我们的。
13:07
On online核心单词是中间的那个T,它叫做什么穿aing p呢,是我们的嘛,这个processing好,如果呢,把这个翻译成是中文的话,它就是我们嘛,连襟事物处理,那么事物呢,是我们在关系型数据库当中最重要的一个特征,目前我们的locy com也支持简单的事物,但是呢,它不能够严格保证事物的acid的属性,因此呢,它还不能够取代咱们传统的关系型数据库。那么事物呢,它是由什么一种我们的DML语句组成,里面呢,只会包含我们的嘛,这个插入更新,还有我们的删除操作,换句话说,它并不包含查询语句,那关于事物的更加系统的知识,张老师呢,也会在后续的直播课里面单独的来给大家进行相关的介绍,那么因此呢。
14:07
介绍到这个地方的时候,那张老师呢,就把整个国产数据库当中哪些是基于PG的,以及到底什么是关系型数据库呢,都给大家做了一个非常详细的介绍,这些知识啊,重复一遍,看似呢非常的基础,但是呢,赵老师刚刚说过,越是基础的知识,越是基本的概念呢,越是重要啊,如果说这个部分大家哈都听明白了,这个部刚讲过的这个部分大家都听明白了呢,就请在咱们的公屏之上。请给张老师呢回复一个啊666好,咱们接着呢给大家讲下面的相关的知识,对,那么关于数据库的基本知识呢,再补充给大家讲一些相关内容的,那么刚刚说过你的什么,你的这个关系型数据库呢?它是按照行式存储的方式来读写数据么?既然有行式存储,当然就有我们了历史存储的,那么列式存储数据库有很多种啊,比如说你的h base, 或者说你的DOS等等,这些呢,都是属于历史存储数据库,按照列为单位来存储数据,当然相对的是我们的行式存储而言,那么历式存储数据库呢,它主要适合什么场景呢?主要适合我们的OLAAP的应用场景,那么什么业叫做OLAAP呢?把它的全称写一下的叫做我们的on online, 核心单词是中间的那个A,它叫做什么阿?
15:43
Tic p呢是我们processing啊,当然你把这个呢,翻译成是中文的话,它就叫做我们的吧,连接分析处理,那既然是分析处理的话,一般来讲哈,啊,这个不这个不绝对,一般来讲我们在o lap系统当中,一般只会执行查询操作的,写下我们在o lap当中一般哈只会执行查询操作,比如说当我们去构建我们的什么数据仓库的时候,那数据仓库呢,就是属于一个o lap系统的具体实现,当然目前构建数据仓库呢,主要有两种不同的方式,首先第一种方式补充,补充一点知识哈,补充点知识就是通过使用咱们的大数据的什么呢?主见,比如说你可以通过使用你的哈dopo。
16:43
至巴克弗林克等等,构建你的离线数仓,包括构建实时数仓,分别来处理离线数据,还有实时数据,那么这个呢,是构建数据仓库的第一种方式,而构建数据仓库的第二种方式呢,就是可以使用咱们的MPP数据库,比如咱们刚刚提到的什么dori,那么Doris呢,就是一个MPP数据库,当然这样的MPP数据库有很多,他们也适合构建咱们的数据仓库,对,因此呢,关于大数据的知识以及MP的知识呢,赵老师呢,当然也会在后续直播课里面单独给大家进行介绍,比如说我们在昨天晚上就给大家介绍一下大数据的计算引擎18课的什么知识啊,但是后续呢,也会陆续重复给大家相关的内容,诶好,既然咱们这个地方提到了我们的olat p, 还有我们的olap,那就不得不需要提提另外的。
17:43
一个名词叫做什么叫做我们的HTB?好问一下各位直播间同学,知不知道什么是h tab? 如果说大家知道h tab的什么呢?中文含义,你能够把它发送到咱们的公屏之上吗?如果说大家不了解呢?就请在咱们的公屏之上回复一个0,或者给赵老师呢点个赞哈,让赵老师呢能够知道,嗯。
18:12
大家都还能够跟得上啊,那目前很多的数据库都支持我们的h topb功能,那么到底什么叫h topb呢?它表示什么含义啊,需要知道它表示呢,混合我们的OLATP和我们的o lap, 换句话说,我在同一个系统当中,同一个数据库里面,既能够支持事物处理,也能够支持分析处理,那么这呢,就叫做咱们的HTB,目前很多数据库呢,都支持我们HTB的什么相关的功能,好介绍到这个地方的时候,整个今天晚上的什么呢?第一个部分有关数据库的一些基本知识。啊,就给大家介绍到这里啊,这些知识的重复一遍都是大家后续说你要去从事数据库啊,从事第一遍的工作呢,都需要掌握的这个内容,好问一下各位直播间同学,关于咱们的第一个部分的知识,大家是不是都听明白了哈,如果说这个部分大家都听明白了呢,就请在咱们的公屏之上,请给赵老师呢回复一个666,或者给赵老师呢点个赞。接下来呢,咱们进入到第二个小节的决心,重点讨论一下post c的吗?它的体系架构,那么体系架构呢,刚刚说过啊,是我们在学习任何一个技术组件的时候,不管是你学习数据库也好,还是学习大数据也好,最重要的一个部分,那那比如说数据库的体系架构掌握以后,你后面去安装和部署,管理维护,备份,恢复整断。
19:58
好,优化呢,它都是以这个体系架构为基础,那么整个PG它的体系架构呢,主要包含了三个部分,这地方给大家列举出来了,第一个部分存储结构,第二个部分呢,进层结构,第三个部分呢是内层结构,而这三个结构当中,当然最重要的呢就是存储结构,那存储结构又分为我们的逻辑存储结构和物理存储结构,那只要是数据库,不管是哪一种数据库啊,关系型数据库还是lo西口都是通过逻辑存储结构来去管理我们的物理存储结构。因此呢,我们接下来呢,就详细看一下这些结构当中具体包含哪些组成的部分,首先看一下逻辑存储结构当中包含的组成部分,先把整个PG里面有关逻存储结构的组成部分先给大家列在这。
20:58
咱们的课堂笔记上稍后呢,咱们一个一个来给大家进行相关的介绍,好哪些是属于逻辑存储结构呢?从大到小给大家列举出来,那最大的一个逻辑单位是我们的嘛,数据库的集群啊,对啊,数据库集群里面呢,包含有什么若干个数据库啊,数据库里面呢。
21:23
它又包含有什么,我们的表空间,表空间里面呢,又包含我们的什么,包含我们的这个段,那段里面呢,接着包含我们嘛,我们的处,那如果你的Oracle里面,或者说你在其他数据库里面,可能叫做咱们的区,区或者处啊,叫法不一样,但是本质当然是同一个东西,那处或者区里面呢,包含什么连续的数据块或者叫什么,或者叫数数据页啊,数据那都是一样的,对,那这个呢是什么?是整个数据库里面呢,最小的什么逻辑单位,稍后呢来给大家进行详细的介绍,当然我们在PG里面呢,逻辑存储结构里面还包含最后的一个组成部分,那就是我们的什么模式,模式呢,也可以叫做什么scheme,那到底什么叫scheme呢?稍后呢,来给大家进行相关的讲解。
22:24
那这些部分共同组成了什么呢?共同组成了我们PG存储结构当中的逻辑存储结构,那通过这些结构,那去管理我们的物理的存储结构,那什么又叫物理存储结构呢?首先给它下一个定义,物理存储结构它指的是什么呢?硬盘上的什么?硬盘上的各种我们的文件,那各种这种文件呢,是咱们的什么数据库的文件,那我们把硬盘上的文件叫做咱们的物理的存储结构,比如说这个地方它可能会有哪些文件呢?比如说也要里的什么数据文件,还有我们的嘛,日志文件,还我们的嘛,参数文件,对不对,这些各种各样的文件共同组成什么PG的什么物理的存储结构,好,现在呢,咱们就一个一个来给大家进行。
23:24
相关的介绍的这些知识,就是说你以后你要从事DBA的话,从事数据库的话,这工作都必须要重点掌握的内容,他们一个一个呢,从上往下。来给大家进行相关的介绍,首先咱们来讨论一下我们的逻辑存储结构当中它的组成部分,当然第一个呢,就是我们嘛,我们的数据库的集群,那什么叫数据库集群呢?它是最大的逻辑存储单元啊写一下它是最大的什么逻辑存储单元,它表示什么含义呢?它表示由单个数据库实例管理的所有数据库的集合,叫做数据库集群,把它定义记在咱们的课堂笔记上面,它表示呢?有什么表示有单个什么数据库实令管理的什么管理的所有数据库的集合,叫做我们的什么数据库的集群,那这个地方解释一下什么是数据库的实例,那你在数据库里面,不管是哪种数据库,都是通过数据库实例来去操作咱们的数据库。
24:36
不对,那么平常咱们所说的什么,平常咱们所说的这个启动数据库,停止数据库,那这个说法并不准确的,那准确的说法是启动数据库实例,或者说停止数据库实例,通过实例来操作咱们的数据库,而数据库的集群,它就是由什么呢?单个数据库使令起管理的什么呢?所有数据库的集合,那么你启动一个PG的数据库的集群,本质上就是启动了一个什么数据库实例,那从表现形式上去看,它就是一个什么,就是一个目录啊对,本质上就是是什么就是一个目录,那么这个目录呢,你能够通过用什么刚搭地的,使用什么刚搭地的参数,或者呢,使用一个环境变量叫P金data塔去指定,好这个呢,我来从。
25:37
会B,诶,数据库的集群本质上就是一个操作系统的目录,对,它是包含了什么?所有数据库的集合就是一个目录,那这个目录呢,也能够通过使用杠大D的什么呢?参数就表示也能够通过使用一个环境变量PG data, 他就表示,那么当你启动一个PG的数据库集群的时候,本质上就是启动了一个什么PG的数据库实例,通过他拿去操作他能管理的所有的什么数据库,对,还有了这些相关的知识以后,好,咱们能不能够给大家演示一个DEMO的这个事例呢?当然是可以的,好,咱们现在呢,切换到咱们的实验环境当中去,进到咱们的P,记得什么安装的目录项,对,那我通过执行一条命令启动我的数据库的集群,本质上就是启动数据库实例。
26:37
当你把P进安装好以后呢,在它的并目录下面有一个PG controltrl的一个管理命令,对,通过这样的一个管理脚本命令呢,你能够去启动数据库集群,包括停止数据库集群,以及呢查看数据库集群的状态,在通过刚搭地选项那指定数据库集群,它所对应的操作系统的目录,那就在当前目下呢,有一个data塔路径在,所以当前呢,我用什么?
27:09
我用红圈圈的这个地方,那么这个路径就是数据库集群,它所对应的操作系统目录,当然了,你使用环境变量PT data塔就表示呢也可以的,好,我要启动数据库的实令,本质上就是启动这个什么数据库的集群,然后呢,我再通过使用杠L选项指定什么我们的服务器日志是当前路径下面的什么log file, 对,那当你的数据库实例或者说数据库集群,它在运行过程当中出现问题的时候,他会把相关的什么错误信息写到咱们的这个什么log发的文件当中,因此呢,它对咱们诊断是非常有用的。对,后面写三个选项叫什么叫start的,通过选项start呢,来启动咱们的数据库的集群,或者说启动我们的数据库的实例,好启动成功以后,好,咱们重新去执行跳命令。
28:09
把上面的什么这个S大的选项改成我们的什么state,查看一下它的状态,当前状态是我们的什么running状态,那当你看到running状态以后,那就表示呢。我当前的什么呢?这个PG的数据库的实令,嗯,或者说这个集群呢,已经启动成功了,启动成功以后,通过使用PG提供的运行工具,并向那么PC com能够连接到数据库集群,或者说接到数据库实际上要进行相关的操作,那咱们查看一下你当前的这个数据库集群当中,或者说数据库实例里面,它一共管理的哪些数据库呢?你们执行的什么斜线命令的,通过斜线L命令,你就能看到你当前的数据库集群里面到底包含有哪些数据库的,好执行一下咱们的个操作,那通过输出的信息咱们可以看到呢,好,这个地方我当前的数据库就是里面一共包含有以下什么4个数据库啊,4行的分别是我们的POS柜数。
29:23
库,那么这个呢,是你客户端默认连接操作的什么数据库,那么这个SC呢,所我创作什么业务数据库,下面的什么TEMPLE0和temple音呢,是整个PG里面提供的什么呢?两个模板数据库,模板数据库呢,不用于咱们日日日常的业务操作,你需要通过使用咱们的cur database, 他已经创建自己的什么数据库,那么因此讲到这个地方呢,大家就看出来这个关系的,那么我们在PG里面。你的这个数据库的集群,或者说数据库的实例,它跟数据库是不是什么一对多的关系,那么通过一个集群,或者说通过一个实例能够去管理多个数据库,这一点呢,跟我们的什么MYS是一样的,你在MYCYQL里面也是通过一个MYCYQL的实例,你可以管理多个数据库,对你通过执行修database语句,是不是能看到当前实例里面到底有哪些数据库,那这一点呢,MY跟PG是完全一样的,但是呢,请大家注意一下,Oracle呢,跟他们正好是相反的,但如果你在Oracle里面,它数它的数据库的实力,跟数据库呢,正好是多对一关系,正好是相反的,换句话说,你能够通过使用多个orac库的数据库实例。
30:56
来去操作同一个Oracle数据库,那这一种Oracle的架构,它叫什么架构呢?它叫Oracle么rock架构,也就是什么real application, 那关于这个or code的相关的知识,赵老师呢,当然也会在后续的直播课里面。
31:16
单独的来给大家进行相关的介绍,好,回到咱们的课堂笔记上来。好一请问一下各位直播间同学们,关于咱们刚刚讲的第一个问题,到底什么是我们的数据库的这个集群,那么大家是不是都听明白了哈,如果说刚刚讲过的这个数据库集群大家都听明白了呢?就请在咱们的公屏之上,请给赵老师呢回复一个666,或者给赵老师呢点个赞。好再问一下各位同学,刚刚讲过的这个什么数据库的集群这个知识点大家是不是都听明白了,如果这地方大家都听明白了呢?就请在咱们的公平之上,请给赵老师呢回复一个666啊,或者呢给赵老师呢点一个赞啊,那么讲完了数据库集群以后,接着讨论一下第二个,第二个逻辑存储结构。
32:17
嗯,那就是我们的嘛,我们的数据库,对,那么数据库呢,属于咱们的数据库的集群,对不对,我们需要创建咱们自己呢数据库来执行我们的增删改造操作,那那到底什么是数据库呢?数据库从本质上去讲,它就是一个什么操作系统的目录,目录名称就是数据库的OID,那么这句话呢,也很重要。给大家记下来啊,数据库呢,本质上就是什么一个操作系统的什么目录,它也是一个目录,目录名字就是数据库的什么OID啊,对目录的什么,它的名称就是什么,就是该数据库的什么OID,好因此呢,这个地方就涉及到一个名词,到底什么叫OID,那什么是OID呢?在我们的PG里面,每一个对象,不管是数据库表都会有个什么OIDOID的全称它叫做什么,它叫做欧杰,什么ID就是我们的嘛,对象标识符,对它每一个数据库对象都会有一个什么对象标识符,我们可以通过查询我们的系统表的,比如说你要查数据库的OID,通过去查询我们的系表叫什么P进下滑线。
33:45
Database塔BA,那通过查询这一张系统表,我们就能知道这个数据库的对象标识符分别是多少,首先看一下这一张系统表里面包含有哪些相关的字段,好,回到咱们的命令行的工具上面,来来好斜限定,那可以查看表的结构,把你要查看表的名字写在咱们的这个后边对不对啊,批进下划线对他贝时的,它通过输出的短信息,好那们看到吗?这个里面呢,包含以下的字段,首先包含我们吗?OID对象标识符以及什么对数据库的名称,好咱们就把这两个字段查询出来,看一下你在当前的数据库集群里面。
34:34
包含有哪些数据库,它的对象标识符和数据库的名字分别是什么?好,我们执行一个简单的查询的语句,对好查询什么对象标识符,以及这个数据库的什么名称啊,名称放P进下划线对塔背诵,那通过输出的信息咱们可以看到呢,我在当前的这个数据库的集群当中,一共包含了以下4个数据库,那第一个点呢,是这个数据库的什么对象标识符,那如果说你创建一个数据库的话,本质上。
35:12
就是创建了一个什么操作系统的目录,而目录名字就是这个数据库的ID,好吧,演示个例子啊,对,好们通过执行我们的什么可item,他创建一个新的数据库,比如说就叫DEMO数据库,对,那在你创建好数据库以后,本质上就是创建好的一个操作系统目录,重新的去执行一下刚刚的查询语句,查询一下刚刚怎么创建出来的DEMO数据库,它的对项标识符是多少,对通过输出的信息咱们可以看到呢,你的这么你的这个DEMO的数据库,它的对象标识符是什么?16404,那么咱们能不能够在操作系统上找到这个什么对应的目录呢?当然是可以的,好,咱们打开一个新的一个什么命令行的一个窗口,好连接到咱们的。
36:12
职业用的什么虚拟机之上,在你在哪里可以找到这个数据库的目录呢?好,到咱们这方需要切换到我们的用户上面来啊,你所创建的数据库。肯定是在什么呢?数据库集群它的对应的路径上,是不是因此呢?首先咱们进入到什么数据库集群的目录,对,就是刚刚的什么这个data塔路径,刚刚解释过,对好在data塔录下面呢,会一个什么,会有一个贝审目录,对,那你所创建的数据库,那默认情况下都会创建在数据库集群目录下面的备审目录下面,对因此呢,怎么现在呢,进到我们的这个什么背诵录像,看一下刚刚怎么创建的那个什么我们的那个DEMO数据库,对下面呢,有一些子目录,对刚刚的那DEMO数据库对象标升符是多少呢?是我们的16404,那你能不能够找到这个路径呢?木呢,当然是可以的,你会发现呢,这地方会多一个路径,也就是我们嘛16404,很明显呢。
37:25
这个16404的路径就是怎么刚刚创建好的什么呢?这个DEMO数据库,因此呢,你在PC里面,当你创建一个新的数据库的时候,本质上就是在什么,就是在你的这个数据库集群的目录下面创建了一个什么子目录,子目录的名字就是这个数据库的对象标识符,好因此讲到这个地方的时候,问一下各位直播间同学,关于什么是我们的数据库在PG里面,大家是不是都听明白了哈,如果说这个部分大家都听明白了呢,还是跟刚刚一样,就请在咱们的公屏之上,请给啊。
38:15
那么请给赵老师呢回复一个一样,或者给赵老师呢点个赞啊,让赵老师呢能够知道大家都还能够跟得上赵老师的节奏,那这些知识都是非常的重要的的,比如说呢,我现在我想针对数据库进行一个备份,那么你针对数据库进行备份,本质上就是备份了什么呢?我们的这样的一个目录是不是这样子的啊,重复一遍,重复遍,当你把这些知识掌握以后,比如说我现在呢,我要去备份我的那个刚刚的那个DEMO数据库,你备份数据库的本质就是备份我们的什么这样的一个操作系统的目录,因此呢,这些知识很明显它跟你的什么管理啊,备份啊,诊断和优化都是密切相关的,因此,怎么讲体系架构是我们在学习的时候最重要的一个部分。
39:15
只有把体系架构掌握以后呢,你才能够更加深入的去学习后面的相关的知识,好,因此呢,那么接着呢,讲下面的相关的内容,讲我们的吧,表空间,那什么叫表空间呢?你所创建的表都是创建在表空间上,表空间它是对什么呢?对数据库的逻辑划分啊,上面这地方写第二一句话,对数据库呢,是对什么,是对数据库集群的逻辑划分,写一下啊写一下数据库呢,写掉一句话数据库啊,数据库是对什么?是对数据库集群的逻辑划分,而表空间呢,它是对数据库的逻辑划分,一层层的划分下来写一下表空间它是对什么数据库的什么逻辑划分,不用那你所在数据库里面。
40:15
创建的表都是创建在表空间上,对好表都是什么,都是创建在什么创建在我们的表空间上,但那当你初始画完一个PG以后,它默认存在两个表空间,它不能不能能不能够看到这两个表空间呢?好,我们切换到咱们的命令行的窗口当中,系统里面通过执行什么斜线我们的D1B命令呢,能够查看到表空间的信息,那么我们在初始的这个状态上面对会存在两个表空间,一个是我们的P筋default表空间,一个呢是我们的筋global表空间,那我们就需要知道这两个表空间它的功能和作用分别是什么啊,单独写个笔记本,首先第一个表空间是我们的什么?这个披筋下滑。
41:15
发现default的,它这个呢是创建表的默认表空间,就下它是什么创建表的默认表空间,也就是说当你使用这个c table创建一张表的时候,如果没指定这一张表创建在哪一个表空间上,默认将会创建在我们的PG default表空间上,你还有另外一个表空间是P筋globalbe,那这个P筋global是什么?是我们的系统表空间啊写一下那啊写一下下面表空间是我们嘛,是我们的披筋。PG什么PG_golo BOO好,这是什么?这个是我们的什么系统表空间,那所有的系统表都是创建在P金global表空间上,比如咱们刚刚用到的这张系统表,P金配好这张是一张什么系统表,这张系统表呢?它就是创建在我们的什么这个皮筋globalbe的什么系统的表空间上,那有了这些知识以后,到底什么是表空间,我们还是没有说清楚呀,对不对?表空间本质上也是操作系统的一个目录啊,写一下表空间的本身也是什么,也是操作系统的一个目录,本身也是什么操作系统的一个目录,好1既然它也是一个目录,我们能不能够创建一个新的表空间指向我们的操作系?
42:58
统的路径呢,当然可以的,好,我们来给大家演示一个示例啊,演示个示例呢,好,首先切换到咱们银行的窗口当去,那首先我可我可以呢,在任何的一个目录上呢,创建一个子目录,叫MYTBS,对好这个呢是当前创建的路径,比如说我想去创建一个表空间,我的表空间呢,就指向我的什么这样的一个路径,指向这个路径以后,你在该表空间上,你所创建的表都将会创建在这个路径上,对好,既然是如此的话,我们切换到命令行工具里面,通过使用。
43:43
通过使用。我们的这个create table space创建一个表空间,好切换过来要好create我们的什么table space表空间呢,它也是属于什么,嗯。
44:02
它也是属于这个数据库对象,因此呢,咱们也需要给它起个名字,叫什么MYTBS,那这MYTBS呢,就表空间名字,通过使用什么location关键字指定这个表空间,它对应到操作系统的哪一个目录上,那就是咱们刚刚创建的目录嘛,对还是什么呢?刚刚那个home下面的post gra的下面MYTBS,好通过使用这种方式,我就创建好了什么自体的表空间,好重新的再执行刚刚的斜线DB命啊查看表空间信息,通过输出的信息,我们就看到了你现的表空间多了一个,就是我们的嘛,MYTBS它对应到什么刚刚的这个什么操作系统空间上的,那表空间创间出来以后,我们能不能够在这个表空间上创建上。
45:02
点呢,如果不指定默认将会创建在我们的PG default表间上,当然你也可以手动指定它创建在哪一个表空间上,好,我们写一个语句,创建一个表,Click, 一个table,叫test,特什么in,那表结构呢,很简单,它里面呢,比如说包含有两个令,一个是ID号,它是个整数这样一个名字,它是个字符串VO char, 对,好,后面的写上一个,如果你不写了,不写了,不写的话,这个表呢,Word认就创建在PG default表间上,对,通过指定什么table space显示指定这张表创建在哪一个表空间上,就创建在我们刚刚的那个什么MYTBS上场,他通过使用这种方式,我就在自己的表控件上创建好了一张表,对现在呢,怎么。
46:02
切换到刚刚的操作系统什么这个目录上,通过执行催命令查看一下目录结构,目录结构对好,目录结构展开以后,问大家两个问题,首先大家能不能告诉老师一下这个地方的5和这个地方的16406分别代表什么含义?对好,问大家一个问题,如果说大家知道,那就请积极回答一下。首先第一个问题,大家能不能够告诉一下赵老师,这个地方的5代表什么含义,如果说大家知道它的含义,那那你能不能够把它发送到咱们的公屏之上,公平之上。好,各位同学请积极回答一下赵老师的问题,这个地方的五五代表什么含义?这让大家通过刚刚的讲解。嗯。通过刚刚的讲解,大家呢,能不能够猜一下,猜一下这个地方呢?我们含义是什么?如果说大家知道呢,就请告诉一下赵老师,如果说大家不知道呢,就请在咱们的公屏之上,请给赵老师呢回复一个0啊,或者呢给赵老师呢点个赞啊好,咱们接着往下来给大家进行相关的介绍,对好,没有同学能够回答这个问题吗?我好,大家还是应该积极的去思考一下,对好,解释一下这个地方呢,我们代表数据库的OID,那么你当前的表默认创建在我们的那个什么POS柜数据库上,那个POS柜数据库的o idn就是我们的5啊查看一下,那通过刚刚上面的什么信息啊,你重新执行刚刚的查询一句,查看一下数据库的ID,对好,默认的是数据库,默认连接上来以后呢,你所操作的数。
47:59
数据库就是我们的什么这个POS柜,它的对象标识符就是5,你表呢是创建的什么这个数据库当中啊,那个我的含义就数据库的OID,好再问一下各位直播间同学,下面的什么呢?下面的什么这个16406,它又代表什么含义呢?如果说大家能够猜出来它的含义,就请把它发送到我们的公屏之上,如果说大家不了解呢,还是跟刚刚一样,就请在我们的公屏之上回复一个0,或者呢给赵老师呢点个赞,这个地方的1640用是什么含义,还一个这个呢,也非常的什么重要,这个是什么?这个是这张表的数据文件啊,就就你这张表的嘛,数据文件,数据文件太什么命名呢?以表的。
48:59
的对象标识符命名啊,这个地方很重要,这很重要,好,再重复一遍,好,这个地方呢?什么这个地方的1640用是你创建的这张表它所对应的数据文件,而数据文件它以这张表的对象标识符来进行命名,那么通过使用这种方式呢?数据文件它就是什么呢?我们的物理的存储结构,通过使用这种方式呢?我们能够实现通过逻辑存储结构来去管理我们的物理的存储结构,那我能不能够查看到这一张表它的对象标识符OID是多少呢?当然可以的,如果说你要查表的对象标识符,好咱们需要去查询什么?另外的一张系统表底下另外的系统表是什么?是我们把P进下划线看。
49:59
是啊,通过查询这一张系统表呢,你就能够得到表的对象标识符是多少,首先看一下这个表对吧,这张系统表的这个P筋class啥的,那这张系统表的什么结构结构好,看一下表结构,我们执行个斜线D叫做PG_class对啊,PG写出P_class的好没有后面的ESES的,通过查询这一张系统表呢,能够得到表的对象标示,比如说OID,还有表的什么表的名字,表的名字呢,它叫什么relation的,那这个表的名字好,咱们去把前两个字段呢,去给他什么查询出来好,刚刚的表叫什么叫叫做我们的什么TEST1好查询什么OI丁,包括什么这张表的名字,它的名字对放什么P进下划线plus。
50:59
指定个条件表的名字,你要参哪一张表,每一张表每一张表表的名字呢,是咱们刚刚的那什么TEST1,它通过输出的什么信息,你会发现呢,这张表的什么对象标识符是16406,我们就用它来去命名它的什么数据文件,因此呢,这个数据文件名字也就是我们的16406,还有层讲到了这个地方的时候。
51:28
关于什么是我们的表空间以及什么是数据文件,大家是不是都听明白了?我们在讲这个部分的时候,顺便讲一下我们PG的什么表的数据文件,好问一下各位直播同学们,关于表空间和数据文件这两个部分的知识,大家是不是都听明白了哈,如果说刚刚讲过的内容大家也都听明白了呢?还是跟刚刚一样,就请在咱们的公屏之上,请给赵老师呢回复一个666吧,或者呢,给赵老师呢点个赞。
52:07
好,咱们接着呢,我下面来给大家进行相关的介绍,大家刚刚讲的内容都听明白了吗?这些知识呢,当然是非常重要的知识,对跟你的管理、维护、备份都是密切相关的啊,密切相关的对好再来看一下,再来看一下我们的什么,我们的段,那什么是段呢?啊,段是什么呢?段是对表空间的什么逻辑划分,对那最常用的段有什么,比如说有我们的表段,还有我们的么索引段的,比如说你在表空间上创建一张表,自动划分出一个表段,你在表空间上创建一个索引,自动创建划分出一个什么划分成是一个索引段,因此它是对表空间的逻辑划分,段里面呢,包含区或者叫处,对它。
53:08
什么它是分配啊,它是分配空间的什么一个逻辑,逻辑什么单位,那促或者区,它是由什么连续的啊连然后是由连续的什么数据块组成,那么数据块或者的数据页呢?它是最小的逻镜单位还是那么它什么它是最小啊,最小的什么最小的逻镜存储单位默认值多少?默认值是我们的8K,那么我们能不能能不能够查看到这8K的数据量的大小呢?当然可以啊,当然可以好像切换到咱们的行像窗口去查看一下数据库的大小,通过什么执行我们希望我们的不block,什么block side, 还有这个参数决定了数据块大小是多大,不呢,是我们8K啊8OK,那么这8K表示什么含义呢?这8K表。
54:08
老师,一次IO的读写量数据就是8K,重复变数据快捷8K。表示什么含义呢?表示一次IO的读写量数据就是8K。那当你需要使用PG来构建数据仓库的时候,通过增大数据块的大小能构去提高什么系统的吞吐量重复变当你需要使用P进构建数据仓库的时候,通过增大数据库的大小能够去提高系统吞吐量。那吞吐量是我们评价一个系统非常重要的一个什么性能指标,它表示我们在单位时间之内系统的输出和输入的比值,如果这个比值越高,就表示吞吐量越大,它就表示系统的处理能力越强的。因此吞吐量它是评价一个系统非常重要的个什么性能指标。那么你通过增大数据库大小能。
55:15
够去提高它的吞吐量,尤其是我们需要去构建数据仓库的时候,因为呢,你在数据仓库里面需要执行大量的什么查询语句,通过读取数据查询语句,那通过读取数据呢,通过这个方式呢,你能够去提高吞吐量,那因此呢,介绍到这个地方的时候。咱们呢,就要剩下最后的一个什么呢?最后的一个逻辑存储单位,那就是我们的模式,我们的ski嘛,那什么叫SM,什么叫模式呢?它是对数据库对象的划分啊,逻辑划分写一下,写一下它是对什么,它是对数据库对象的什么逻辑划分,那什么叫数据库对象,比如说表视图,存储过程,存储函数这些呢,都属于什么数据库对象,对我们对这些数据库对象的逻辑划分就叫模式,就叫skima,不同的模式,不同的sche码下面可以包含同名的数据库对象,比如说我在不同sche码下都创建一张表,同名的表都叫TEST1是可以的,因此重复变模式,它是对数据库对象的逻辑划分,那么不同的ski码下面可以包含。
56:38
同名的表视图,存储过程和存储函数,那当你创建一个对象的时候,如果不指定它属于哪一个模式,默认将会属于咱们的public模式呢?看一下通过执行斜信吗?DN命令能够看到呢?在默认情况之下,PG里面呢,包含一个什么,包含一个public的什么sche码,在它是创建数据库对象的时候,默认属于的skima,因此呢,Public模式,嗯,大家呢,需要记住,需要记住,对,当然你可以通过什么嘛,Create skima与经创建字体的模式,当然也可以,它里面呢给包含同名的表都可以,对,还有从介绍到这个地方的时候。
57:26
那张老师呢,就给大家详细的去介绍一下,整个我们的PG里面逻辑存储结构里面包含了什么组成的部分,那这些知识当然非常非常重要,对,因为呢,整个数据库不光是PG啊,整个数据库都是一样的,它都是通过。逻辑存储结构在管理我们的物理存储结构,物理存储结构里面刚刚给大家介绍了我们的么数据文件的,但除了数据文件以外,还有其他很多很多文件,那这些更加深入知识当然都会被包含在直播间下方的系统课程当中,还有从咱们介绍到这个地方的时候,现在的时间是晚上的10:28,那基本上今天晚上呢,由赵老师们要给大家分享的知是大概呢,就是这么多,好赵老师呢,10:35下播,剩下的时间答疑或者呢,大家去拍一下课程哈,拍了课的同学呢,请通过私信打你的联系方式发送给赵老师,对好新进来的同学点点关注啊,要问问题的同学呢,可以把问题呢发送到咱们的公屏。
58:47
你之上啊,张老师呢,10:35下播,好,新进来的同学啊,点点关注赵老师呢,稍后就下播了。
59:03
大家今天晚上听完以后有收获吗?如果大家感觉到有收获呢?请给老师回复一个1啊。有有收获吗?今天晚上听完课了以后。有没有收获?如果有收获呢?请给老师回复个1啊。好,我们希望通过直播的学习啊,能够为大家后续的深入学习奠定一个基础啊,奠定个基础,但是远远不够啊,远远不够。啊,谢谢啊谢谢啊,既然有收获啊,有收获就好啊,有收获就好。
我来说两句