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服务,管理表的元数据。
相关推荐
百夜﹍悠ゼ18 小时前
数据治理DataHub安装部署
大数据·数据治理
wdfk_prog19 小时前
解决 `git cherry-pick` 引入大量新文件的问题
大数据·git·elasticsearch
洛阳纸贵19 小时前
JAVA高级工程师--Elasticsearch
大数据·elasticsearch·搜索引擎
TracyCoder12319 小时前
ElasticSearch内存管理与操作系统(二):深入解析 Circuit Breakers(熔断器)机制
大数据·elasticsearch·搜索引擎
Moshow郑锴20 小时前
Spark在银行系统ETL中的实战应用:TXT文件到PostgreSQL的余额处理全流程
postgresql·spark·etl
外参财观21 小时前
从浏览器到“超级眼”:夸克的突围战
大数据
BYSJMG21 小时前
计算机毕设选题推荐:基于大数据的癌症数据分析与可视化系统
大数据·vue.js·python·数据挖掘·数据分析·课程设计
petrel20151 天前
【Spark 核心内参】2026.1:JIRA vs GitHub Issues 治理模式大讨论与 4.2.0 预览版首发
大数据·spark
闻哥1 天前
深入理解 ES 词库与 Lucene 倒排索引底层实现
java·大数据·jvm·elasticsearch·面试·springboot·lucene
TracyCoder1231 天前
全面解析:Elasticsearch 性能优化指南
大数据·elasticsearch·性能优化