• 2024-11-07SparkSQL
    一、概述1.1、什么是sparksql  SparkSQL是Spark中用于处理结构化数据的模块,它提供了两个主要的编程抽象:DataFrame和DataSet,并且还可以作为分布式SQL查询引擎使用。SparkSQL的设计目的是简化结构化数据的处理和查询,同时提高执行效率。  传统的HiveSQL通过
  • 2024-11-06《SparkSQL--通过ThriftServer连接DataGrip》
    ThriftServer功能:类似于HiveServer2,负责解析客户端提交的SQL语句,转换成Spark的任务进行执行本质:Spark中的一个特殊的程序,利用程序的资源运行所有SQL,该程序除非手动关闭,否则一直运行 启动服务,该服务不会停止,一直在后台启动,假如启动不了,记得查看日志。/opt/installs/spark/sb
  • 2024-11-06SparkSql读取数据的方式
    一、读取普通文件 方式一:给定读取数据源的类型和地址spark.read.format("json").load(path)spark.read.format("csv").load(path)spark.read.format("parquet").load(path)方式二:直接调用对应数据源类型的方法spark.read.json(path)spark.read.csv(path)spark.read.pa
  • 2024-10-25JSON日志处理 | 基于SparkSql实现
    目录0 主要JSON处理函数1JSON处理函数使用2案例分析3小结0 主要JSON处理函数get_json_object:提取单个JSON字段json_tuple:同时提取多个JSON字段from_json:JSON字符串转结构化数据to_json:结构化数据转JSON字符串schema_of_json:推断JSONs
  • 2024-10-08SparkSQL与Hive查询不一致问题
    文章目录1.Hive版本2.问题背景3.问题现象4.原因分析1).分析原因可能是缓存2).发现文件存储特点3).子文件夹出现原因5.解决方式1).方法1修改配置2).方法2修改脚本6.总结1.Hive版本Hive1.2.1000.2.6.5.0-2922.问题背景交付项目上基本所有的脚本任务,都是使用h
  • 2024-09-24Spark(十一)SparkSQL 数据的加载和保存
    通用的加载和保存方式这里的通用指的是使用相同的API,根据不同的参数读取和保存不同格式的数据,SparkSQL默认读取和保存的文件格式为parque1.加载数据spark.read.load是加载数据的通用方法,支持的数据源格式:scala>spark.read.csvjdbcloadoptionsparquet
  • 2024-09-24Spark(十)SparkSQL DataSet
    DataSetDataSet是具有强类型的数据集合,需要提供对应的类型信息1.创建DataSet使用样例类序列创建DataSetscala>caseclassperson(id:Int,name:String,age:Int)definedclasspersonscala>valcaseClassDS=Seq(person(1,"zhangsan",23)).toDS()caseClassDS:org.apa
  • 2024-09-24Spark(九)SparkSQL DataFrame
    DataFrameSparkSQL的DataFrameAPI允许我们使用DataFrame而不用必须去注册临时表或者生成SQL表达式,DataFrameAPI既有transformation操作也有action操作1.创建DataFrame从Spark数据源进行创建启动SparkShell[user@hadoop102spark-yarn]$bin/spark-shell查看Spark
  • 2024-09-10SparkSQL练习:对学生选课成绩进行分析计算
    题目内容:对学生选课成绩进行分析计算题目要求:(1)该系总共有多少学生;(2)该系共开设来多少门课程;(3)每个学生的总成绩多少;(4)每门课程选修的同学人数;(5)每位同学选修的课程门数;(6)该系DataBase课程共有多少人选修;(7)每位同学平均成绩;数据预览:每行数据包括以下三部分内容:学生姓名,所学
  • 2024-08-26SparkSQL日期时间模式详解
    datatime使用场景CSV/JSON数据源使用模式字符串来解析和格式化日期时间内容。日期时间函数用于转换StringType类型到DateType或TimestampType类型,反之亦然。例如,unix_timestamp,date_format,to_unix_timestamp,from_unixtime,to_date,to_timestamp,from_utc_timestam
  • 2024-08-26SparkSQL数值模式详解
    简介函数如to_number和to_char确实支持在字符串类型和十进制(数值)类型之间进行转换。这些函数接受格式字符串作为参数,这些格式字符串指示了如何在这两种类型之间映射。to_number:这个函数通常用于将字符串转换成数值类型。你需要提供一个格式字符串来指定如何解释字符串
  • 2024-07-2305_sparkSQL
    SparkSQL简介为什么需要SparkSQL?Spark的RDD有一定局限性,无法处理结构化数据(比如json格式等等);SparkSQL提供了两种编程的抽象,DataFrame(关心数据结构不关心类型),DataSet(关心面向对象的数据);RDD、DataFrame、DataSetDataFrameDataFrame是一种类似于RDD的分布式
  • 2024-07-18大数据学习之SparkSQL(补充)
    SparkSQL1、SparkSql初识案例:WordCountsparksql处理数据的步骤1、读取数据源2、将读取到的DF注册成一个临时视图3、使用sparkSession的sql函数,编写sql语句操作临时视图,返回的依旧是一个DataFrame4、将结果写出到hdfs上importorg.apache.spark.SparkContextimport
  • 2024-07-01Spark_04 SparkSQL的介绍及使用
    说明这一章主要包括对于sparksql概念的介绍,sparksql的特点,sparksql用到的数据类型,DataFrame的基础方法等。概念SparkSQL是Spark用于处理结构化数据的模块。诞生由于MapReduce这种计算模型的执行效率较慢,rdd原生代码较为复杂,所以引入了SparkSQL应运而生。它可以将sql转换为
  • 2024-05-30SparkSQL编程-DataFrame
    SparkSession在老的版本中,SparkSQL提供两种SQL查询起始点:一个叫SQLContext,用于Spark自己提供的SQL查询;一个叫HiveContext,用于连接Hive的查询。从2.0开始,SparkSession作为Spark最新的SQL查询起始点,实质上是SQLContext和HiveContext的组合,所以在SQLContext
  • 2024-05-30SparkSQL概述
    为了给熟悉RDBMS(关系数据库管理系统)但又不理解MapReduce的技术人员提供快速上手的工具,hive应运而生,它是运行在Hadoop上的SQL-on-hadoop工具;但是MapReduce计算过程中大量的中间磁盘落地过程消耗了大量的I/O,运行效率低;sparksql则是采用内存存储可以减少大量的中间
  • 2024-03-2405-快速理解SparkSQL的DataSet
    1定义一个数据集是分布式的数据集合。Spark1.6增加新接口Dataset,提供RDD的优点:强类型、能够使用强大lambda函数SparkSQL优化执行引擎的优点可从JVM对象构造Dataset,然后函数式转换(map、flatMap、filter等)操作。DatasetAPI在Scala和Java中可用。Python不支持DatasetAPI,
  • 2024-03-2303-SparkSQL入门
    0SharkSpark的一个组件,用于大规模数据分析的SQL查询引擎。Shark提供了一种基于SQL的交互式查询方式,可以让用户轻松地对大规模数据集进行查询和分析。Shark基于Hive项目,使用Hive的元数据存储和查询语法,并基于Hive进行了性能优化和扩展。0.1设计灵感来自Google的
  • 2024-03-21SparkSQL与RDD的选择?
        对当下的企业级数据应用来说,SparkSQL的应用空间肯定要比单纯的写RDD处理大很多,因为SparkSQL比RDD好写的多,也更贴近业务需求和更友好的能处理数据,而且技术门槛也更低。        但RDD是Spark中所有的数据抽象的基础,最大的特点是对开发者而言暴露的是不带sch
  • 2024-03-05snappy压缩格式下使用数字与字符串不等于比较,hiveSQL和sparkSQL表现不一致的行为记录。
    Hive版本:2.3.4Spark版本:2.4.0当时用Snappy格式对表进行压缩时,时用<>符号将字符串与数字进行比较会产生不一致的结果。SparkSQL结果并非预期结果。DROPTABLEIFEXISTStest.zero_test;CREATETABLEtest.zero_testTBLPROPERTIES("orc.compress"="SNAPPY")ASSELECT
  • 2024-02-05寒假生活指导27
    为什么SparkSQL可以自动优化而RDD不可以? Catalyst优化器  流程     
  • 2024-02-011.31学习进度
    第一章1.sparkshufflemap和reduce在shuffle过程中,提供数据的称之为ma段,几首数据的称之为reduce端在spark的两个阶段中,总是前一个阶段产生一批map提供数据,下一阶段喊声一批reduce接收数据2.spark提供2中shuffle管理器   hashshufflemanager   sortshufflemanager3.hashshuf
  • 2024-01-301/30 学习进度笔记
    无论Hive还是SparkSQL分析处理数据时,往往需要使用函数,SparkSQL模块本身自带很多实现公共功能的函数,在pyspark.sql.functions中。SparkSQL与Hive一样支持定义函数:UDF和UDAF,尤其是UDF函数在实际项目中使用最为广泛。回顾Hive中自定义函数有三种类型:第一种:UDF(User-Defined-Fun
  • 2024-01-29SparkSQL无法创建多个Session解决方法
    一、问题现象SparkSQL创建多个session报错,不能创建一个链接,链接Spark自带的数据库derby2024-01-2519:50:59.053[INFO]24/01/2519:50:59INFO!PLExecution!:ExecuteSQL:DROPTABLEIFEXISTSibor_nfsd_instjmport2024-01-2519:51:01.628(INFO]24/01/2519:51:01IN
  • 2024-01-15SparkSQL 操作Hive In Java
    本文的前提条件:SparkSQLinJava1.增加POM依赖<dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><version>8.0.33</version></dependenc