SparkSQL介绍及使用

文章目录

  • [1. SparkSQL介绍及使用](#1. SparkSQL介绍及使用)
    • [1.1 SparkSQL介绍](#1.1 SparkSQL介绍)
    • [1.2 数据结构的形式](#1.2 数据结构的形式)
    • [1.3 Spark SQL 特点](#1.3 Spark SQL 特点)
    • [1.4 Spark SQL 和 Hive SQL关系](#1.4 Spark SQL 和 Hive SQL关系)

1. SparkSQL介绍及使用

1.1 SparkSQL介绍

Spark SQL 是Apache Spark 用于处理结构化数据DataFrameDatasets)的模块。

在Spark1.0版本时引入了Spark SQL。

1.2 数据结构的形式

  • 结构化数据
    • 表,DataFrame,Datasets
    • 构成
      • 元数据 描述数据的数据(描述信息,类型约束)
      • 数据本身
身高
179
173
170
163
  • 半结构化数据
    • json,xml,有数据的描述信息,但是对数据内容的类型无法约束。
pytohn 复制代码
{
    "name":"lxyxp"
}
  • 非结构化数据
    • 文本文件
    • 图片文件
    • 视频文件
    • 音频文件
      总结 :
  • Spark SQL 可以将非结构化,半结构化数据统一转化为结构化数据处理。
  • Spark中使用的结构化数据有DataFrame,映射表(离线数仓开发使用)。

1.3 Spark SQL 特点

  • 易整合
    • 使用sql配合Spark一起使用,封装了不同语言的DSL方法。
  • 统一数据访问
    • 使用read方法可以读取HDFS数据,MySQL数据,不同类型的文件数据(json、csv、orc)
    • 使用write方法可以写入HDFS、MySQL不同类型的文件
  • 兼容hive
    • 使用Hive SQL方法
  • 标准的数据连接
    • 使用JDBC和ODBC连接方式连接Spark SQL

1.4 Spark SQL 和 Hive SQL关系

  • shark
    • 运行的模式是Hive on Spark
    • 会将Hive SQL 转换为Spark的RDD
    • shark是基于Hive开发的,维护麻烦,2015年停止维护。
  • Spark SQL
    • 是Spark团队独立开发的工具,2014年发布1.0版本。
    • Spark SQL工具对Spark的兼容性更好,优化性能得到提升。
    • Spark SQL本质也是将SQL语句转化为RDD执行,catalyst引擎负责将sql转化为rdd。
    • sparkSQL可以连接使用hive的metastore服务,管理表的元数据。
相关推荐
无代码专家13 小时前
无代码:打破技术桎梏,重构企业数字化落地新范式
大数据·人工智能·重构
usrcnusrcn13 小时前
告别PoE管理盲区:有人物联网工业交换机如何以智能供电驱动工业未来
大数据·网络·人工智能·物联网·自动化
一缕猫毛14 小时前
Flink demo代码
java·大数据·flink
Hello.Reader14 小时前
Flink ML 基本概念Table API、Stage、Pipeline 与 Graph
大数据·python·flink
pale_moonlight14 小时前
十一、Flink基础环境实战
大数据·flink
beijingliushao14 小时前
103-Spark之Standalone环境测试
大数据·ajax·spark
西格电力科技14 小时前
光伏四可“可观”功能:光伏电站全景数字化的底层支撑技术
大数据·人工智能·架构·能源
TDengine (老段)14 小时前
从关系型数据库到时序数据库的思维转变
大数据·数据库·mysql·时序数据库·tdengine·涛思数据·非关系型数据库
木风小助理14 小时前
Flink CDC:构建实时数据入湖架构的核心引擎
大数据·架构·flink
管理大亨15 小时前
ELK + Redis Docker 企业级部署落地方案
大数据·运维·elk·elasticsearch·docker·jenkins