spark--Spark SQL概述-★

SparkSQL是Apache Spark的一部分,旨在提供一种统一的方式来处理结构化、半结构化数据,支持代码命令风格和SQL风格的数据分析。它不是Spark的初始组件,而是在不断发展中成熟。SparkSQL适用于结构化和部分半结构化数据,对于非结构化数据需先进行结构化处理。官方介绍强调其在数据处理和查询方面的强大功能。
摘要由CSDN通过智能技术生成

数据分析方式

  • 有如下的两种方式,各有优缺点:

  • 1.代码命令风格:

    • 就是之前写的RDD/MapReduce之类的代码
    • 灵活/操作粒度细/支持复杂操作
    • 入门门槛高需要会一门编程语言
    • 实现机器学习较为方便
  • 2.SQL风格:

    • 就是之前写的HiveSQL之类的sql语句
    • 简单sql容易理解,入门门槛低,会sql就行
    • 复杂sql不容易理解
    • 很难实现机器学习
  • 但是对于一个功能完善/成熟的大数据框架来说,肯定是想着不光要支持代码命令风格,还要支持SQL风格

  • 所以Spark框架就推出了SparkSQL模块来实现上面两种操作方式的实现

  • 但是SparkSQL的诞生历史没有那么顺利,走了很多弯路

SparkSQL的发展史

  • SparkSQL不是Spark框架一诞生就有的
  • 而是在后续的发展过程中逐渐完善的,发展到我们现在使用的Spark2.2.0,SparkSQL已经趋于稳定了,功能也十分强大了
    在这里插入图片描述

数据分类

结构化数据

  • 类似于数据库表,有固定的约束Schema(有固定的列名和类型约束)
    在这里插入图片描述

半结构数据

  • 如下面的json就是半结构化数据,没有固定的Schema(如类型不固定,字段不固定)
    在这里插入图片描述

非结构化数据

  • 图片、视频、音频。。。。这些都是非结构化数据

SparkSQL适用场景

  • 注意:
    • SparkSQL的应用场景主要是结构化数据较为规范的半结构化数据
    • 而对于非结构化数据SparkSQL不能够直接处理,除非先对他们进行结构化处理再使用SparkSQL

Spark SQL官方介绍

http://spark.apache.org/sql/

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值