00:00
接下来给大家讲一下我们数据的加载和保存,Spark circle,它作为一个Spark的功能模块,它提供了一个比较通用的数据读取和保存的方式,接下来我们一块来看一看,嗯呃,首先我们看第一个啊,Spark,然后回车,回车呢它是一个Spark session是一个环境对象,那么它里面其中有一个叫做read啊,叫做。它点点了之后,大家可以看到它有个叫做data frame reader,它有个reader啊,用来做读取的,那么这个读取呢,咱们再来给它一个点,按个type键,你会发现呢,它这个读取啊有很多种方式,其中有一个叫做load,这个load什么意思呢?就叫加载啊,它叫加载数据的意思啊,那我们现在就可以来一个load,那这个数据我们加载什么呢?我们给大家准备的例子当中有一个叫u.Jason它在咱们的date下面,所以在这种情况下,我们给它读取一下,咱们来括号啊,写上咱们叫date啊,我确认一下咱们叫date是吗?哎,叫date,然后呢,有个斜杠叫U点杰son,然后我们在前面给他一个点FK回车,回车以后大家可以看到我们这么读取的时候,你会发现它是不对的,他哪不对了呢?他这里跟你是这么说的,他说了你当前读取的这个文件,Is not a pocket file,这句话是什么意思呢?会告。
01:24
告诉你,你读取的数据格式就是文件那个格式呀,不正确。因为我们在这里大家看课件中有我们SPA circle默认读取和保存的文件,格式为pack,这是一种列式存储的格式,而我刚才的那个文件是一个JS文件,那么格式肯定不一致的。那怎么办?那你的practice在哪啊,其实大家看在我们解压说的官方资料当中,其中啊,它里面就有打开有一个叫example,当中有个src,有一个men啊,有一个men,然后呢,其中有一个叫做resource,在这里面就有个pack文件啊,那我们现在可以这样把这个呢,我们来写上一个斜杠啊,咱们叫做users啊,点我们park,诶,好,然后把这个给它复制,复制以后拿过来啊,咱们拿过来,拿过来以后在咱们的这个位置来,嗯,把这个去掉。
02:21
嗯,去掉以后呢,给他刚才那个位置啊,咱们复制一下来,我们粘贴好了,我们回车啊回车回车以后同学们看一下,这个时候就没有任何问题了,刚才那个Jason就不行,就是因为默认情况下,它读取的数据格式或者说文件格式是pocket,那好,那你展示以后是什么样子的呢?来回车回车以后你会发现大家看一下。这个时候啊,在我们当前的这个位置呢,诶就是这个样子,对不对啊,它里面有一些特殊的这种数据在里面,诶那我现在比方说我想保存咱们的数据行不行呢?也可以大家看一下咱们叫做什么呢?Right,然后点有一个叫做什么呢?叫做save,然后呢,我们这边给它来啊,来保存括号,括号以后呢,我们就写上啊,咱们来在这里面写上一个咱们叫output,好,然后呢,我回车,回车以后大家看到保存成功,那么它保存到哪里去了呢?我们来打开咱们后推。
03:19
后退以后同学,看来咱们在这里,咱们在这里,咱们打开刷新,刷新以后你会发现咱们这里就有个叫output,打开它会把咱们的数据给它保存到这个位置,就是pack,我们刚才说过了,它默认读取和保存的文件格式其实都是pack,你读取是pack,你的保存也是park,这个文件你可能看不懂啊,来点一下。打开你看不懂对不对,它这种劣势存储的,但是呢,只要我们能正确的读取就是没有任何问题啊,可是啊,这会感觉不方便,因为我们平时可能用揭实呢,可能会用的多一些,那比方说我刚才我刚才这边就有一个解S文件,难道你不让我读吗?虽然说你这个方法叫通用方法,难道就不能我读取它吗?所以呢,我们这里同学们看来我们在这里有个叫read啊,把这个去掉,去掉以后呢,我就写上咱们叫date,然后呢叫u.Jason对吧,然后呢,我回车回车以后他就是不让你读啊,诶不对,它这个路径写错了吧,我我确认一下,咱们这个叫做哦,没有那个SOK,把这个去掉,把S去掉啊来回车回车以后他就告诉我呢,我们当前这个文件格式不对,可是我就想读它怎么办?没关系,你要就想读它也行,你在这边加一个格式,咱们叫format。
04:39
嗯,好了,然后呢,在这个地方我们就直接写上咱们叫做杰森来回车,回车以后大家看一下,你这个时候就没有问题了,所以DF点我们的展示一下,哎,数据就出来了,或者如果你觉得太麻烦,我们的SPA circle也给你提供了一个更加简洁的方法,这个方法呢,就是直接把漏去掉。
05:02
把这个地方直接改成杰森,诶回车你这么写也行,DF,那咱们再来点我们的展示回车,哎,你看也是可以的啊,所以呢,它的这个读取啊,其实提供了很多便捷的方法,大家看一下read点按个TB键,Tag键以后,什么我们的CSV啊,什么Json啊,JDBC啊,其实全都是对特定格式的文件做操作的啊,你要是说用我们通用的就用漏,你要是不想用通用的,用一些特定的就用这些Jason啊,CSV呀呀,包括什么text呀,以及orc呀,这些都是特定的文件格式,好吧,同学们,同样道理啊,你保存的时候也是可以的,比方说来咱们的data frame,我们写上叫做right啊,你不是要写吗?咱们叫save,然后呢,我们写上啊,咱们写上叫OUTPPUT1,你这么保存记录,默认保存的就是pack文件,那如果你想要保存成别的的话,诶,写上一个format,然后写上一个什么呢,我们写上叫。
06:03
节省,然后写个点回车,你回车以后它保存的就是节省文件了啊来咱们打开,咱们找一下在这边我们后退啊,来后退刷新,刷新以后有个output一点开,点开以后大家看一下这个文件是不是我们的接文件没问题吧,诶就是这样,这就叫通用的读取和保存的方法,一个叫read,一个叫write,一个叫load,一个叫save,对不对?哎,这个搞明白我觉得就够了啊,就是这样的。
我来说两句