SparkSQL的简介

来源:互联网 发布:优易ip代理软件 编辑:程序博客网 时间:2024/05/18 12:42

SparkSQL

        

       SparkSQL是一个处理结构化数据的Spark模型,不像基本的Spark RDD的API,通过SparkSQL提供的接口可以提供更多的信息关于结构化的数据和计算,SparkSQL使用这些额外的信息进行额外的优化,有很多和SparkSQL进行交互的方式,包括:SparkSQL,SQL,the DataFrames API and the Datasets API,不论你使用的是哪种API,在计算的时候使用的都是相同的执行引擎,这种统一性意味着开发者可以更容易的在各种API之间来回切换,在此基础上提供最自然的方式来表示给定的转换。

DataFrames

         DataFrame是一个以命名列的方式的一个分布式的数据集。它类似于关系型数据库里面的一张表,或者是R/Python语言里面的DataFrame,但是Spark的这个DataFrame的功能要更强大,DataFrame的数据来源可以是结构化的文件(Json),Hive表(非常重要的数据源),外部的数据库(MySQL),也可以是已经存在的RDD。

DataFrame的API可以使用Scala,Java,Python和R进行编写。

下面这个例子就是读取结构化的json数据来创建DataFrame:

val sc: SparkContext // An existing SparkContext.val sqlContext = new org.apache.spark.sql.SQLContext(sc)val df = sqlContext.read.json("examples/src/main/resources/people.json")// Displays the content of the DataFrame to stdoutdf.show()







原创粉丝点击