00:00
那上节课呀,我们分析了数据是如何在大数据组件之间来进行流转的,那我们有这么多的大数据组件,每一个组件我们应该选择什么版本呢?好,接下来我们就来看一看框架版本的选型,那说到框架版本的选型,首先阿帕奇大家都知道它是一个开源免费的版本,但是呢,它有一个问题就是运维起来比较麻烦,组件和组件之间的兼容性我们需要自己调研,什么叫组件之间的兼容性,你比方说我们现在有两个组件A和B,那A组件呢,它需要依赖于JK的3.5.6的版本,那B组件呢,它需要依赖于。JK的3.5.7的版本,那你说我是部署一个3.5.6的JK集群,我还是部署一个3.5.7的JK集群呢?那分析一下呗,我是向上兼容还是向下兼容,假设我先部署一个3.5.7的,我看看行不行,那部署完3.5.7的,我发现B组件它可以完美运行,但是A组件它能不能呢?哎,它不一定什么时候它行,它什么时候不行啊,你假设我的3.5.6的JK在升级到3.5.7的JK之后啊,里边有这么一个类名,它发生了变化,之前有一个类名叫做CLASS1,那它在升级之后,这个类名变成CLASS2了。
01:32
那你说巧不巧,刚好我的A组件它就调用了JK集群当中CLASS1这个类,然后呢,我们部署了3.5.7 class1这个类没了,变成CLASS2了,那A组件啊,它在调用CLASS1这个类的时候,就会发现当前这个类名它不存在,所以说我A组件就会报一个错,叫做class not found,那对于A组件来说,你向上兼容它就有问题,那我向下兼容呗,我部署一个3.5.6的,我们看看行不行呢?3.5.6,那部署一个3.5.6的A组件,它肯定是可以完美运行,那我们分析一个问题啊,3.5.6和3.5.7它肯定会有一些版本的改变,你比方说3.5.6~3.5.7,它有可能啊,就增加了一些新的功能,那我的B组件它就刚刚好要使用这。
02:33
一些新的功能,那你用3.5.6的版本,它根本就没有这些新功能啊,所以说B组件它也不能用,那这个时候那有同学说了,你用向上兼容也不行,向下兼容也不行,那我怎么办呢?那就需要我们自己来解决组件和组件之间的兼容性了,那你比方说我们部署一个3.5.7的,首先让B组件它可以运行,然后A组件你不是不能用吗?那我重写你的源码,把之前调用的这个CLASS1的这个类名,我给你改成调用CLASS2,改完之后我给你重新编译打包上传部署,那接下来它就会直接调用3.5.7里边的CLASS2这个类了,那它A组件也就不会报错了,那这个呀,就是阿帕奇版本它的一个利弊啊,那有同学可能就说了啊,在我刚刚描述的这个过程当中,我们需要修改框架的源码,有同学可能觉得自己的实力不够。
03:33
哇,那阿帕奇的版本我们是不是就不能用了呢?其实不是的啊,在上微谷的电商数仓这个系列课程当中,所有组件之间的兼容性已经都帮助大家解决完了,你们的问题我们都已经帮你解决了,那么我们还是建议大家来使用阿帕奇版本的。好,那说完阿帕奇版本呢,在之前的课程当中,我们还学到了CDH,那CDH它到底是什么呢?那阿奇大家都知道,它维护了一整套的大数据框架,只不过组件之间有兼容性的问题,那CDH啊,它也维护了一整套的大数据框架,而且呢,它还是基于阿帕奇版本来进行维护的。
04:17
那它呢,有这么一个好处,就是帮我们解决了框架之间的兼容性,那有同学就说了,你CDH这么好,我为什么还要用阿帕奇呀,我直接用CDH就完事了呗,CDH它是曾经国内使用最多的版本,但是呢,它不开源,我们没有办法进行I2次开发,那也无所谓呀,你免费我直接用就完事了呗,但是它叫做曾经的免费版,为什么呢?因为啊,它在去年一月份的时候开始收费了,但是呢,文档当中在这写的还是今年,为什么写今年这个文档是去年写呢,所以他在这写今年也没什么问题,那收费的标准是一个节点,1万美金,也就是7万块钱,那我们现在需要三台服务器,7万块钱,也就是21万,在我们什么都没做的情况下呀,21万就没了,那对于中小型公司来说呀,还是很贵的啊,那CD是收费呢,我们就没有办法免费。
05:18
使用了吗?其实也是可以的,呃,CDH,它收费的版本是6.3.2,那6.3.2之后的。付费使用,那6.3.2之前的呀,还是可以免费使用,只不过在官网上已经关闭了这个免费使用的下载入口了,那我们怎么使用呢?在他关闭免费版下载入口之前,你下载了,那你现在还是可以免费使用的,只不过这个免费版它已经不再维护了,那对应组件的版本也要低一些,那它一直不维护,早晚这些组件是要过时的。说完CDH啊,我们再来看看还有这么一个组件,叫做HDP,那HDP它和CDH一样,它呢也维护了一整套的大数据框架,并且帮我们解决了组件之间的兼容性,那它有这么一个好处,它是开源的。
06:09
而且可以进行二次开发,但是呢,它也有一个不好的地方,就是没有CDH稳定啊,它里边有各种各样的bug,所以呢国内使用它的就比较少了,那除了阿帕奇CDHHDP还有这么一个选择,就是云服务产品,那说到云服务产品,我们就应该想到云服务公司,那在我们国内最大的云服务公司就是阿里云,世界上呢最大的云服务公司是亚马逊云,那同样在我们国内还有腾讯云,还有华为云等等等等,只不过腾讯云和华为云的起步啊,相对来说要晚一些,那我们就拿阿里云来举例啊,阿里云就有这么一套云服务产品map reduce,这个map reduce可不是我们所说的哈杜的map reduce计算框架,它呢是一整套的大数据框架,它这里边包括了我们的哈杜呀呀,卡夫卡呀,哎等等等等,我们可以使用。
07:09
到的大数据框架,只不过呀,云服务我们使用的时候是要花钱的,而且云服务必须要运行在云服务器上,也就是说我们想用阿里云的云服务,首先我们要购买云服务器,然后呢,我们在购买云服务器里面的云服务,但是它使用起来是比较方便的,而且性能要好一些,那它使用起来的方便在哪儿呢?我们呢,通过云服务在部署我们大数据集群的时候,我们就可以通过一个前端的页面,他就会问你,哎,你是否需要部署卡多呀,你可以点勾,卡不卡呢?哎,你也点勾,然后问你部署几台呀,哎三台当点完了之后,你点击确定,然后对应的配置你都配置好了,那么这些组件就帮我们部署好了,完全不需要我们手动的部署,部署都是自动化,那它呢,使用起来比较方便,并且呀它一麦S。
08:09
这个产品它大数,它所有的大数据组件,它的性能都要比阿帕奇还有CD的性能都要高,而且还高很多,那现在啊,国内的新公司选择云服务产品呢也很多,那购买完云服务器,然后再购买云服务产品,那除了购买云服务产品啊,那国内的公司一般还会选择阿帕奇加上云服务器或者是物理机,哎,我花一份钱,我只购买服务器,然后呢,组件我用免费的,或者你为了方便你就购买这个阿里云服务器,加上阿里云的云服务产品也行,那用CDH和HDP的就少了,为啥呀,原因就是云服务产品的出现啊,我云服务产品我需要花两份钱,我需要购买机器,然后购买产品的钱,那我用CDH,我也需要购买机器,同时我还要购买你CDH服务,我也是花两份钱,并且你的性能还没有人家高。
09:09
那你呢,用起来也没有人家方便,那我倒不如选择云服务器了。所以啊,CDH和HDP这两个公司,他们的生存环境就越来越不好了,最终他们两个合并了,在早期的时候,他们两个还是竞争对手,但迫于这个市场的压力,他们两个合二为一了,合并完之后,他们两个又合力的开发出来一套新的框架,叫做CDP,那这个CDP不用想,它也是完全收费的。好,那关于框架版本的选择,我们就说这么多,那大家要注意的就是,呃,建议大家使用阿帕奇的版本,然后用阿帕奇的版本,我们呢,还要购买阿里云的服务器,或者直接购买物理机,那我们要是选择云服务呢,我们就需要购买云服务器。
我来说两句