sparksql简介

news2024/11/14 14:20:05

什么是sparksql

sparksql是一个用来处理结构话数据的spark模块,它允许开发者便捷地使用sql语句的方式来处理数据;它是用来处理大规模结构化数据的分布式计算引擎,其他分布式计算引擎比较火的还有hive,map-reduce方式。

sparksql的特点

  1. 融合性 – 无缝集成在代码里,随时使用sql语句
  2. 统一数据访问方式 – 一套标准api访问多种数据源
  3. 兼容hive – 可以使用sparksql直接计算并生成hive数据表,这对老的hive数据仓的兼容还是比较好的
  4. 标准化连接,支持jdbc/odbc连接,方便和各种数据库进行数据交互

sparksql与hive的异同对比

  1. 都是分布式计算引擎,都广泛用于大规模结构化数据计算,但spark性能更佳
  2. sparksql底层允许sparkRDD,hive底层允许map-reduce, sparksql是基于内存迭代的,hive是基于磁盘迭代的,这也是他们性能差异的主要来源之一
  3. sparksql不支持元数据管理,hive有metastore管理元数据,但spark可以和hive集成,从而使用hive的元数据管理
  4. 二者都可以允许到yarn之上
  5. hive只支持sql开发,spark支持代码+sql融合开发

sparksql数据抽像与pandas、sparkcore对比

  1. pandas中,数据抽象单元是DataFrame,是一个二维表结构,用于单机/本地数据集合的处理
  2. sparkcore中,数据抽象是RDD,用于分布式数据集合,没有固定数据结构,可存储任意数据
  3. sparksql中,数据抽象是DataFrame,是一个二维表结构,与pandas不同的在于可以用于处理分布式数据集合
    实际上,sparksql有三种数据抽象,一个是早期的SchemaRDD抽象,现在已经废弃了,一个是DataSet数据抽象,主要是为scala/java提供的泛型数据对象支持,另外就是DataFrame,可支持python/java/scala。
    在spark中,RDD和sparksql是两个很常见的数据抽象形式,怎么理解这两种数据抽象,我们可以看下图:
    在这里插入图片描述
  • RDD是可以存储任意结构数据了,上面只是假设数据对象是一个二维数据的结构,我们也可以用字符串(如"id,name,age")、类(三个成员)等存储,RDD存储对象本身,但dataframe不一样,只能按二维表存储;
  • RDD和DataFrame都可以进行分区处理,dataframe更适合用sql处理;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1537169.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络编程 - 套接字

1、预备知识 1.1、理解源IP地址和目的IP地址 在IP数据包头部中, 有两个IP地址, 分别叫做源IP地址, 和目的IP地址; 思考: 我们光有IP地址就可以完成通信了嘛? 想象一下发qq消息的例子, 有了IP地址能够把消息发送到对方的机器上, 但是还需要有一个其他的标识来区分…

Windows server 2012 R2系统怎么显示桌面图标

当我们在使用Windows server2012 R2服务器计算机时,为了方便,我们可以添加桌面图标。下面就给大家分享一下添加桌面图标的方法; 操作步骤如下: 1、第一步,我们打开server服务器,就可以看到如下画面&#x…

Elasticsearch从入门到精通-06ES统计分析语法

Elasticsearch从入门到精通-06ES统计分析语法 bucket和metric概念简介 bucket就是一个聚合搜索时的数据分组。如:销售部门有员工张三和李四,开发部门有员工王五和赵六。那么根据部门分组聚合得到结果就是两个bucket。销售部门bucket中有张三和李四&…

【ESP32 Arduino】定时器的使用

文章目录 前言一、ESPTIMER定时器的介绍1.1 定时器是什么 二、分频系数2.1 为什么需要分频系数2.2 分频系数怎么计算 三、定时器的使用3.1 初始化定时器对象3.2 设置中断时间3.3 设置回调函数3.4 使能定时器 四、示例代码总结 前言 在嵌入式系统中,定时器是一项重要…

Iterator对象功能学习

package config;import java.util.Iterator; import java.util.Properties; import java.util.Set;/*** 这个类演示了如何使用Properties类来存储和访问键值对。* Properties类继承自Hashtable,因此它可以用来存储键值对数据,且支持同步。*/ public clas…

Git多分支管理实践

想要实现本地文件对远程文件的管理,必须懂得Git的相关操作。 工作中不免会遇到一个仓库多个分支的管理。 git多分支管理属于git的进阶版操作,下面我们来看看。 1. 拉取一个git仓库 git仓库名假设为:test_demo,默认是主仓库&…

文件路径引用错误

