一、Spark-SQL应用场景
1.数据文件即席查询 Ad-hoc
普通查询:定制化查询
2.对流数据文件采用SQL分析 Spark-Streaming+Spark-SQL
3.使用SQL完成ETL开发
1> 格式转换 ==>列式存储 parquet/json==>parquet
2> 日志数据清洗,把日志一部分内容抽取出来做分析统计
2.1> 添加字段 ip=>城市
2.2> 日期字段 转换成分区字段
2.3> 剔除不需要字段
4.与外部数据源做交互查询操作 外部数据源API!!!
传统:通过sqoop把数据抽取到数据平台上去
然后注册成Hive表,进行统计分析
进阶:Spark-SQL
把外部数据源中的表注册成DataFrame
通过DataFrame API进行统计分析
5.集群查询性能拓展
spark on yarn 开发
spark local模式 测试
二、加载数据
1.直接加载到dataframe/dataset
2.加载到RDD进行转换
3.从本地或云端(HDFS/S3)加载数据
1>将数据加载成RDD
val masterLog = sc.textFile("file://")
val workerLog = sc.textFile("file://")
val allLog=sc