00:00
好,咱们现在的时间是晚上的八点半,那么咱们就开始今天晚上的学习,那么今天晚上呢,咱们来给大家介绍一下国产数据库当中的金仓,重点给大家介绍一下金仓数据库的体系架构,体系架构是我们在学习数据库的时候,那么最重要的部分,那么希望通过今天晚上的学习,能够让大家对我们的国产数据库,尤其是对金仓能够有一个进一步了解,为大家后续的深入学习奠定一个基础,那么目前呢,随着这个国产化信创的不断的发展,那么国产数据库呢,也得到了广泛的应用,因此呢,大家后续如果想要从事数据库,从事DBA的工作,那么除了需要掌握传统的比如说or mysql以外,还需要掌握国产数据库,当然张老师。
01:00
老师呢,也会在后续课程里面来给大家介绍其他的数据库的知识,大家之前哈听过赵老师的课程应该都知道,赵老师呢在上课的过程当中会给大家记录一个课堂的笔记,通过记录课堂笔记的这种方式,我们会把课程里面比较重要的知识给大家记录下来,因此呢,今天晚上咱们也会按照同样的这种方式来给大家记录一个课堂笔记。首先咱们需要对金仓数据库要有一个基本了解,那么总体上来说呢,它依然是一款关系型数据库,既然它是一款关系型数据库,那么作为关系型数据库来说,它又有哪些特点?那么我们将会在第二个小节重点讨论一下国产金仓数据库的体系架构,那么刚刚提到体系架构是我们在学习数据库的时候。
02:00
之后最重要的一个部分,因为呢,只有把体系加工掌握以后,后面咱们去安装和部署,包括呢管理和维护,以及呢备份和恢复,还有诊断优化,包括搭建集群等等所有的操作,它都是以这个体系架构为主基础,那么通过咱们稍后的学习,大家会了解到国产金仓数据库的体系架,它主要包含三个部分,首先第一个部分是它的什么呢?存储结构,然后呢,第二个部分是它的进成什么进程的结构,然后呢,第三个部分是它的内程结构,好这三个部分共同组成了进仓数据库的体系架构,而在这三个结构当中,最重要的部分就是它的存储结构,那么金仓数据库。
03:00
通过存储结拿去存储和读写数据,那通过咱们稍后的介绍,大家又会了解到金仓数据库的存储结构,它又具体分为两种不同的类型,首先第一种类型是我们的逻辑存储结构,然后呢,第二种类型是我们的物理存储结构,稍后呢,咱们就来给大家详细介绍哪些是逻辑存储结构,哪一些是物理存储结构,但是呢,赵老师接下来说的这句话,那么就非常的重要,哪一句话呢?只要是数据库都是通过逻辑存储结构来去管理我们的物理存储结构,这句话呢,我用红色字母给大家记在咱们的课堂笔记上,那么说的是什么呢?只要是我们的什么,只要是数据库啊,不管你是关系。
04:00
您的数据库还是我们的loc口,只要是数据库都是干嘛呢?通过我们的逻辑存储结构来管理什么呢?我们的物理存储结构这个概念大家一定需要记住,对,稍后呢,咱们来给大家详细介绍逻辑存储结构里包含哪一些,物理存储结构里面又包含哪一些好,因此呢,介绍到这个地方的时候,赵老师呢,就带着大家去梳理一下,我们在今天晚上将会学习到哪些知识好,咱们现在咱们就按照这样的一个顺序来给大家进行相关的介绍,首先咱们需要对金仓数据库的一些基本知识要有一个基本的了解,那么这地方呢,赵老师呢,问大家一个问题。大家能不能够告诉一下赵老师,金仓数据库它是基于哪款数据库开发出来的?你能够把这款数据库的名字发送到咱们的公屏之上吗?如果说大家知道,那么就请积极回答一下赵老师的问题啊,如果说大家不了解,就请在公屏之上,请给赵老师呢回复一个0,或者给赵老师呢点一个赞。好,咱们接着往下来给大家进行相关的介绍,好,我们讲金仓啊,国产的金仓数据库,也就是我们的kson,它是基于什么呢?基于我们的postic,那么也就是说大家有这个postic,有这个PG的学习的基础,那么你的学习金仓将会非常简单和容易,那么咱们的PGM是一款功能非常强大的什么呢?这个开源的关系形式就可。
05:55
那么国产数据库当中的什么金昌,包括华为的什么高斯,不管你是高斯低B,还是我们的goon高斯,它这两个呢,都是基于我们的post c口的,因此这句话呢,我再重复一遍,不管是金仓数据库,还是华为的高斯DB还是open高斯,都是基于po CQ开发的,那么大家如果有这个P,就是什么学习基础呢,你来学习我们的高深。
06:27
学习我们的金仓将会非常简单而容易,那么这些数据库总体上来说呢?他们都是属于什么?都是属于这个传统的关系型数据库,当然你的这个Oracle也好,你的MYSQ也好,这一些也都是属于咱们的关系型数据库,好,这个地方呢,赵老师呢,可能就需要提一个问题,各位直播间同学,你能不能够告诉一下赵老师,到底什么叫做关系型数据库?可能咱们每天都在使用all com, 都在使用MYSQL,但是呢,你有没有想过关系型数据库它的最基本的概念是什么?这些基本概念看似非常的简单,但是呢,越是基础的知识,那么越是这个重要不不知道大家是否认同赵老师的观点,如果大家都认同呢,就请给赵老师呢回复一个1,或者给赵老师呢点一个赞,好,咱们接着往下来给大家进行介绍,那么什么是我们的关系型作就?
07:35
库呢?关系型数据库它的本质是什么?基于我们的关系模型,那么咱们基于关系模型我们所提出来的一种数据库就叫做关系型数据库,那么接着再往下面去讨论,什么又叫做我们的这个关系模型呢?关系模型它的本质是我们使用一张二维表的行和列的方式来存储数据的模型,就叫做关系模型,那换句话去说,在你的PG、金昌高斯、Oracle Mexico里面,最终存储数据的模型都是二维表的行和列,这个呢是整个关系型数据库它最基本的一个概念,那么我们在关系型数据库当中,当你去设计它的这个表结构的时候,对一般来讲。
08:35
咱们需要去什么遵循我们的范式,那么什么叫做遵循范式呢?当我们拿到一个需求以后,先根据我们的需求设计出我们的ER2模型,也就是实体关系模型,有了ER2模型以后,再抽象层式关系模型,然后呢,再根据我们的范式,比如说我们的第一范式,我们的第二范式,或者说我们的第三范是最终设计出关系型数据库的表结构,这个呢是我们在关系型数据库当中那么本的一个做法。好,既然如此的话,赵老师呢,可能又需要提一个问题,就是说我们在关系型的数据库当中,为什么要遵循我们的范式,范式它有哪些优点,它又有哪些缺点?好,首先问一下各位直播间的同学。
09:35
你能不能够把这个范式的优点发送到咱们的公屏之上,那么如果说大家知道,就请积极回答一下赵老师的问题啊,如果说大家并不是很清楚。就请在公屏之上,请给赵老师呢回复一个0,或者点一个赞,让赵老师呢能够知道大家都还能够跟得上,好,咱们接着往下来给大家进行相关的介绍,好,感谢我们的这个清寒的同学,没有拢云说的很准确啊,说的很准确,那么遵循范式它的主要优点就是什么?可以减少数据冗余,那么什么叫减少数据冗余呢?那么你可以把数据存储在多张表这个当中,表与表之间通过表的外键那么进行关联,这种遵循范式的方式,它能够减少数据冗余,数据并不会多存,但是呢,正因为它有这样的一个优点,同时也就带来了一个缺点,好,这位清寒同学,你能够告诉赵老师一下吗?范是他的缺点是什么?如。
10:51
如果大家知道或者对个同学知道呢,就请回答一下,如果说大家并不是很清楚呢,就请在我们的公屏之上回复一个0啊,或者给赵老师呢点一个赞,查询速度慢啊,很对很对,那那范式的优点是减少数据冗余,同时它的缺点就是什么?它会影响我们的什么查询的效率,那么为什么讲它会影响查询效率呢?因为刚刚提到你把这个数据存储在了多张表的当中,是不是这样子的,表与表之间通过表的外键那么进行关联,因此呢,我们在查询数据的时候,就需要执行一个多表查询,而多表查询它首先会产生这个笛卡尔级,由于在笛卡尔级当中包含一些不正确的数据,因此呢,咱们需要使用。
11:52
连接条件,避免使用迪卡全集,因此呢,它是会影响查询的性能的,因此整个我们讲这个关系型数据库啊,对,它的最基本的一个出发点是什么呢?它就是通过牺牲查询的什么效率来干嘛呢?节约存储的空间,这个呢是整个关系型数据库它最基本的一个出发点,对那么关于这个关系型的数据库呢,还有一点大家需要知道,他们在读写或者存储数据的时候,都是按照咱们的什么行式存储方式,对,那这地方解释一下,什么叫做行式存储呢?就是说我在存储读写的数据的时候,以这个行为单位,我读写完第一行数据,在读写第二行数据,在读写我们的第三行数据,它以行为。
12:52
单位来存储读写数据,既然是如此的话,赵老师呢,可能就需要问大家一个问题,各位直播间同学,你能不能够告诉一下赵老师,这种行式存储的关系型的数据库,它主要适合。
13:10
执行哪些操作,你能够把它适合执行的操作发送到咱们的公屏之上吗?如果说大家都知道,那么就请积极回答一下赵老师的问题啊,如果说大家不了解,就请在我们的公屏之上回复一个0,或者给赵老师呢点一个赞。好,咱们接着往下来给大家进行相关的介绍,那总之一句话,行式存储的关系型的数据库呢,主要适合我们的OLTP的应用场景,这个地方呢,就需要解释一下什么叫做我们的OLTP,那么它的全称大家首先需要知道的那就是我们什么奥alarm,核心单词就是中间的那个T,它叫做我们的嘛transaction p呢是我们的嘛processing,如果呢,把这个呢翻译成是我们的中文的话,它就是我们的连。
14:11
从基因事物处理,那么我们在事物里面通常包含我们的什么呢?插,插入、更新和删除,那么也就是说传统的关系型数据库,它是行式存储的,它并不适合执行我们的查询语句,比如说当我们去构建我们的什么数据仓库的时候,对,那么咱们的数据仓库当中就是需要去执行大量的什么查询语据来去查询和分析数据,如果是这种场景的话啊,推荐使用咱们的什么列势存储数据库啊,列势存储的什么列啊,写项列式存储数据库呢,它就非常适合执行我们的查询操作,同时呢,它就适合我们的o lap的应用场景,好,这个地方就涉及到了另外的一个名词,那么到底什么叫做OAP,把它写在咱们的。
15:11
笔记上面来,它叫做什么online,核心单词是中间的那个A,它叫做什么analytic p呢,是我们的什么processing,它跟刚刚一样,如果呢,你把这个东西翻译成是我们的这个中文的话,它就叫做我们的连接分析处理,既然是连接分析处理的话,那么我们在数据仓库里面,或者说我们在o lap当中。一般的情况之下,这个不绝对啊,不绝对,一般的情况下只会执行我们的查询语句,当然你去构建数据仓库的话,你能够使用传统的关系型数据库,比如说你能够用all com my com等等PG呢都可以,经常也可以,但是呢,目前构建数据仓库的什么主要的方式都是使用咱们什么就大数据方式,比如说你可以使用你的什么哈杜也好,或者18g也好,或者fli克也好等等,使用大数据中的这些组件来去构建我们的离线数仓,包括我们的实时数仓,对,那么关于大数据的这些相关的知识,张老师呢,也会在后续的直播课里面单独的来给大家进行相关的介绍,那整个第一个小节基础部分最后的一个问题呢?
16:40
咱们还需要给大家介绍一下一些比较常见的什么国产的数据库,因为呢现在随着这个国产化信创的不断的发展,国产数据库呢也得到了广泛的应用,因此呢,大家后续如果要从事数据库从事DBA的工作,那么除了需要掌握传统的or PT以外,还需要掌握国产数据库,对,当然咱们的金仓就是一款国产数据库,那么还有哪一些是国产数据库呢?大家能不能够告诉一下赵老师,你能不能够把他们的名字也发送到咱们的公屏之上,如果说大家知道,那么就请积极回答一下赵老师的问题啊,如果说大家不了解,那么就请在公屏之上,请给赵老师呢回复一个0,或者给赵老师呢点个赞好,感谢咱们的清函哈高斯低病高。
17:40
斯达梦,对,好,我把几款比较常见的国产数据库呢,给大家写下来,比如说我们金仓,包括我们高斯,高斯里面呢,包括我们的这个欧open高斯,还有我们的高斯DB,但海,还有咱们达梦,还有我们嘛TDB,还有我们的牙山等等,这些都是属于咱们的国产的数据库,对,那么这个呢,大家需要去了解一下的,但是呢,给大家一个小小的一个建议啊,如果说大家后续你要去系统的去学习数据库的知识,不管你是学习关系型的数据库,还是学习no cql数据库,赵老师呢,建议大家一定从什么,建议大家一定啊一定从什么啊,写错了一定啊,写一一定从我们的or开始学习啊,这句话呢,我再重复一遍,如果说大家后续你要。
18:40
一统的去学习数据库的知识啊,不管是学习关系型数据库,还是学习什么样的lo西库,还是国产数据库,赵老师呢,一定建议大家从我们的Oracle开始学起,为什么?因为Oracle数据库它是所有数据库当中功能最强大,结构最复杂的一个,当你把Oracle掌握以后,你再去学习其他的数据库,那么都会非常简单和容易,这个呢是赵老师给大家的一个小小的一个建议,好因此咱们介绍到这个地方的时候,整个金天晚上的第一个小节,有关这个数金仓数据库的一些基本的知识,就给大家介绍到这地方,好问一下各位直播间同学。
19:30
关于这个部分,关于我们的第一个小节,大家是不是都听明白了,如果说这个部分大家都听明白了呢,就请在我们的公屏之上,请给赵老师呢回复一个1,或者给赵老师呢点一个赞。接下来呢,咱们进到第二小节的学习重点咱们去讨论一下什么呢?重点咱们去讨论一下金仓数据库的体系的架构,那么体系架构是我们在学习数据库的时候,那么最重要的部分,对,那把体系架构掌握以后呢,后面咱们去安装和部署,管理和维护,备份和恢复,诊断和优化,包括搭建集群,它都是以这个体型架构为基础,那么整个金仓的结构它分为了三个部分,分别是我们的存储的结构。
20:30
进程结构,还有内存结构,而在这三个结构里面,当然最重要的呢就是存储结构。数据库通过存储结构来存储和读写数据,它有具体分为逻辑存储结构,还有我们的物理存储结构,数据库都是通过逻辑存储结构来去管理我们的物理存储结构,因此接下来呢,咱们就需要详细讨论一下,逻存储结构里面包含哪一些?物理存储结构里面又包含哪些?首先咱们去把金仓数据库的逻辑存储结构它所包含的组成的部分给大家记一张咱们的课堂笔记上那一些是逻辑存储结构呢?首先第1个是我们的数据库的集群,对,是数据库集群里面包含什么?若干个数据。
21:30
库,数据库呢,它是由我们的表空间组成,表空间它有若干个段组成,段里面呢,包含我们的区,区是由什么呢?连续的数据块组成,这六个部分它们共同组成了什么呢?金仓数据库的这个逻辑存储结构,因此呢,接下来呢,咱们就需要详细讨论一下这6个东西,他们到底是什么东西,他们有什么样的功能和作用。首先咱们讨论一下我们的第一个数据库的集群,那这地方咱们就需要去解释一下,到底什么叫数据库集群呢?数据库集群把它的基本的概念和定义给大家写在咱们的课堂的笔记上面,它什么意思呢?它表示由单个数据库实例管理的所有数据库的集合,叫做。
22:30
数据库的集群这句话呢,给大家记在咱们的课堂笔记上,它表示呢,什么意思啊,由单个由啊,写错了由什么,由单个库啊,由单个,由单个什么数据库实例管理的什么,所有数据库的什么这个集合,这个呢就是我们整个在金仓数据库里面,数据库集群它的最基本的一个概念,对重复一编,它是由单个数据库的什么实例管理的什么呢?所有数据库的集合叫做数据库集群,那么从表现形式上去看,它就是什么?操作系统上的一个目录,注意从表现形式上去看,它就是一个操作系统的一个目录,这个目录呢,它没有固定的路径,通过使用杠大地的选项。
23:27
或者使用什么环境变量,环境变量我们的K被data塔去指定,那么这句话呢很重要,对,那么这个操作系统目录代表我们的数据库的集群,它没有固定的路径,通过你在启动数据库服务的时候指定我们的杠大地的选项,或者通过环境变量king base data去指定,那么你去启动金仓数据库的服务,本质上就是启动这个数据库的集群,或者这个数据库的集群,或者说启动这个数据库的实力,那么有了这些基本的知识以后,那么咱们能不能够通过DEMO演示,让大家能够对我们的这个数据库集群能够有一个感性认识呢?当然是可以的,好,我们切换到咱们的实验环境当中去的,首先我能不能够去执行一条。
24:28
命令看一下我当前数据库集群,或者说当前数据库的服务,或者说当前数据库的实力,它的一个状态呢,对,当然可以,当你把经仓数据库安装部署好以后呢,它给我们提供了一个什么管理的命令,或者叫管理的工具,叫什么叫C,我们的control,通过这个C生control的工具,你能够去启动数据库集群,你能够去停止数据库集群,包括查看它的状态,那么通过刚刚的学型,咱们知道呢,数据库集群它没有固定的路径,那么我们呢,可以通过使用什么杠大地的选项,或者使用咱们的环境变量king based data去指定,诶好的地方呢,我们直接从杠大地选项指定数据库集群,它都进,对好这个地方呢,我把数据库集群创建在了什么这个目录上面,对好,我当前用红圈。
25:28
跟出来的什么这个目录就是咱们金仓数据库呢,数据库集群的目录,你去启动它就相当于是启动一个数据库的服务,或者说启动一个数据库的实例,我看一下当前服务它的状态是个什么状态呢?执行一个我们的SD的选项,那么通过打印输出的信息,我们可以看到当前的数据库集群,或者说当前数据库实例服务呢,它是正常运行的一个一么一个过程,对,那么现在是整个数据库集群,它的一个什么基本的概念,对,那么你在数据库集群当中,所有数据库的信息,包括各种文件都将会被保存在我们的这个目录下面,这个呢,就整个金仓数据库,它里面到底什么叫做数据库集群的一个基本定义,当然了你能够查看状态,你把这个什么这个S的。
26:28
的选项改成我们的什么stop就能够启动数据库集群,改成我们的stop呢,就能够停止数据库集群,因此呢,我们在金仓数据库里面呢,都是通过这样的一种方式来去管理我们数据库集群的一个状态,或者呢启动或者停止它,还有从怎么介绍到这个地方的时候。整个今天晚上要给大家介绍的什么?第一个我们的逻辑存储结构,到底什么叫做数据库集群,那就给大家介绍到这地方,好问一下各位直播间同群,那么关于金仓数据库的数据库集群大家是不是都听明白了?如果说这个部分啊数据库集群大家都听明白了呢?就请在我们的公屏之上回复一个666,或者给赵老师呢点一个赞,好,咱们接着往下来给大家进行相关的介绍,大家都听明白了吗?好,感谢咱们的尾号是3522的同学啊,好,咱们接着呢讲我们的。
27:40
接着呢,讲我们的第二个逻辑存储结构,到底又是什么是数据库呢?刚刚说过一个数据库集群里面,它有可能会包含什么呢?多个数据库,那么咱们首先能不能够登录到刚刚的那个数据库集群里面去看一下它里面包含哪些数据库的什么呢?信息呢,当然可以的,但好先回到咱们的命令行的什么窗口当中去,当你安装好了金仓的数据库以后呢,它给我们提供了一个命令行工具,叫KC口啊,那么KC口呢,基本上就跟你什么PC口post c口呢操作是一样的,通过杠U选项指定你想使用哪一个用户连接到数据库集群之上,对,好,这个地方呢,咱们使用咱们的管理员用户,对,叫做什么system ten, 在使用刚D选项指定你想连接到当前数据库集群当中的。
28:41
啊,一个数据库上对不对,他我们怎么连接到什么k base就什么数据库上,执行咱们的登录操作,需要输入什么管理员的密码,在好登录上来以后呢,如何去查看当前的这个数据库集群里面包含用哪些数据库呢?通过一个快捷命令斜线L呢,就能够查看,它会列举出当前数据库集群里面所有数据库的什么呢?相关的信息,那通过输出的么结果呢,咱们会看到你在当前的数据库集群里面一共包含有什么以下6个数据库,你能够通过使用这种方式那么进行查看,当然我们在整个的什么金仓的数据库里面。
29:29
他也提供了一张什么系统表斜项,它提供了一张什么我们的系统表,它叫什么叫C统下划线对塔贝,通过从这一张系统表你也能够查看到这个数据库集群当中数据库的相关的信息。首先咱们看一下这一张系统表里面它包含有哪些相关的字段,如何在金仓数据库里面查看表的字段呢?通过斜线D命令,那么如果后面你不写表的名字,它将会把当前数据库里面所有的表给我们列举出来,如果你后面跟上表的名字,它将会把表结构输出在我们的屏幕之上,通过打印输出的信息咱们会看到呢,这一张系统表里面包含以下什么这些字段,好,咱们呢,就去查询什么它的OID,还有数据库的名字,什么叫OID呢?
30:29
OID代表对象标识符,这个地方涉及到一个概念,给大家写在咱们的课堂,比如上在那么到底什么是我们的OID呢?写一下它叫做我们的or杰特ID or杰的ID,如果呢,你把它翻译成是我们的这个中文的话,它就叫做我们的什么对象标识符啊对象标识符,那么我们在金仓里面,不管是表,不管是视图还是数据库,它都会有一个唯一的标识符,那么这个标识符呢,就叫OID,就叫对象标识符,那么有的这个基本知识以后,好怎么去把整个数据库集群当中包含数据库的什么OID,还有数据库的名字给怎么查询出来,好,咱们就查询前面的两个字段就可以了。再看一下我们当前数据库集群里面包含有哪些数据库呢?
31:29
好,先去执行一个我们的清屏的操作的,查询我们的OID,包括呢,查询数据库的名字,放咱们刚刚的那张系统表,叫system上下滑项data,那通过输出的信息你也能够看到呢,我们在当前的什么数据库里面包含有以下6个数据库,跟咱们刚刚使用斜线L命令呢,看到的是完全一样的,对,那有了这些基本的知识以后。
32:00
咱们再来讲,到底什么叫做数据库呢?数据库的本质它就是操作系统上的一个目录,这句话呢,也给大家记在咱们的课堂笔记上来记一下本质是什么样?本质就是什么就啊就是操作系统上的一个目录,目录的什么名称就是数据库的OID,这句话大家一定需要记住,重复一遍,数据库的本质,它就是操作系统上的一个目录,而目录名称就是这个数据库的OID。那么有了这些基本知识以后,那么咱们能不能够到我们的金仓的数据库里面创建一个新的数据库呢?你创建一个新的数据库,本质上就是在操作系统之上创建一个目录。
33:01
目录名称就是这个数据库的OID,那么有了这些基本知识以后,咱们来给大家演示一个DEMO的实例,我们去创建一个新的数据库,在当前的数据库集群当中,叫做我们的DEMO数据库啊,Cur.我们的什么data,那么叫做我们的么DEMO,那么你通过上面的那套查询语句能够查出这个DEMO数据库它的OID它是多少的?好执行上面的查询句,通过输出的信息,我们看到呢,这个DEMO数据库它的ID是多少呢?OID是我们的什么16404这个呢,就是这个数据库它所对应的目录名字,那么是不是这个样子呢?咱们去确定一下,好,咱们打开一个新的一个命令行的一个什么一个窗口,连接到咱们当前的什么这个服务器上去,输入服务器的什么密码的,那你所创建的什么呢?所有数据库都是在数据库集群的目录上面,是不是这样子,还用存到什么这个地方,需要切换到我们的k base用户上面来进到数据库集群的目录。
34:18
就是呢,大家现在看到的什么这个录进去好进入到这个目录下面的什么base斯目录下面,对好注意这个base式目录就是什么呢?你创建数据库的时候,它默认存在的路径,那么刚刚咱们创建的数据库呢,叫做我们的什么DEMO数据库,它的o idn是我们的16404,本质上就是在这个什么贝斯目录下面呢,也创建一个目录,目录呢,就是我们的16404,很明显这个目录名字是不是就是刚刚咱们创建的DEMO数据库的名叫ID啊,因此呢,到底什么是金仓数据库的数据库呢?金仓数据库的数据库本质上。
35:07
就是操作系统上的一个目录,目录名称就是这个数据库的ID,因此呢,咱们讲到这个地方的时候,那么咱们就把整个我们在金仓数据库里面前两个非常重要的概念,那么到底什么叫我们的数据库集群,那么到底什么叫做我们的数据库呢?都给大家做了一个非常详细的介绍,这些知识都是我们后续你在系统的去学习,经常或者呢,你再去学习其他数据库的什么都需要重点掌握的内容。对好,既然讲到了这一个地方,问一下各位直播间同学,那关于咱们前面的两个概念,到底什么叫数据库集群,到底什么叫数据库这两个基本的概念大家是不是都听明白了,如果说这两个基本概念大家都听明白了呢,还是跟刚刚。
36:07
一样的,就请大家在我们的公屏之上,请给赵老师呢回复一个666,或者给赵老师呢点一个赞,好,咱们接着往下来给大家进行相关的介绍,大家都听明白了吗?啊对,好,这些呢,咱们都希都是通过希望呢,嗯,都是希望通过今天晚上学习啊,能够为大家后续的深入学习,咱们去奠定一个基础的,好,咱们接着往下来给大家进行相关的这个介绍的啊,有了数据库集群,有了咱们的数据库以后,那什么又是表空间呢?表空间它是对数据库的逻辑划分,这句话呢,也给大家记在咱们的课堂笔记上,它是对什么数据库的什么逻辑划分,那么当你初始化完了一个金仓数据库集群以后,对它默认会存在一些表空间,那么通过使用斜线DB命令能够查看到当前已经存在哪些表空间,它切换到咱们的实验环境。
37:26
当中去先去切清一下平啊,对执行一个什么斜线,我们的什么斜线感叹号看以对好直接执行一条命令,叫做么斜线DB啊,这一条命令它就能够把你的表空间的信息输出在我们的屏幕之上,那么在我们当前的环境里面,它包含有哪一些表空间呢?执行这个操作的它一共包含有什么?以下三个表空间分别是我们的session default session global和session auditor, 那咱们就需要了解这三个表空间它们的功能和作用分别是什么?好,咱们单独给大家记录一个课堂笔记,首先讨论第一个表空间是我们的嘛,C default表空间啊在C我们的嘛C_default表空。
38:26
空间好,这个表空间它是创建表的默认表空间,这句话呢,也给大家记在咱们的课堂笔记上,它是创建表的默认表空间,那么什么意思呢?就是说你在这个金仓的数据库里面,当你去创建一张表的时候,你需要指定一个表空间。如果说。你不指定表空间,它将默认创建的在什么system default表空间上,那么到底什么是表空间呢?放到So home来给大家进行详细的说明,这个呢是我们大家需要知道的什么第一个表空间sessionn default表空间,这个呢是咱们的第二个叫做我们的system global, 写一下system下划线我们的什么这个global,那这个表空间是我们的系统表空间,接下它是系统表空间,所有的系统表都是创建在什么呢这个表空间上,比如说刚刚咱们的这张系统表叫c database, 他这是一张什么系统表,它就是创建在我们的什么这个c global表空间上,还有我们的第三个表空间叫做我们么c auditor写下。
39:53
第三个是什么呢?第三个是我们的c auditor, 看我们的C,我们auditor,那这个表红间因为存放什么呢?审计相关的信息,Audit代表的就是审计啊,写一下它是我们存放审计,审计信息的,存放审计信息的,好这个呢是整个我们在经仓数据库里面,它默认存在的表空间就有这三个,那么到底什么是表空间呢?表空间它对应到操作系统上的一个目录,这句话呢,也给大家用红色字母记在咱们上方,表空间对应于一个什么,对应一个操作系统的什么呢?目录,那么也就是说你在我们整个的金仓数据库里面呢,你可以去创建自己的表空间,当你创建自己的表空间的时候,你需要去指定。
40:53
这个表空间它对于操作系统的哪一个路径,那么有了这个基本知识以后呢,现在呢,我们能不能够到我们的金仓里面创建一个自己的表空间呢,然后再在这个表空间上创建一张表呢?当然是可以的,对,既然它对应一个操作系统目录,因此呢,咱们首先让操作系统路上呢,随便就能创建一个什么一个目录,对,好,回到当前的什么,把刚刚之前创建它,它删除对不对,好回到当前用户的什么加录丁上,好,我在这个目录下面呢,我去创建一个新的一个目录,作为表空间它所对应的操作系统目录,Make, 一个D叫MYTBSTBS,那就是我们的嘛,这个table space, 那目录创建好以后呢,我就。
41:53
想要创建一个表空间指向我们的这个路径,那么如何去写这条语句呢?回到咱们的C口的命令行上面,对好,通过使用我们的这个table sta能够创建一个新的表空间,通过location关键字指定这个表空间它对应于操作系统的哪一个目录?对好,我们写一下这套语句啊。
42:22
我们写一下啊,写一下这叫做我们的么cur,我们的table space表空间,它也是一个什么呢?数据库的对象,因此呢,它也应该有个名字,好,那么起个名字啊,就叫MYTBS,通过什么什么location关键字母指定这个表空间对应于操作系统的哪一个目录,就是你们刚刚创建好的那个那个目录,对,好看一下,下面是我们刚刚叫做home,下面呢有一个t base, 嗯,下面呢,有一个什么呢?我们的MYTBS,通过使用这一条语句,我就基于刚刚的目录创建好的一个新的表空间,再次执行我们的斜线DB命令,你就能够看到表空间的信息,它所它的所在地就是刚刚的路径,那么表空间创建出来。
43:22
以后,那么咱们能不能够基于刚刚的表空间创建一张表呢?你把表创建在这个表空间上,很明显表中的数据都将存储在我们的这个路径上。对,好,简单衍示一个示例,先清一下屏啊,对,Click吧,我们的table啊表表结构非常简单,就什么叫test一表里面呢?比如说包含有什么两个列,一个是ID号,它是一个整数,占了一个名字,它是一个一个字符串列表创建出来以后,如何指定它在哪个表空间上呢?通过使用一个关键证叫tableb space, 指定它创建在哪一个表空间上,就是咱们刚刚的那个什么MYTBS,如果说你不指定表空间,它就默认创建在我们的c def foult表空间上。
44:22
啊,表创建出来以后,当呢,你能够呢,往里面插入我们的数据,这呢就是属于咱们最基本的话C口语句数据最终将会以什么数据文件的形式存储在刚刚所创建的目录上啊现在呢,有了这些基本的操作以后,我们能不能够到刚刚的目录上面看一下它产生的哪些相关的信息切换到咱们的第二个命令行窗口上面,这个呢,是咱们刚将创建好的表空间的路径,对不对?咱们执行的是么们脆命令与塑形结构,把我们的目录呢给它展开,查看一下MYTBS这个目录下面包含有哪些相关的信息的,那么通过输出的信息呢,它一共包含有以下什么内容呢?好,解释一下每个节点分别包含的意思呢?好。
45:22
对上面的什么呢?这个MYTBS,这是咱们表空间他所对应的路径,那问一下各位直播间同学们,你能不能够我告诉一下赵老师,先问第一个,先问第一个这个地方的14792它代表什么含义,好问一下大家,如果说大家知道这个地方的14792它所代表的含义,你能够把它发送到咱们的公屏之上吗?如果说大家不知道,就请给赵老师呢,回复一个0,或者给赵老师呢点一个赞,让赵老师呢能够知道,大家都还能够跟得上赵老师的节奏,好再重复一遍刚刚的问题啊,在这个地方的14792。
46:12
它代表什么含义大家是否清楚?如果大家知道,那么就请告诉一下赵老师啊,如果说大家并不是很了解,就请在我们的公屏之上回复一个0,或者给赵老师呢点个赞,好,咱们接着往下。来给大家进行相关的介绍,没有同学能够告诉赵老师吗?或者猜一下也可以啊,猜一下也可以的么?大家尽量的都。回答一下问题啊,要好,那么接着呢,往下来给大家进行这个介绍,那么这个地方嘛,14792是你当前这个数据库的OID,重复一遍,14792是当前数据库的odn,那么怎么当前数据库是哪一个呢?当前数据库是我们的什么这个king base king base的这个数据库它的OID就是我们的14792,是不是这个样子呢?通过查询刚刚的系统表呢,能够获取到我们查询一下什么数据库的OID,数据库的什么名字,对form,刚刚的那个什么系统表叫什么system_data塔base,那么通过输出的信息,那么你会发现呢,当前数据库叫做我们什么king base, 它的o it就是我们什么14792,就是它是这个数据库什么o it.
47:44
它就是一个目录,好这个东西了解到以后呢,再问大家第二个问题,能不能够告诉一下赵老师这个地方的什么,这个地方的我们的1640用它代表什么含义,重复一遍这个问题啊,这个地方的1640用它代表什么含义,如果说大家知道,就把它的含义跟刚刚一样,也发送到咱们的公屏之上,如果说大家并不是很清楚呢,就请给赵老师呢回复一个0,或者给赵老师呢点一个赞,好,咱们积极的互动一下。
48:26
让赵老师呢,能够知道大家都还能够跟得上赵老师的节奏,没有同学能够告诉到老师呢,啊,赵老师往上讲的这个地方呢,什么1640用是咱们的什么数据文件啊,是什么是这个表表它锁定的什么数据文件,而数据文件的名字就是这张表的OID,这句话呢,我再重复一遍,这个地方呢,什么16406,它是我们的数据文件,或者说它是这张表的什么数据文件,而文件名称就是这张表的D,那么咱们能不能够查询一下刚刚创建好的那张表的o idn是多少呢?咱们也能够,我们通过查询一张系统表获取到表的OID是多少,这张系统表呢,叫做什么叫C。
49:26
但是首先看一下它的表的结构啊,清下平啊,嗯,系统表呢,叫做我们了,看一下叫做C_class的,通过查询这一张系统表,你就能够获取到表的OID分别是多少的,它里面把很多的字段好,我们就查询前两个字段就可以查询表的YID包括表的名字,查询这两个字段就可以了,好我们写下查询语句啊,才用刚的表啊,叫做我们的这个test test什么test啊TEST1吧,Test看一下就是我们test test1的,好清一下听他们执行一个查询语句啊对查询什么表的ID,包括表的名字方什么刚刚的那个系统表叫CS_class指定个条件啊,只查询哪张表呢?查询刚刚创建什么TEST1这张表。
50:27
这什么DN是我们的什么164061就是表的o idn就是它所对应的数据文件的名字,数据文件很明显它就是属于我们的什么这个物理存储结构,那什么叫物理存储结构呢?物理存储结构它指的就是硬盘上面的各种文件,比如说有你的数据文件,控制文件和日志文件等等,对好这张呢,放到稍后呢,再给大家进行这个介绍,那么因此我们介绍到这个地方的时候,关于什么是表空间,那就给大家介绍到这个地方,好问一下各位直播间同学,回答一下赵老师们,表空间这个部分大家是不是都听明白了,如果说表空间的这个部分大家都听明白了哈,跟刚刚一样,请给赵老师呢回复一个6。
51:27
六六啊,或者给赵老师呢点个赞,好,咱们接着往下来给大家进行相关的介绍,表空间再往下面划分是我们的段,然后最常用的段是我们的嘛,是我们的这个表段,或者说是我们的嘛索引段等等的,当你在表空间上创建一张表,或者说你在表空间上创建一个索引,它就自动在表空间内部呢分配个表段或者是索引段,索引段不对,因此呢,段是什么?段是对表空间的逻辑的这个划分,对段里面呢,包含区,区它是有什么,它是分配逻辑空间的一个单位,它由什么,由连续的什么数据块组成,那什么又是数据块呢?数据块它是最小。
52:27
的逻辑存储单位,它代表一次IO的读写量,数据写一下什么叫数据块,数据块是什么?它是最小的这个什么螺径存储单位,它表示什么,表示一次啊,一次IO一次读写的什么读写的数据量的什么大小,好问一下各位直播间同学,你能不能够告诉一下赵老师,在这个默认的情况之下,经仓数据库数据块的大小是多大,如果说大家知道呢,就请把它的大小发送到咱们的。
53:09
公屏之上,如果说大家并不是很清楚呢,就请在我们的公屏之上回复一个0,或者给赵老师呢点个赞。数据块大小是多大?好,咱们呢,其实上呢,可以通过去查看一个参数来获取到数据块的大小,简单的这个嘛,演示一下,切换到咱们的命令行的窗口里面,执行一个什么修语均叫做block坑我们的size,执行这条句呢,你就能够查看到数据块的大小,默认是我们的8192格字节,那就是我们的8K 8K表示我一次读写的物理的什么数据的大小是8K的什么这个大小它表示一次IO的大小,通过增大数据库的大小,我们能够去提高系统的吞吐量,这句话呢,也吞吐量这句话呢,也给大家既在咱们的课堂笔记上。
54:09
那哪句话呢,通过啊写一下通过通过呢,增大什么数据宽的什么大小,大小可以那干嘛呢?可以可以可以可以增大什么增大增加则就是增加,增加什么吸统的吞吐量,那什么叫吞吐量呢?吞吐量是我们评价一个系统呢非常重要的一个什么性能指标,那解释一下什么叫吞吐量,它表示我们在单位时间之内系统的就输出和输入的比值,如果比值越高,就表示系统的处理能力越强,它主要呢有两个体现的参数,一个参数是我们把这个QPS,一个是我们什么TPS,那么对于数据库的吞吐量来说,QPS和TPS呢,这评价吞吐量非常。
55:09
谈重要的两个参数,好,问一下大家,到底什么是我们的QPS,到底什么是我们的TPS?如果说大家知道这两个,说这两个,这两个名词就请呢发送到咱们的公屏之上,如果说大家不了解什么是tops,什么是TPS呢?就请在我们的公屏之上。回复一个0,或者我们给赵老师呢点个赞,好,咱们接着往下来给大家进行相关的介绍,好,我们解释一下,我们解释一下什么叫QPS,什么叫TPS啊对,嗯。QPS, 它代表什么呢?每秒查询数,每秒执行的查询查询数。QPSTPS呢?代表每秒值现了什么事务数,这两个指标是评价数据库非常重要的两个性能参数,它体现了我们的吞吐量,还有从介绍到这个地方时候,整个我们在金仓数据库里面有关它的这个逻辑存储结构,就给大家介绍到这个地方,它这里呢,还有一个基本的概念是我们的嘛,这个scheme模式单独写下,还有一个是我们的嘛,这个模式啊叫模式我们的么?这个Skima稍微解释一下,什么叫skima呢?Skima它是对数据库对象的逻辑划分,所写一下它是对什么对数据库对象的什么逻辑划分,什么叫数据库对象,比如说你的表,你的视图。
56:49
你的这个存储过程,存储函数,这些呢,都是数据库对象,所有的数据库对象都属于模式schema当中对象,如果说你在创建对象时候,不指定对象属于哪个模式,默认属于咱们的public模式啊,不,所以默认属于我们的public模式,Public模式就是你创建对象的默认模式,当然了你也能够创建自己的模式,不同的模式,不同的skima下面可以包含有同名的数据库对象,因为它是对数据库对象的逻辑划分,好这个呢才才算减完整啊好,讲到这个地方的时候,整个我们在金仓数据库里面有关它的这个逻辑存储结构,那什么是我们的数据库集群,什么是我们的数据库对,什么是表空间。
57:49
边,什么是段,什么是区,什么是数据块,什么是模式呢?就给大家介绍到这个地方,好问一下各位直播间同学关于这个部分逻辑存储结构。
58:02
大家是不是都听明白了,如果说关于金仓数据库的逻辑存储结构,大家都听明白了呢,还是跟刚刚一样,就请在公屏之上,请给赵老师呢回复一个1,或者给赵老师呢点个赞啊,我们再来简单的给大家介绍一下它的什么,这个物理的这个存储结构,对,那么到底什么叫物理存储结构呢?物理存储结构写一下,写简单写一下,它指的就是硬盘上的各种文件啊,他写一下它指的是什么硬盘上的各种数据库的文件,比如说它有哪些文件呢?刚刚提到一个叫做我们的什么数据文件,当然还有我们的这个日证文件,对,还有我们的嘛控制文件等等等等,那么大家呢,能够在那个数据库集群的目录下面找到所有数据库的什么相关的。
59:03
文件内,比如说有数据文件,日志文件,控制文件等等等等的,那对呢,简单的给大家进行个介绍,好,还有我们整个体系架构里面,它还包含我们的进程结构,还有我们的什么内存结构,简单的去看一下对不对,整个经仓数据库里面它有哪些进程啊,执行个简单的命令演示一下,再好听一下,拼通过什么我们的我们的什么杠1O2-1,那么只杠1O只查询我们的command命令过滤向有关k base什么后台竞争,那通过输出的同信啊,这上应该有个冒号,对,通过输出话信息,那么你能看到进仓数据库它包含这些后台进程,比如说与我们日志写进程,检查点进程等。
我来说两句