作业6 Spark SQL及其DataFrame的基本操作

1.Spark SQL 出现 的 原因是 什么?

(1)Shark执行计划优化完全依赖于Hive,不便于添加新的优化策略。

(2)Spark是线程级并行,MapReduce是进程级并行,因此,Spark在兼容Hive的实现上存在线程安全问题,导致Shark不得不使用另外一套独立维护的、打了补丁的Hive源码分支。

(3)Shark的实现继承了大量的Hive代码,因而给优化和维护带来了大量的麻烦,特别是基于MapReduce设计的部分,成为整个项目的瓶颈。

2.用spark.read 创建DataFrame

 

 

 运行结果:

3.观察从不同类型文件创建DataFrame有什么异同?

通过txt文本文件创建的DataFrame是一个键值对,键是“value”,值是整个文本文件的内容,类型为string类型;

通过json文件创建的DataFrame可以是若干个键值对,键值对的键值类型与json文件内容一一对应。

 

4.观察Spark的DataFrame与Python pandas的DataFrame有什么异同?

 

 

   运行结果:

 

 

 

posted @ 2021-05-10 15:41  叶利钦  阅读(45)  评论(0编辑  收藏  举报