00:00
安装部署完,呃,DOS相关的组件,那接下来我们来了解一下它的使用,那我们看第三张数据表的创建啊,主要围绕着建表使用这一方面的内容,我们做一个了解,那首先呢,我们先准备一下啊。我们在实际使用过程中肯定不会一直用root用户去操作的,对吧,这样不安全。那我们通常呢,会创建一个专门的用户来呃,进行Doris的操作,那所以呢,我们先来创建一个。用户之后呢,在创建一个测试的数据库啊,我们来之后呢,做一些建表演示。好,那我们先操作一下,这边已经在里面了,对吧,那为了让大家更熟练一点,我们重新进了啊嗯。My circle。然后杠H打牌一。对吧,然后呢,杠P9030大写P啊,然后杠U,我们先得用root用户进来创建新的用户进来之后我们就create就可以了。
01:14
Create you了。这个直接拷贝好,那这条命令跟MYSQL的命令一样吧,对吧,创建用户,用户名是test,密码呢,我也设为test,仅仅是为了方便啊,你根据自己的来设置就行啊好,创建用户成功了啊,之后呢,我们再创建一个数据库test DB。然后这个语法跟MYSQL的语法是不是也一样啊。Create database test DB啊,那库名也一样,你想起什么就起什么呗。在之后呢,我们是不是要给这个新创建的用户授权呢。对吧,这是我们正常使用的一个方式。好,那你看这个是不是语法也一样。
02:03
这表示赋予所有的权限。将test DB。这个库的所有权限都赋权给test用户啊,好,回车,那这就OK了,我们退出来试一下啊,接下来我们用户不用root了,我们用什么呢?刚创建的test试一下,好,这密码test,诶,你看这就进来了吧,啊,So,贝塔basis可以看到我们刚刚创建的test DB就有了啊,那我们切一下库,Use test DB。对吧,这就进来了,Show tables现在还都是空的,一张表都没有。好,那接下来在我们正式使用之前呢,给大家介绍一下呃,Doris特有的几个概念,那么在Doris里面数据啊,都以关系表的形式。来描述的,其实就是一张表呗,你只要用过MYSQL,你也呃大差不差的,差不多意思就是一张表啊,关系表,那么在表里面是不是有行还有列这种概念呢。
03:14
相信这个概念不难理解,对吧,什么叫行啊,就是一行数据嘛,比如说我这是一个表格哎。这样子,这中间是不是一行一行的数据对吧,一行一行的数据,那纵向的来看,隔开的是不是一个一个字段,一个字段是不是就是一个列对吧?啊,这是一个。字段,这是一个字段,这是一个字段,相信这个概念没有什么好解释的,但是呢,在Doris里面,它比较特殊的地方在于利。在默认它里面有一个东西叫数据模型,数据模型在我们3.5会进行介绍,这是Doris特有的,那如果是默认的,它分为排序列跟非排序列。并且呢,存储引擎会根据呃这个排序列会建立一个稀疏索引,那我们知道索引的目的在哪里?
04:08
是不是提高我们的查询效率对吧。能够更快的,更快速高效的定位到啊对应的位置,更快的进行查找,那么呃,还有一特有的一个叫聚合模型,回头再展开讲,对吧?在这里它又分了key和value列,就是叫key列或者叫value列。那如果从我们实际应用过程中啊,在分析过程啊,K你可以理解为就是维度列,Value就是指标列。什么意思呢?比如说咱们,嗯,以这个学生考试成绩。这种。比如说求一个学生的平均分吧。对吧,求每一个学生的平均分,或者说求一个学科。的一个平均分。
05:01
每个学科的平均分,比如说语文,数学,英语,那这个所谓的学科是不是就是我们的维度啊,那平均分是不是我们求得的结果对吧?那你可以理解为这种学科就是维度列,那求出来的平均值,每一个学科的平均值就是一个指标列。它这个就是因为包含了聚合在里面啊,那具体呢,我们在3.5啊具体展开介绍啊,这个也很简单啊,行列另外一个它特有的一个分区概念,一个叫分区,一个叫table。那Doris里面呢,它也有一个叫分区的概念,分区这个概念在很多的框架里面都出现,比如说最经典的have have是不是也有分区表啊?对吧,那对于hi来讲,分区就是划分目录对吧,一个分区在一个目录。
06:00
那么对于Doris来讲,那分区呢,就是划定一个范围。那在这个分区里面还可以进一步的划分,就拆分成桶。分桶,它是怎么分呢?以哈希的方式。分筒,那每一个分筒我们称之为一个数据分片,也叫做。Tablet就有这个东西。那对于have来讲,分筒是什么?是不是分文件呢?对吧,比如说我这个分区里面某一个分区,某一个框框表示分区啊,在这个分区里面,呃,如果默认只有一个文件的话。那如果数据量很大是不是不好啊,所我们是不是可以选择按照一定的方式将这个文件拆分成多份呢?对吧?那每一份是不是这种,是不是汉服里面的分桶的概念,那其实Doris的设计也差不多啊,也差不多。
07:04
也是以哈希的方式,对吧,其实这个设计思想,很多的引擎都是这么用的啊,这也没什么,嗯,也不算什么特别的地方,那么大家就记住这个有一个叫分区,一个叫分筒,那每一个分筒我们称之为一个数据分片,也就所谓的table。好,那下面这两点是很显然的,Table之间的数据是没有交集的,这肯定啊,你原先相当于说把一整份数据把它拆分开,那拆分开的数据肯定是没有焦距的,对不对啊,独立存储的,那我们Doris在做数据的移动啊,复制也好,都是以table lat为最小的物理单元来进行处理的。啊。那分区呢,是逻辑上的管理单元对吧。那我们在做导入和删除的时候,都只能对一个分区进行操作,你不能同时对好几个分区。
08:04
这个其实使用上跟汉服,呃,也有点像啊。按照我们再按照生活中来举个例子啊,那房子大家总懂吧。对不对,那比如说你是自建房啊,或者说就小区小区商品房好吧。啊,你买了一套。一套。一套我们称你可以理解为一个分区,对不对,就一户嘛。但是你的户型设计里边,你不可能说中间就是一个大开间,都没有任何墙壁分隔,没有隔房间,没有隔客厅,没有隔卫生间,那是不合适啊,那我们在实际在套内是不是分为啊卧室。呃,客厅。卫生间厨房是不是把它进行的一个空间上的划分呢?切分成一块一块的小空间对吧?那你可以理解为在呃分区内部,我进一步将文件数据的文件拆分成一个一个的数据分桶,对吧。
09:08
那这个就是呃,所谓的tablet。其实也就是分头这个概念。这个应该很好理解啊。好,呃,这是一个基本的概念。
我来说两句