首页 > 数据库 >SparkSQL-第一章:SparkSQL快速入门

SparkSQL-第一章:SparkSQL快速入门

时间:2023-01-25 10:05:41浏览次数:51  
标签:Shark 入门 框架 Hive 第一章 DataFrame SparkSQL Spark


Spark是大数据体系的明星产品,是一款高性能的分布式内存迭代计算框架,可以处理海量规模的数据。下面就带大家来学习今天的内容!


一、什么是SparkSQL

SparkSQL-第一章:SparkSQL快速入门_大数据

SparkSQL 是Spark的一个模块, 用于处理海量结构化数据

限定: 结构化数据处理

二、为什么学习SparkSQL

SparkSQL-第一章:SparkSQL快速入门_hive_02

SparkSQL是非常成熟的 海量结构化数据处理框架.

学习SparkSQL主要在2个点:

SparkSQL本身十分优秀, 支持SQL语言\性能强\可以自动优化\API简单\兼容HIVE等等

企业大面积在使用SparkSQL处理业务数据

  • 离线开发
  • 数仓搭建
  • 科学计算
  • 数据分析

三、SparkSQL的特点

SparkSQL-第一章:SparkSQL快速入门_hive_03

四、SparkSQL发展历史 - 前身 Shark框架

在许多年前(2012\2013左右)Hive逐步火热起来, 大片抢占分布式SQL计算市场;

Spark作为通用计算框架, 也不可能放弃这一细分领域。于是, Spark官方模仿Hive推出了Shark框架(Spark 0.9版本);

Shark框架是几乎100%模仿Hive, 内部的配置项\优化项等都是直接模仿而来,不同的在于将执行引擎由MapReduce更换为了Spark;

因为Shark框架太模仿Hive, Hive是针对MR优化, 很多地方和SparkCore(RDD)水土不服, 最终被放弃

Spark官方下决心开发一个自己的分布式SQL引擎 也就是诞生了现在的SparkSQL

SparkSQL-第一章:SparkSQL快速入门_spark_04

SparkSQL-第一章:SparkSQL快速入门_大数据_05

● 2014年 1.0正式发布

● 2015年 1.3 发布DataFrame数据结构, 沿用至今

● 2016年 1.6 发布Dataset数据结构(带泛型的DataFrame), 适用于支持泛型的语言(Java\Scala)

● 2016年 2.0 统一了Dataset 和 DataFrame, 以后只有Dataset了, Python用的DataFrame就是 没有泛型的Dataset

● 2019年 3.0 发布, 性能大幅度提升, SparkSQL变化不大

标签:Shark,入门,框架,Hive,第一章,DataFrame,SparkSQL,Spark
From: https://blog.51cto.com/u_8238263/6022429

相关文章

  • 如何从入门开始学习OpenCV?
    一、OpenCV简介OpenCV是一款由Intel公司俄罗斯团队发起并参与和维护的一个计算机视觉处理开源软件库,支持与计算机视觉和机器学习相关的众多算法,并且正在日益扩展。1.1OpenC......
  • Hive 常用函数入门Apache Hadoop概述
    Hadoop离线是大数据生态圈的核心与基石,是整个大数据开发的入门。本次分享内容让初学者能高效、快捷掌握Hadoop必备知识,大大缩短Hadoop离线阶段学习时间,下面一起开始今天的学......
  • Web安全入门与靶场实战(16)- 越权访问漏洞
    我们接着上篇博文来继续研究靶机中的网站。首先网站中有个login登录页面,这里就可能会存在SQL注入漏洞。但是作为一个零基础入门课程,这里不准备展开介绍SQL注入,这个可以放在......
  • Python入门之真值表达式
    """真值表达式if数据:语句本质就是使用bool函数操作数据条件表达式"""#1.真值表达式if"a":#ifbool("a"):print("真......
  • 230124_50_SpringBoot入门
    thymeleaf语法1.th:utext,转义文本controllermodel.addAttribute("msg","<h1>hello,springboot!</h1>");html<divth:text="${msg}"></div><divth:utext="......
  • Ajax-快速入门
    目录前言什么是AJAX?1.核心功能:XMLHttpRequest1.1创建XMLHttpRequest对象1.2XMLHttpRequest常见属性1.3XMLHttpRequest常见方法2.AJAX如何工作?2.1创建XMLHttpRequest对......
  • 基于 .NET7.0 开发Telegram 机器人(入门)
    简介Telegram(非正式简称TG、电报)是跨平台的即时通信软件,其客户端是自由及开放源代码软件,但服务端是专有软件。用户可以相互交换加密与自毁消息,发送照片、视频等所有类型......
  • Python入门之选择语句
    """选择语句"""sex=input("请输入性别:")ifsex=="男":print("您好,先生!")elifsex=="女":print("您好,女士!")else:print("性别未知!")print("后续逻辑......
  • vuejs从入门到精通——Vue语法——插值绑定
    Vue语法——插值绑定插值绑定是Vue中最常见的、最基本的语法。绑定的内容主要有文本插值和HTML插值两种。一、文本插值文本插值用双大括号{{}}将要绑定的变量、值......
  • python入门学习笔记002--趣学Python算法--第2例兔子产子
    例题如下:有一对兔子,从出生后的第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子,假设所有的兔子都不死,问30个月内每个月的兔子总对数为多少?  个......