温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
之前我们把这个r data frame和data咱们分别的给家做了换,对吧,R呢可以转换成data frame啊,也可以转换成data set,而data frame呢,也可以转换成data set,而且反向操作都是可以的,所以接下来呢,我们给大家呢来说一下他们之间的什么,哎,一个关系啊呃,首先在Spark circle当中,Spark为我们提供了两个新的抽象,分别是data frame data。那么他们和RD有什么区别呢?首先从版本的产上来看,Spark1.0就有了RDD,所以它出现的会更早一些,对吧?而那个我们的data frame呢,是SPA1.3出现的,那么data是一点出现的,所以啊,从这个出现的时间来讲的话,Data是最后出现的,所以它封装的东西呢,相对来说是比较什么呢?诶我们说用的范围比较广的对吧?啊,它肯定在前面的基础之上做了一些更好的一些扩展,对吧。然后呢,如果同样的数据都给到这三个数据结构的话,他们分别计算其实会得到相同的结果,不过他们的执行效率啊和执行方式呢,稍微的有一些不同啊,那后期的版本RA就是这三者呢,会有一些共性的东西,比方说他们三个都是我们分式弹性数据集,这个咱们在讲R的时候,这些概念咱们多少呢,都进行了射击啊,然后呢,三者都有惰性机制,就意味着在某些情况下并不是直接加载数据,而是需要一个触发的机制,对吧?诶,就是一个惰性加载,然后呢,们都会有共同的数,那当然了,呃,底层呢,都是RD么?RD的一些能其实们都是有的,什么排序什么什么map这样的一些东西啊,然后呢,Data frame和data,他们的很多操作呀,都要做一个隐换的一个处理,这个咱们暂时可能还体会不到,是因为咱们。
01:58
开那个命令行窗口呢,其实他已经帮你导入了这个,咱们后面会给大家介绍啊。
02:05
然后呢,三者都会根据SPA的内存情况进行自动缓存运算,那这个其实就是底层的操作啊,就是这样,然后呢,都有分区的概念,那当然了,RDB90嘛,接下r Spark r Spark r是构它的结构当中会有一个row啊,就是一个行对象,那行对象就是第一列,第二列,第三列的感觉呗,对吧,就是这个意思,然后呢,我们的data frame和data呢,一般不与我们Spark同时使用啊,就是说他们会用。然后后面呢,Data frame呢,就支持SPA,其实我们后面给大家看它的原理之后呢,这个其实就比较明白了,咱们现在光这么说呀,可能大家也不是很明白,对吧?然后呢,Data frame和data set呢,它支持一些特殊的保存,比方说把数据保存成CSV,保存成JS文件,存成什么什么东西啊,这个咱们后面会看到,还有我们data set data set他说了们的data set和data frame有完全相同的成函数区别,只是每一行的数据类型不同,我们的data frame呢,其实是data set的一个特例,这个特例这个事情呢,我们不好理解,咱们同样呢,在后面会给大家讲解一下,其实啊,它底层的代码呢,应该是这个样子啊,但这个什么意思呢?我们后面再说,嗯,然后呢,我们的data frame呢,它其实也就是data,它的每一行是一个啊,是这样的,这个我们后面呢,详细的来描述它和data set之间的关系啊,就是data frame data set到底怎么回事,然后下面呢,是三者的互相转换,其实啊这个咱们之前。
03:51
通过那个命令行工具已经给大家演示过了,正好呢,我们这里还画了一张图,对不对,所以啊,我现在把这个图呢,我们复制一下吧,同学们来,嗯。
04:01
我们在这呢,把这张图呢,给大家稍微的什么,我们复制一下,嗯,我想想是不是可以把这个东西我们稍微的拿过来啊来。好啊,放到这边行了,保存一下,保存以后在咱们的这个位置啊,来放过来,这个呢,就是我们的一张图形啊,这张图形当中体现了它们之间的一个关系啊。我看看这个是不是有点太大了呢。嗯。这个呢,我把这个呢拉大一些,拉大一些,诶好啊,拉大一些。行了啊,咱们三者的转换关系,就是我们之前给大家画的图,他们的类型啊,他们的结构啊,他们的数据啊,怎么去理解这个同学们下来自己好好看看好不好啊,我们三者的关系就说到这里了。
我来说两句