spark(三)spark sql

一、DataFrame

     1、DataFrame是组织成命名列的数据的分布式集合,类似于关系型数据库的一张表,如果没有列名就等于RDD,如果有列名,就是DataFrames

     DataFrames可以从各种各样的构建,例如:结构化数据文件(JSON文件,xml文件),Hive中的表,外部数据库或现有RDD。

     2、DataFrame如何使用

        park-shell --master local [2]

      scala> val df=sqlContext.read.json("hdfs://myha01/people.json")

       df.show()    

       scala> df.sql("select * from people");

    3、RDD转换成为DataFrame

       第一种:反射的方式

      我们是要提前知道RDD数据格式

       第二种:编程的方式

二、1、load

      2、save

补充:

Text 是行存储

rcfile  列存储

orcfile 列存储(rcfile的优化)  

在大数据中喜欢用orcfile列存储  原因:查询速度比较快  

sqlContext.read.load() 默认是parquet格式

   

      

原文地址:https://www.cnblogs.com/liuwei6/p/6675230.html