00:00
好,那么接下来就要开始了,同学们,那我们先建一张表啊,一会儿拿来用啊,咱们也不拿来那么大的表了,因为咱们还要把历史数据演示一下,怎么弄进去,那那个几百万我扛不住啊,那我建了一张hit test,然后我只截取了他其中几个字段拿来用啊。现在是一张空表,来见一下啊,不是我在新版的阿杜三上面对吧,好。创建了一张表叫he his test,在导数据,直接通过insert into的方式啊,我查的是官方的这张表,厘米的1万条,我查1万条进来就五个字段,呃,几个12345个嘛。他1万条进来好了,OK,那现在有了,现在我们要准备真正的来操作了啊,创建物化视图来看一下语法。
01:00
我们刚才说是不是这个地方不一样啊。啊,物质化的视图,这是关键字啊,然后起一个名字MV,就是这两个单词的首字母M和V嘛,V就是V啊,那后面的什么表引擎呢,还有什么分区字段呢,欧拜字段呢,用法跟你建表的时候一模一样啊,你也要指定完了之后咱们通过as的方式。把数据还有逻辑保存下来,那这边我做了个什么事呢?就是count了一下URL,上了一下一个字段,那就是是不是做了一个聚合呀,OK好,那我这边咱们生产环境习惯性的加一个过滤条件有啥用?你不加也行。是不是我只对这个时间点后面的数据做一个存储操作呀。对不对,相当于说多多了一个过滤条件嘛,其他没少啊没少,那路拜嘛,自然而然我们做了路拜对吧?好,我把语句薅出来。
02:09
然后把这个注释干掉。接下来我们创建一下,创建好接下来我干一下事,Show table,首先看一下咱们的视图表,视图是不是咱们的时候指定的名字,那你看还有一个什么。点音了点视图名,这个就是它默认创建存储数据的那张表存了。好吧,那同样的,如果我再创建一张,我再给你们演示一下啊。呃,这个我叫二,我加上to这个语法to,哈哈哈,对吧,那应该我们瞅一眼。
03:09
诶。我看看啊,找了一个什么,应该没错。没毛病啊,我看哪里错了。TWO2没考全吗?我再试一下啊,再试一下UD。Engine。看看能不能行啊。
04:03
啊,这个回头再看吧,这个。应该是少写了一个啥。那我们创建完之后,我们来试一下导入一个增量的数据啊,什么叫增量啊,是不是现在我试图创建好啊,现在是不是一个什么空来我们查一下呗,Snap新from is MV这个是不是物物化视图的名字啊,零了一个数据都没有,为什么没有,我们没有加刚才不推荐的那个关键字,如果你加了这个,它创建过程是不是很久啊,因为他要慢慢的把数历史数据全部给你走一遍逻辑存起来,那这个时间就比较久了。那我们不加这个关键字,它就是只有增量的方式,也就是说目前是个空表,只有你有新的数据来,它才会变啊来我们来试一下啊,现在这张空表我们导入一个数据,我现在插入谁啊,同学们插入谁?这是什么表?
05:11
原表吧,我插入原表能触发固化视图,把这个操作,把保存的操作执行一遍,并且把结果存储下来,现在是不是仅仅是一个插入啊,十条对吧,我们试一下,我插入十条数据对原表好,这个时候我再来查。他是有了会有了,就像什么呢?呃,一个你的收入,你现在是拖家带口的一堆压力在你身上,你收入了,这个月工资到账了。比如说3万,那你说一下哎,这贷房贷还5000还1万啊,车贷还5000对吧,小孩经费1万啊,不要太高了啊5000啊,然后这边平日常销5000,你不吃别人要是啊,你不要说你吃那么多对吧,你不吃别人吃啊对吧,还剩下还剩吗。
06:17
你不得交五险一金呢,对吧,你老婆啊,不你你你对象你爱人又买了个啥对吧?5000又没了,再见。就是你工资一到账,是不是就触发了一些事了,对吧,那这个一样的,你看我刚才插入的是原来的那张数据表A,这时候跟他绑定的物化视图就会被触发,并且呢,数据是存着的,来我们来查一下那张表啊,时代的新lo点,我不知道能不能查啊。查不了啊,不能直接查啊,不能直接查,或者说可能要加一个关键的,哎,可以查你看。
07:06
因为点呢不规范嘛,那表明又带怎么办,加一个标号嘛,对吧,跟关键字冲突,加标号啊反引号啊,你看这是不是跟刚才数据一样,从这几个操作大家能看出来的数据有没有呈现呢。有吧,存的是不是默认把我们创建的这张表。这就是物化视图啊,是增量的数据。那么我要导入历史的数据怎么办?现在是新增加的数据啊,那原来已有我老板是差的多少,1万条嘛,那1万条我也想要计算一下,那怎么办呢?我之前也提了用insert的方式啊,那这边咱们语法就要变一下了,这时候插入的是谁?是历史数据,是往视图里面插的,用你插原表,那不相当于说原表数据又增加的吗?是吧?然后呢,后面写什么物化视图里保存的逻辑是不是再跑一遍,那说那些逻辑我跑一遍再插,重新插入到视图里就OK了嘛,啊那这边我只演示了一天的数据啊,一天的数据来我们再导入,好再查一下。
08:26
你看是不是有了,这就是历史数据导入的一个方式啊,那么目前这个物化视图在呃,用到click house的场景下呢,基本都会去用,你包括像一些知名的什么腾讯字节,网易等等,他们用click house也会用到va来解决一些问题啊,因为它确实能提高咱们那个聚合效率,并且数据还存下来了,那么目前我介绍这种方案也是。生产上经过实践啊,你不要一开始加那个关键字,你要历史数据就用现在的方式导入,那你想想咱们实时数仓项目能不能改造呢?可以吧,某些固定要做的指标,我是不是也可以做一些物化视图,对吧?那你现在逼格就上去了,对吧?
我来说两句