00:00
那接下来呢,就到我们的第五章这个需求呢,真的是太简单了,对吧,我们就一块儿来看一下,把这个写完做一个测试啊呃,那第五章呢,是这个支付的一个宽表啊,首先在支付表当中呢,我们主要支付呢,它是跟订单挂钩的,跟订单挂钩的,但是未来我们也希望计算一个什么指标呢,我们希望计算一个根据这个。商品对吧?来计算它的一个支付的总金额,被支付的件数,被支付的次数,类似于这样子的内容对吧?好,但是呢,他是跟订单挂钩的,所以他并没有商品的明细啊,没有商品的明细,没有这些东西,所以我们需要把这些东西呢,给它关联起来,方便后续去处理,对吧?呃,那这个地方呢,其实有两套方案,因为我们已经把订单和订单明细关联了。
01:01
对吧,所有的信息,我们支付表,所有的信息,需要的信息啊,在我们的。订单宽表当中都已经存在了。啊,都已经存在了,好,那这个时候呢,我们看一下,呃,一种方案将我们的订单宽表写到里边,也就是说将订单宽表做一张。维度表来用。啊,将订单宽表输出到做一张维度表来用,对吧,这第一套方案就跟我们之前访问这个呃uz ID,通过user ID访问用户表,通过province ID访问这个审判表一样的,那另外一个就是说呃订单宽表。消费订单宽表这个数据,然后呢,消费这个支付表的数据,使用双流招引的方式。使用双流状元的方式来做这个事情,好,第一方案二方案,呃,那大家告诉我,大家觉得哪种方案更好一点,首先第一个问题啊,第一个问题这两种方案能不能理解。
02:08
啊,先回答第一个问题。先回答第一个问题啊,能不能理解这两种方案都不难吧?我相信大家给我的答案应该都是一啊。对,这两种方案应该都不难,是不是?好。那等大家扣一扣差不多啊,再回答刚才的问题,就是说这两种方案,第一种跟第二种,如果让你选,选的哪一种?然后告诉我理由,为什么。啊,大家都选二了。
03:04
为什么呢?万达你说一下呗。对吧,你扣二扣的最多,你从最开始就扣了三个二,中间又扣了三个二,现在又是两个。支付宽表在卡卡直接消费,那我保存到不也一样吗?对吧,你你这个理由不足以说服。那那我我跟你说一下啊,那这边看啊,用流的方式大家都知道。I欧曼啊,大家都知道这个地方呢,你看啊,我我我给你说一个反例。啊,你要反驳我啊,你你说二嘛,那第二个我我知道他有什么缺点,什么缺点呢,你看啊,那我问大家,你们在下一个订单之后,他给你多久的时间让你支付啊。
04:15
嗯。好15分钟,那有的平台可能时间还更久一点,有半个小时的。对吧,好给你15分钟,呃,那也就是说我15分钟以内。去支付是不是都是合理的?我在15分钟之内去支付都是合理的,好那你告诉我订单表跟支付表啊,订单宽表跟支付表,在做创意的时候,这个那个那个叫什么,时间范围应该写多少。
05:19
对,班长说了,这个状态呢,可能很大。对吧,因为我们是不要,因为我们正常的时间是15分钟,也就是说呃,订单产生了,到支付数据产生,它可能是这个15分钟。啊,他可能15分钟对吧,所以我们的上届或者下届至少其中有一个是要设置为15分钟的,那这个就看你是支付表还是订单表写在前面对吧,那这个15分钟呢,状态可能很大啊那。我这个点在仿包,你那你选择第二个,你选择第二个的理由是什么。
06:14
你选择第二个的理由是什么?你看,被我一反驳,没人说话了,大家开始不都是选第二种吗?简单,不用查询了。订单表变化快,查询频率很高,不适合作为维度。订单表变化快,查询频率很高,不适合作为维度好写。不用频繁写入,好写好写倒是一个点啊,好写,那我们查询维度的那个代码不都已经写好了吗?对吧,呃,蒋总的这个我没看懂啊,就是订单表变化快,查询频率很高,不适合作为维度。
07:06
有维度的查询频率高吗?我不觉得啊,你所有的事实表来了不都得查维度吗?还得查六次呀。对吧,其实你要想一个问题啊,就刚才我们说的这个状态呢,保留15分钟是不是,那我们是不是最多也就保留个15分钟。状态里边,但如果说你写到呢,它是永久保存的啊,永久保存的。设置过期时间啊。要永久保存,其实写的点大家说的没问题啊,呃,第一个,那本来我们数据就是要写到这个卡夫卡的,对吧,你还要多写一份,这是一个理由啊,你要多写一份爱。第二个点呢,在于爱斯呢,它正常情况下来说是永久保存的,对吧,但实际上我们订单宽表呢,不需要永久保存,它毕竟是一个实时表,不是维度表啊,那另外同学说双流装影啊,这种方式编码的方式可能更简单对吧?啊,可能更简单一样啊,没问题啊,综综合起来看,其实第二种会更优一点啊,更优一点,因为在公司当中,你15分钟的一个状态是没有问题的。
08:19
15分钟的状态没有问题啊,我就是其实就忽悠一下大家对吧,看看大家对于这些东西的一个理解啊,套出来有多少东西啊,套出来你你你掌握多少东西啊,然后万达说问了能不能设置过去时间可以。艾斯,里边也有这个气体啊?啊,也有T点啊。好,那也就是说我们要用这种方案了,对吧,要用这种方案了啊,其实就是共同讨论嘛,啊两种方案呢,各有优缺点,各有优缺点啊,你到工作的时候,有时候你的领导提出来一个方案之后,你要多思考思考,从各个方面去想一想,对吧?啊,多想一想这个东西应该怎么实现啊,实现起来之后有什么难点啊等等的这些方向啊,所以我们最终还是选择第二种啊,选择第二种啊,因为没必要再往这个写一份了,我数据本身正常的就是要写到卡夫卡的,对吧,所以没必要再往去写一份啊,然后呢,你不光写进去,你查,你这边关联的时候还得查,对吧,那无非这边就保留15分钟的一个状态,那在生产环境当中,15分钟状态无所谓的。
我来说两句