报错This dependency was not found: * /view/superAdmin/menu/icon.vue in ./node_modules/cache-loader/dist/cjs.js??ref--13-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-opti…

云手机为企业出海提供多元化解决方案

随着全球市场的不断扩大,发展出海业务已经成为许多企业开发新市场的重要途径。而在这个竞争激烈的市场中,云手机作为一种全新的工具,为企业提供了多元的解决方案,助力其在海外市场通过各种方式取得成功。本文将介绍企业可以通过云…

利用pexpect实现ssh自动登录时命令行无法自动换行问题解决

问题描述 使用python的pexpect模块的pexpect.spawn()进行ssh自动登录时,出现超出一定长度(80个字符)时光标自动切换到本行行首进行覆盖输入的情形 原因 使用spawn时输入窗口大小默认限制为[24,80](可通过spawn类的getwinsize(…

Maximizing Influence with Graph Neural Networks

Abstract 寻找使网络影响力最大化的种子集是一个众所周知的 NP 难题。尽管贪心算法可以提供接近最优的解决方案,但影响估计的子问题导致解决方案效率低下。在这项工作中,我们提出了 GLIE,这是一种图神经网络,它学习如何估计独立级…

新能源汽车充电桩消防安全视频智能可视化监管建设方案

一、方案背景 据应急管理部门统计公布的数据显示,仅2023年第一季度,新能源汽车自燃率就上涨了32%,平均每天就有8辆新能源汽车发生火灾(含自燃)。在已查明起火原因中,58%源于电池问题,19%源于碰…

备战蓝桥杯Day34 - 每日一题

题目描述 解题思路 1.输入数据n,并将字符串类型转换成整数类型 2.求出输入n是2的几次幂(调用math库中的求对数的方法),在下面的循环中要用到 3.定义sum和,将抽取到的牌的总数加起来存储 4.count 0 # 记录 2 的第几…

分享一下现在哪些相亲软件好用?盘点四款热门的相亲软件

很多单身的小伙伴都在问有哪些靠谱的相亲软件,平时自己的工作和生活圈子太小没有办法找到结婚对象,通过手机上的相软件找对象也是一个不错的尝试。今天我来为大家分享几款成功率比较高的婚恋相亲软件! 1、一伴婚恋 这款APP目前是线上找对象…

DP:斐波那契数列模型

创作不易,感谢三连支持 ! 斐波那契数列用于一维探索的单峰函数之中,用于求解最优值的方法。其主要优势为,在第一次迭代的时候求解两个函数值,之后每次迭代只需求解一次 。 一、第N个泰波那契数 . - 力扣(…

JAVA 栈和队列总结

除了最底层下面三个是实现类,其他都是接口。 双端队列(队头队尾都可以插入和删除元素)的方法: 普通队列方法: 常用的是add(),poll(), element() 我们用Deque(双端队列)实现栈 Deque当栈用的时候的方法。 deque.push…

【史上最全面arduino esp32教程】SPI层次结构SPI协议与SPI控制器结构

文章目录 前言一、SPI 程序层次1.1 硬件原理图1.2 硬件框图1.3 软件层次 二、SPI协议2.1 硬件连线2.2 如何访问SPI设备2.3 SPI 框图 总结 前言 欢迎阅读本篇文章,将为您介绍Arduino ESP32上的SPI通信协议。SPI(Serial Peripheral Interface)…

设计数据库之内部模式:SQL基本操作

Chapter4:设计数据库之内部模式:SQL基本操作 笔记来源: 1.《漫画数据库》—科学出版社 2.SQL | DDL, DQL, DML, DCL and TCL Commands 设计数据库的步骤: 概念模式 概念模式(conceptual schema)是指将现实世界模型化的阶段进而&…

AI换脸软件rope最新更新的蓝宝石中文版下载

rope换脸软件蓝宝石版下载地址:点击下载 最近AI软件非常的火爆,今天就给大家带来一个可以AI替换人脸的工具rope,得益于机器学习技术的不断发展,rope经过深度神经网络的无数次迭代优化,最终得出的模型可以自动学习和识…

Oh My Bug || PHPmyAdmin导入csv文件时,502报错

解决: 在宝塔面板文件配置中加入一下代码 location / { proxy_pass http://localhost:888; } location /backend-api { rewrite ^/backend-api(.*)$ $1 break; proxy_pass http://你的ip地址; }

elasticsearch数据聚合

数据聚合 聚合(aggregations)可以让我们极其方便的实现对数据的统计、分析、运算。例如: 什么品牌的手机最受欢迎? 这些手机的平均价格、最高价格、最低价格? 这些手机每月的销售情况如何? 实现这些统计功能的比数据库的sql要方便的多,而且查询速度非常快,可以实现近实…