00:08
各位直播间的小伙伴大家晚上好,欢迎来到云家社区直播间,然后我们今天是燕溪学堂胡松楚专题第二期直播,我们邀请到的,本期直播的话,我们邀请到的是于洋讲师,将为我们分享数据湖加速,数据湖加速器的透明加速能力以及统一命名空间管理能力。如果在讲解的过程当中,你有什么问题的话,你可以打在评论区,会后讲师会做一个集中的解答,如果您的问题有中有幸被抽中的话,你有机会获得一份我们提供的精美礼品。然后好的,接下来我们把时间交给于洋老师,由他来给我们做分享。嗯,各位云家社区的朋友们大家好啊,很高兴能在这里做第二期的一个云云期技术学堂的一个分享,我我这次的分享主题的话,主要是围绕FS的管理机制和透明加速两个能力来啊做介绍的。
01:14
嗯,今嗯,今天的一个主题的话,就是会说呃,会围绕这两个主题就是说嗯。呃,帮助一些,呃存量的一些大数据客户怎么去使去理他们一读写使用去一加速。嗯,首先的话,我做一个简单的一个自我介绍,我是217加入腾讯云对象存储团队的,然后一直在做就是云端大数据数据存储方向的一个技术研发工作,就是如果是我们腾讯cos的用户的话,应该知道就呃用户一些大数据呃呃组的用户的话,应该是知道系统的,我我这边的话也是系统的一个作者,我目前的话主要是在做就是F方面的一个,包括F的一些核心特和就是内核的一些,主要都是在做这这块的一个情。
02:14
另外的话,我也是阿帕奇哈和欧,还有阿拉斯社区的一个contributor。个。第一期的一个呃讲,呃讲座的话应该是已经说过了,就是嗯,我的同事应该跟大家已经介绍过了,我们我们主要是呃在一个客户端,主要是致力于在客户端做一些本地化的一些加速的一些事情,就包括说一些data,还有一些数据缓存,还有一些数据缓存方向的一些加速能力上。
03:10
在这块的话,我们也做了就是很多的一些工作,就包括一些控告警,还有认证以及日志管理方面的一些事情,我们也已经就是产品化的能力已经也支撑起来了,另外的话在就是不光是在大数据能力加速上,包括在A。呃,首先的话,嗯想给大家看一下,就是F的一个整体架构,F的话,其实呃,它是一个非常传统的一个就是分布式,分布式内存,嗯,缓存系统的一个架构,主从式的一个架构,就是有一个master和若干个这样子的一个主的一个分布式的一个缓存架构,然后嗯的话,它的master的话也是支持就是高可用的这样一个架构的,我们主要是基于keep和FT去做,去做的一个高可用的一个事情。
04:17
然后它在U的一个支持上的话,就在缓存的上的话,就是不光可以支持我们讯云的一个S的一个还可以支持H,可以支打的话,应该就是我们自己的一个cos和CDFS云上HDFS的一个场景,加速场景,主要是一个存算分离的一个加速场景。的话,它本身的话,在缓存这块的话,在缓存这块我们也是支持呃,多缓存就是包括内存,还有SD和的这样一个架构也是能够支持的上的,就是这样子的一个支持呃分层分层的一个缓存,缓存介质的一个支持的话,是相当于相当于是为用户就是提供一个比较成本可选优优化的一个方案。
05:16
就是说可以在性能和成本上可以获得一个相对比较好的一个平衡。首先的话,我就开开开始讲第一个主题,就今天的一个一个主题的一个相关的一个介绍。这个的这个相关的介绍的话,主要是围绕一个多业大数据平台和数据场景的构建来,呃,就是展开的。首先的话,我给出一个真实的一个客户业务场景的一个案例,其实像这个图的话,就是右边这个图,呃左边这个图的话,其实大家应该不是很陌生,在传统的一个大数据平台呃构建上,或者说是一个数据的一个平台构建上的话,这种这种场景是用的是比较多的,就是我,嗯,比如说某一家公司,它呃既有一些数据仓库类的一些业务,也有一些像实时流计算,还有一些就是test flow,做人工方面的一些任都会有一就是说但是这些话自己一些自己的一运行特就比如说像嗯一些仓的话,有一些客户的仓的话,他可能会倾向于说,呃主要是做一些BI报表的一些分析,然后数据的话会。
06:36
存在一个短暂的一个就是,呃,生命周期相对来说是比较短的,但是在存在分的那个时间,时间段内的话,可能会是比。A,训景就络的一些客户的话,他们可能会在做一些。
07:09
呃,Spark的一些事情就是类似于计算,做迭代计算的时候,也也会有一些就是呃不停的去迭代数据,呃数据的一个迭代,读取的一个过程。这时候的话,如果说我们采用的是,嗯,传统的比如说或者说是甚至是分构上个方案的话,呃,数据数据的一个读取的,可能会反复的去跟这个数据磁盘啊,或者说是远端的一个的话,会有一个互。那么这这种时候的话,就是说我在这种多业务场景下的话,我怎么能够让一个存储,嗯系统就是嗯能够满足各种业务,它的一个读取数据读取的一个,嗯存取的一个需求呢,就是比如说有一些数据它是不需要缓存,很有一些数据的话,它是它是需要保存强一致的。
08:07
这时候的话,我们FS这边的话,就设计了这样一个东西,就设计了一个name这样一个概念,这样是是是一个什么样的概念呢?就是说诶,比如说我有一个嗯,一家公司,它有很多的一个业务部门,然后每一个业务部门的话,嗯,它都可以有自己的一个name,然后它的name space的呃,就是挂载的存储的话,也可以是不同的一个存储,然后同时的话,呃,一个name的一个读写策略,它也是可以是。呃,不同的,就比如说刚刚说到的,前面说到的一个业务,它有些业务是需要一些呃一致性读取,并且呃数据能够快速淘汰的这样一个过程,然后有一些业务的话,可能是需要就是尽量的能够一些中间结果,然后让他就是catch里面。
09:08
我们就设计了这样一个概念,去去解决这样一个问题。的一个,呃,使用方式的话,它是怎么样子的呢?就是我们可以过就是去使用一个东西是。支持U,包括有S,然后还有一些还有是大家去就是实的去演示一下,就是这个东西是该怎么去用它。这里话我先尝试切出来给大家看一下,就是我准备一个演示,然后去演示一下大家怎么去使这个去理多个的一个数据读写策。
10:28
好了,我现在我的一个屏幕的话是切到了一呃,就是一个演示集群的一个需要命令行。就是这块我不太清楚大家能不能看到,应该是看到的。这个这个集群的话,是我准备的一个比较干净的一个集群。的就是的话,目前也已经启动起来了。这里的话我先给大家演示一下,就去。
11:02
Name的话主要是通过就是呃命令行啊这些来创建,就是可以通过命令行去创建,它怎么去支持的,命令行的话,是这个NS这个命令行去支持的。个N命令行里面有些们直样子去一持建些site name space policy和TTL的一些子命令。命令么去使用,也可以通过help命令,命令使。然后这里就会有一些详细的一个介绍。然后演示的话,我这边给大家演示的话,主要是。可以先就是创建一个创建一个来。我这里准备了一个cos的一个存储演示。
12:57
直接把这个粘过来。
13:00
那我直接把这个命令在文本里面先写写一下,然后直接粘过来。好吧,我现在就创建好了一个name了。然么去看个。NSLS的命令可以去看到这个就是已经创建成功了。Space创建了以后的话,它默认会有一个策略,读写策略,它的写策略的话是一个策略,读策略的话是catch的一个策略。后面的章节的话,我会给大家详细介绍一下这些策略的一个区别,然后同时的话,我们也是支持TT。
14:07
就是TL生命周期一个管理的功能。条L的动作的话,我们目前支持三种,就是一种是delete,还有一种是还有一种是除当缓存。然后我首先演示一个就是。嗯。功能的使用。目前的话,我们能看到这个的话,它是一个策,是一个策略,策略的一个效果就是我写往这个里面去写这个数据的时候,它是一个一致性写一个。方式就是写了个策的是件在呃缓存当中,就是缓存当中已经命中了的话,就不会再去U上去再去。
15:22
这个文件了,就是优先会从当中缓存当中去这样一个文件。这里的话,我先拿一个文件来演示给大家看一下。比如说我现在这个文件当中去。一个。去一个文件进去,我随意的一个文件。我这里准备好了一个文件,就是在这个上面,在这个上面。这个test下面的话,我准备的一个文件叫做我们可以到时候看一下一个内容的一个情况。
16:04
我会把这个。这个文件放到。就是这个上。好了,这个文件已经被放到了S这个下去了。来看一下。这块的话,大家能够看到的一个呃几个点是说,呃这个百分百的意思,就是这个文件的话,已经百分百的就是缓存到了缓存当中,另外这个persisted的意思的话,就是说这个文件已经一致性的写到了持有到了那个就是底层上。我们现在也可以开一个,我开一个页面可以给大家看一下,就是这个文件是不是已经持续上去了呢。
17:13
好了,我现在切到了腾讯云的一个控制台上来。然后我们可以在这个存储里面,可以看一下那个文件是不是已经。持过来了。这里的话就是能够看得到,就是这个文件已经化的写到里。那么刚刚说到了就是。FS的那个读策略,刚刚的那个的一个策略,它是一个catch的一个读策略,Catch的策略就是说如果缓存当中已经存在了这个文件,然后呃。
18:04
他如果下次再去读的时候,他会直接去读缓存当中的这个文件,不会再去呃底层上去读取这个文件,因此的话,我们如果去cat这个文件的时候,它得到的一个效果就是会输出缓存当中的一个结果。然后我们再切回来,再看一下就是。再切回来看一下是不是这样一个效果。我可以看。
19:02
1234。然后我们来看一下这个文件是不是对的呢。嗯。等下我来看一下这个文件是不是对的。
20:08
能够看到就是我们这块的文件,它是这样输出了一个刚我进去这样一个文件。内容,然后我我现在是要就是说我在比如说。呃,我现在想要给大家演示的是一个,就是去缓的这样一个效果。所以的话,我去在后台就是。
21:11
就是我现在重新上传一个文件,从后台去上传一个文件,看看是否能够同步到。然后这里我可以给共享一下一个传。然后我会传一个同名文件上去修改。OK,这个文件已经传上去了。那我们再来看一下是否能够呢?
22:00
这个文件我已经修,呃,修改成了我自己的一个名字的另外的一个内容。可以再来看一下他是否能够。再切回来。然后发就是切回来以后,你发现其实其实它读取的数据的话,还是一个之前的一个数据并没有同步到,就是底层系统的一个。那么这个时候我们刚刚说到了,就是我们还有一些其他的一个策略,这个时候的话,我可以使用哪一个读策略呢?就是我可以使用一个一致性读的一个策略。我们通过修改这个。的一个一致性的一个策略。
23:08
对着他。Policy以修这样。好的,现在我们看一下是否修改成功了。成。正确输出刚。
24:13
你看一下吧,就是能不能够。因此的话,我们的话是能够提供就是说策略就是级别的一个策略的一读写,策略的一个管理,就是你可以根据你自己的一个需要,就是呃,是否需要一致性的去读,一致性的去写,和只需要缓存这样一个性能和数据安全性的一个要求去平衡。然后我们再来看一下后面的一个内容。
25:09
目前的话。就是像实结尾的这种结尾的话,都是提供的是一致性读取的一个。一致性读取的一个呃,写入的一个能力,然后的这样一个策略的话,提供的也是一种就是说呃,一致性读取的一个能力。像呃比较推荐的,我们目前比较推荐的还是默认的这种,就是说这种策略,然后的话使用的是开策略,这种的话写入的数据的可靠性是可以保证的,然后呃读取的话,读取的话可就是说数据一致性上。会有一些就是呃损耗,但是性能的话会得到一个比较好的一个结果。
26:17
的一个加速的能力。首先来说看一下,就是整个业务的一个背景,就是比如说现在有一些大数据,呃客户的话,他们使用的客使用的那个底层存储可能是GS,或者说也有可能是con,也有可能是呃DS就OS之类么,帮做的获取到就是FS的一个加速能力。
27:07
变的速的加。就是信息,信息。这块的大讲一大。我们要是我们的这个转换器,透明加速的一个户的一个转换器,配合在呃,Master节点上管理的的径的话,就能完成的一个转换。
28:24
就是可以把就是原先的一些径的话,通过一些映射信息的话转到。以帮助用户就是获得一个加速的一个能力。还是来说一下,就是明加的一个使用方式。当加加入到这个中以后,那么就可以就是过一些置来速的获加能力。
29:04
前支持的透明加速的一个底的主要是在H上面,就是讯种储系。然后他他也会需要做一些就是呃配置上的事情,就是我们需要把和S的一些的能够重定向到我们,呃,就是前面说到的那个呃兼容类上来的话,我们就获获得就是的一个加速的一个能力。需要这里的话,我给大家也补充介绍一下,就是说呃有一些嗯朋友的话可能会问,就是说如果嗯全部导到我们这边来了以后,我们这边如果呃不在那个的范围内,径不在的范围内,如果出现了一些就是围的一些的,不会就是不到,其实不是这样的。
30:07
我们的那个透明加速的话,我这块也了,就是说可以可以对一些挂载径也可以做一些加的一些事情。然后这里的话,我还是切回去给大家,就是演示一下,就是透明加速的一个使用,可能比较直观一点。我们还是切换到这个演示集群上来。这块透明加速的那个的话,我已了已经到。
31:00
然后这块是能够到已经置过。这里的话,我我通过一个命令去演示一下,大家应该能够。快速的就能看到了。首我们来看一下,就是就是透明加速的一个前提条件是说,呃认的一个前提条件是说,我们透明加速的径的话,都是与一个具体的相关的。
32:08
所以的话,我首先来看一下这个。这个路径我是否能够进行一个透明加速的一个事情。这里的话为了演示的一个方便的话,我这个配置的话没有写到里面去,直接通过方式。大家来看一下是否能够看到效果。这个的话是就是刚刚下的那个就是文件。这里的话可能看的不是很清晰,那么我们现在来做一个什么事情呢?我来放一个文件到这个。
33:04
比如说我放。放入一个另外一个文件到镜像。看一下。这个路径上面有什么。到另外一个路径下去放一个文件。比如说我把这个license这个文件放到这个径,如果没有透明加速的情况下的话,道理应该是放到了那个去,然后缓存里面是不会有就是这样一个文件的。那我们来看一下,他是不是放到了那个里面去呢。这个地方。要写一个完整的一个路径。他如果你不写完整路径,它就会找到那个。
34:01
来写这样一个东西。好了,写进去了。那我们来看一下,就是这个路径,它是不是有东西了呢。OK,我们现在是写到了,就是底层去。我们现在重新来写一个文件,我们重新来写一个文件,看一下是不是能够写到。给到缓存里面去。来修改一下,看一下。首先确认一下,就是写policy的话,它是一个所有的一个policy。那么我们可以说。可以说写一个开策略可以写一个。
35:03
的一个策略,看一下是不是能够写到。Policy里面去到开始里面去设置一下。看一下的值。我们先写,先写到缓存里面去,然后一步的到那个就是底存储。
36:10
这里应该要填那个,要填一个。数字。你把这些先清一下,然后我们来看一下这个策略是不是成功了。然后我们看到这个策略已经修改成功了。然后我现在重新再一个文件里面去。那是不是成功了?
37:07
重新出了一个什么文件,随便出了一个文件的。比如说这个文件。应该是用这个来做,应该使用。好,这个文件已经被put进去了。现在我们来看一下这个文件。它有没有在。我们在缓存里面。
38:19
好了,这个文件已经被的写到了这个里面,我们使用了这样一个,最后把这样一个文件script下面个文件写到了明的,写到了一个缓存里面去。因此的话,我们是可以通过做一些加速的事情。同样的话,这块是一个加速的一个能力的一个概述,我也可以给大家一下,就是关于写之前说的是写加速,然后这块我给大家演示一下关于加速的。就比如说我去读取这个路径,看它能不能够透明的预热到。就是缓存里面来呢。
39:01
还是使用这样一个方式。嗯。
40:16
嗯。再把它一下。把这块内容cat出来了,然后我们不需要关心内容,只需要看一下这个文件它有没有被catch到缓存中,OK,我们看到就是。这个文件的话,已经成功的被catch到缓存当中来了。我们使用的是con这样一个路径去访问这个文件,但是它自动的就缓存到了中。因此的话,我们的透明加速的读写的话,就是这样一个使用方式。就是在对用户而言的话,就是不需要做任何改动就可完成整个加速的一个能力。
41:01
来回刚刚的课件。OK,我们再切回这个刚刚的课件,然后。就是关于刚说到的这个地方,就是说我们呃的话,我们透明加速的一个径的话,是需要与相关的,因此的话没办些功能就持。如果问的径不在某一个具体的加。改G得到一个相对比较好的一性能。如果的以外。
42:05
嗯,文件的话就是以速度U读取速度。去访问的。这块的话,嗯,对于用户的一个收益的话,就是说嗯用户的嗯有一些有一些业务的话,它是可以就是绑定在一个具体的下,然后去获得一个加速能力,有一些嗯,他可能不希望去缓存,这时候的话他就可以不用去定,然后但是但是对于他上的业务而言的话,是一个统一的一个图,统一的一个体验。这里的话,我给大家也给出了一个,就是公加据的一,我们自己的一个论取了TS t1测试是一。
43:02
一个。呃,我今天演示的内容的话也到此结束了,这里的话我给大家做一个下期的一个预,是说我们下一期的话会侧重做一些table管理和缓预热能力的一个介绍。然后的话这里呃,屏幕上的话,我也给出了一个就是我们抽奖的一个链接,就大家可以就是扫一下这个链接去,就是参参与一下,会有一些精美的小礼品给大家,然后另外的也欢迎大家关注一下我们腾讯云存储的一个号,不定期的会在这个腾讯云储的就是当中去发布一些我们最新的一些呃功能能力和优化。
44:17
一些文章上去,然后大家都可以去上面去关注学习,或者说是一起去交流一下。谢谢大家,就今天我的内容就大概到这里了,因为是这样的,是这样的,就是非常感谢,非常感谢于洋老师的精彩分享,然后呢,直播间我看有好多小伙伴很热情,然后也问了一些问题,嗯,接下来呢,就是呃,会抽三个问题做一下解答。然后呢,我我再跟大家详细说一下这个页面,然后就是这个抽奖链接,如果直播间的小伙伴还没有抽奖的,可以直接去扫码去抽奖,然后旁边的那个嗯,二维码呢,就是我们腾讯云存储的公众号的二维码,如果您对这一块感云存储比较感兴趣的话,可以关注一下,然后呢,就是他会不定期的会发一些,发一些就是关有关云存储的知识以及一些资讯,大家可以看一下。
45:26
OK,我这边也就是收到了,就是主持人发来后发来的一些问题,这里挑三个问题给做一下解答吧。首先的话,第一个问题是大家问到就是缓的一个汰略是什么样子的,我目前的话主要是支持的是两种,就是一种LRU法,都是可以去置,就是去做一些淘汰的,主要是根据你的一个业务景来的,这个网上的它会给出一个配置信息,就是你可以通过去指定那个算法的话就可以。
46:02
可以完成一些淘汰的一些,呃,策略的一些设置。呃,另外还有一个问题是说缓存是基于文件的还是基于数据来管理的,我们是基于数据来管理的,就是呃,落到落到底层的话,就比如S那个S种是个一件,但是呃,我们预热上来的时候,就是在缓存的节点的一个缓存块上的话,我们都是以block的形式去存放的,每一个block的话,默认的话是64兆的一个大小,然后这个block大小的话也可以去修改它。另外的话,缓存的一个副本数的话,我们也是可以去调整它的,就比如说有一些用户,他很希望每一个节点都能够获得比较强的一个data的一个加速能力,这时候的话我们也可以去调,通过调整那个缓存的副本数,能够使得计算节点的话,能够获得更多的一个就是data的一个数据读取能力。
47:09
呃,另外的话,我看到还有一个。用是在问什么情况加保可性。的用户而言的话,他们,嗯,比如他们的数据仓库,他们的table table可能都已经写写定了,是的一个径,或者说是一个S的一个路径,那么他不想去修改这些路径,因为修改的话可能会对他的一个业务造成一个比较大的一个影响,这个时候的话,我们就可以推荐使用透明加速的能力,就是我刚刚演示的那种,你可以通过通过在或者说是你的作业里面去指定一个透明加速的一个配置,然后就可以通过他就可以通过这个配置去拦截所有和D的一个请求,然后把这些呃数据的一个读取的话,全部转发到F上去,然后FS的话就可以去利用他自己的一个缓存加速能力,去把DF和上的数据快速的把它读取上来,然后给用户提供一个完全无感的一个加速,加速效效果。
48:31
另外的话就是再再回答一下是如何保障可高可用的,首先的话,我们的master节点的话,我们的master节点前面也说到了,我们master节点是支持主备,主备的,就是基于ZK和协议来做主备,另外的话,呃,包括我们像worker节点的话,ER节点,其实这块呃,它不存在一个高可用的一个问题,因为什么呢?就是。
49:00
ER节点的话,我们是一个缓存节点的,数据的话,它的副本不是用来做就是数据可靠性的一个事情的,它主要是用来做数据,数据快速的去加读上去,那果节了么。补充一个新的一个work节点上去,然后他在下次读取的时候,因为数据都是依赖于底层,底层的数据块去做,做那个就是读取的,那么我们数数据的话,就可以快速的从底层去预热上来,同时的话就是一个节点的话,如果你配置了多个副本的话。如果配置的多个副呃副本block的话,那么我这个新加入的节点,如果catch missing,就是这个block没有命中的情况下,它还有一种还一种机制叫做remote hit的一个机制,就是会从会从它的集群当中的临近节点会去把那个就是副本块拉过来,快速的去加速。
50:02
嗯,这块就是我回答的三个问题。好的,那谢谢于洋老师,呃是这样的,就是我现在看到评论区有一些人说这个二维码扫不出来。呃,是抽奖链接的二维码扫不出来对吗?还是还是说是那个公众号的二维码扫不了呀。是这样的,如果是二维码扫不了的话,你也不用担心,腾讯云存储的那个公众号,你可以搜一下,然后去关注,然后我们燕溪学堂湖从储专题的话,这个活动是有九期的,然后目前的话是第二期,我们每一期的时间就是我们现在排期是每周每周四晚上七点到八点这个时间段,然后都会有相应的直播,然后在直播之前呢。在直播之前,大概是周二左右,我们在那个公众号上会发那个推广软文,这在那个里边你们也可以抽奖,然后也有具体的就是说本期的主讲内容,内容概要以及讲师的介绍,这些的话,可能你们关注的东西会更详细一些。
51:15
好吗?然后还有就是刚刚袁老师不是回答几个问题吗?然后抽中问题的就是小伙伴的话,有有机会获得我们的那个礼品一份,然后具体的领取方案呢,我再跟大家说一下,就凭那个问题截图,在腾讯云公众号回复您的收收货地址和问题截图,我们将会在一周之内给您就是发放礼品。好的,那我们今天的直播的话就到此结束,谢谢大家,感谢感谢。
我来说两句