![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
大数据
文章平均质量分 88
北海怪兽Monster
这个作者很懒,什么都没留下…
展开
-
Spark SQL快速入门
SparkSQL 是Spark的一个模块,用于处理海量结构化数据限定:结构化数据Pandas -> DataFrame -> 二维表数据结构,单机(本地)集合SparkCore -> RDD -> 无标准数据结构,存储什么数据均可SparkSQL -> DataFrame -> 二维表数据结构,分布式集合(分区)两者都是,有分区的,分布式的,弹性的不同在于,RDD可以存储任何类型数据。DataFrame存储的数据结构限定为:二维表结构化数据。原创 2023-03-07 10:57:58 · 862 阅读 · 0 评论 -
Spark 内核调度
Spark层级关系梳理:1、一个Spark环境可以运行多个Application2、一个代码运行起来,会成为一个Application3、Application内部可以有多个job4、每个Job由一个Action产生,并且每个Job都有自己的DAG图5、一个Job的DAG图 会基于宽窄依赖划分为不同的阶段6、不同阶段内 基于分区数量,形成多个并行的内存迭代管道。原创 2023-03-05 22:37:07 · 333 阅读 · 0 评论 -
Spark 广播变量&累加器
1、广播变量解决了什么问题分布式集合RDD和本地集合进行关联使用的时候,降低内存占用以及减少网络IO传输,提高性能2、累加器解决了什么问题分布式代码执行中,进行全局累加。原创 2023-02-20 23:07:56 · 352 阅读 · 0 评论 -
Spark 学习案例
数据来源:使用搜狗实验室提供的【用户查询日志】数据。使用Saprk框架,将数据封装到RDD中进行数据处理分析。因为前面我们都是使用 Anaconda环境,所以在进入Anaconda安装jieba。因为我使用的远程解释器环境,需要点击以下远程解释器,更新解释器环境内置的库。3、因为代码中使用jieba库,所以所有的机器都应该安装jieba库。因为Executor运行在其他机器上时,没有jieba库会运行报错。这个地址可能过期了,需要的伙伴可以私聊博主。2、将两个文件上传到Linux中。原创 2023-01-30 23:27:13 · 422 阅读 · 0 评论 -
Spark Core ---- RDD持久化
1、Cache和CheckPoint区别Cache是轻量化保存RDD数据,可存储在内存和硬盘,是分散存储,设计上数据是不安全的(保留RDD血缘关系)CheckPoint是重量级保存RDD数据,是集中存储,只能存储在HDFS上,设计上是安全的(不保留血缘关系)2、Cache和CheckPoint的性能对比Cache性能更好,因为是分散存储,多个Executor并行执行,效率高,但是风险大。可以保存到内存中(比较占内存),更快。原创 2023-01-26 16:19:13 · 210 阅读 · 0 评论 -
Spark 常用算子02
这个算子,是将RDD各个分区数据都拉取到Driver中,注意的是:RDD是分布式对象,其数据量会很大,所以使用这个算子之前,必须知道,结果数据集不会太大。分区1的数据会整体进行处理,将1和2乘以10,放入新的分区中,只会有一次IO的处理。大小的比较依据的是对象的compare方法进行比较,如果没有重写compare方法,对于数字来说,按照大小降序,对于字符串来说,按照ASCII码进行比较。对这个rdd数据执行乘以10的操作,那么分区1的1,2分别乘以10,放入一个新的分区,会执行两次操作。原创 2023-01-24 19:23:21 · 1585 阅读 · 0 评论 -
Spark Core 编程入门,常用算子01
如果没有action,Transformation算子之间的迭代关系,就是一个没有通电的流水线,只有action到来,这个数据处理的流水线才开始工作。因为,这个API表名了自己是小文件读取专用,那么文件的数据很小,分区很多,导致shuffle的几率更高,所以尽量少分区读取数据。没有action算子,上面的转换算子是不生效的。功能:map算子,是将RDD的数据一条条处理(处理的逻辑 基于算子中接收的处理函数),返回新的RDD。功能:将rdd的数据进行分组,分组效果和sql的分组是一致的,就是hash分组。原创 2023-01-20 17:34:30 · 604 阅读 · 0 评论 -
Spark Core----RDD详解
RDD概念的诞生来自于一片国外论文Matei等人提出了RDD这种数据结构标题翻译过来,弹性分布式数据集:一个在内存集群计算中可以实现高度容错的计算对象。RDD定义RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,代表一个不可变、可分区、里面的元素可并行计算的集合。Dataset:一个数据集合,用于存放数据的。Distributed:RDD中的数据是分布式存储的,可用于分布式计算。原创 2023-01-10 23:16:22 · 706 阅读 · 0 评论 -
Spark类库----PySpark(本地开发环境配置&&远程SSH解释器配置)
Python语言开发Spark程序步骤?主要是获取SparkContext对象,基于SparkContext对象作为执行环境入口如何提交Spark应用?将程序代码上传到服务器上, 通过spark-submit客户端工具进行提交。原创 2023-01-04 23:56:09 · 2038 阅读 · 0 评论 -
Spark环境搭建(Hadoop YARN模式)
按照前面环境部署中所学习的,如果我们想要一个稳定的生产Spark环境,那么最优的选择就是构建:HA StandAlone集群。不过在企业中, 服务器的资源总是紧张的,许多企业不管做什么业务,都基本上会有Hadoop集群。也就是会有YARN集群。对于企业来说,在已有YARN集群的前提下在单独准备Spark StandAlone集群,对资源的利用就不高。所以, 在企业中,多数场景下,会将Spark运行到YARN集群中。原创 2022-12-30 21:41:59 · 3107 阅读 · 0 评论 -
Spark环境搭建(Stand alone模式 && Stand alone HA模式)
Standalone模式是Spark自带的一种集群模式,不同于前面本地模式启动多个进程来模拟集群的环境,Standalone模式是真实地在多个机器之间搭建Spark集群的环境,完全可以利用该模式搭建多机器集群,用于实际的大数据处理。开启两个任务,就会在master进程中开启两个对应的 Driver,对应的Executor各自汇报给对应的Driver,Executor数量根据你任务情况而定。在 standalone 模式下, master进程和 worker进程是固定的。原创 2022-12-28 22:34:40 · 1534 阅读 · 0 评论 -
Spark环境搭建(本地模式)
前置环节介绍:node1:hadoop NN DN RM NM ,hivenode2:hadoop SNN DN NMnode3:hadoop DN NMlocal模式基本原理本质:启动一个JVM Process进程(一个进程里面有多个线程),执行任务Task、Local模式可以限制模拟Spark集群环境的线程数量,即local[a]或local[*]其中N代表可以使用N个线程,每个线程拥有一个cpu core。如果不指定N。则默认一个线程(该线程有一个core),通常CPU有几个core,就指原创 2022-12-27 22:58:12 · 1580 阅读 · 0 评论 -
Spark基础入门----框架概述
Apache Spark是用于大规模数据处理的统一分析引擎Spark 最早源于一片论文,该论文是由加州大学柏克莱分校的Matei Zaharia等人发表。论文中提出了一种弹性分布式数据集(RDD)的概念。总的说,Spark借鉴了Map Reduce思想发展而来,保留了其分布式并行计算的优点并改进了明显的缺陷,让中间数据存储在内存中提高了运行速度,并提供了丰富的操作数据的API提高了开发速度。Spark是一款分布式内存计算的统一分析引擎。其特点就是对任意类型的数据进行自定义计算。原创 2022-12-26 20:28:28 · 649 阅读 · 0 评论 -
Hive 学习Demo
学习demo原创 2022-12-26 17:22:58 · 442 阅读 · 0 评论 -
Apache Hive DML语句与函数使用
使用insert插入数据,底层会走MR程序,找yarn申请资源,走map阶段,reduce阶段,中间还有繁琐的shuffle,最后输出结果。之前我们加载数据是,创建一张表,将结构化文件放到hadoop对应表路径下。也可以使用insert语法把数据插入到指定的表中,最常用的配合是把查询返回的结果插入到另一张表中。写了local就是指本地文件系统,不管你客户端在哪里,指的是hive服务所在的本地文件系统。这个也是会执行一个MR程序。内置函数可分为:数值型函数,日期类型函数,字符串类型函数,集合函数,条件函数。原创 2022-12-24 17:40:57 · 463 阅读 · 0 评论 -
数据仓库基础与Apache Hive入门
基于Hive设计使用特点, HQL中的create语法是重点,建表是否合适直接影响数据文件是否映射成功,进而影响后续是否可以基于SQL分析数据,直白一点,没有表,表没有数据,Hive分析根本不起作用。通常是存储在关系数据库中,如mysql / derby(内置数据库)等,Hive中的元数据包括表的名字,表的列和分区及其属性,表的属性是(是否为外部表等),表的数据所在目录等。就是因为存放元数据的表,是其他编码,对中文支持不友好,你修改之后呢,之前创建的表,还是会乱码,只有删除重建才会生效。原创 2022-12-23 20:02:08 · 872 阅读 · 0 评论 -
Hadoop学习----MapReduce&&YARN
是一个分布式计算框架,用于轻松编写分布式应用程序,这些应用程序以可靠,容错的方式并行处理大型硬件集群上的大量数据MapReduce 是一种面向海量数据处理的一种指导思想,也是用于对大规模数据进行分布式计算的编程模型。原创 2022-12-22 15:57:45 · 931 阅读 · 0 评论 -
Hadoop学习----HDFS
传统文件系统无法支撑高效率的计算分析,传统存储方式意味着数据,存储是存储,计算是计算,当需要处理数据时,把数据移动过来(移动到内存,内存能容下多大数据),数据和程序属于不用的技术厂商实现,无法有机统一整合在一起。传统常见的文件系统,更多的指的是单机文件系统,也就是底层不会横跨多台机器实现,比如windows操作系统的文件系统,Linux系统的文件系统等。是Apache Hadoop核心组件之一,作为大数据生态圈最底层的分布式存储服务而存在,也可以说大数据首先要解决的问题就是海量数据的存储问题。原创 2022-12-21 16:59:34 · 689 阅读 · 0 评论 -
Hadoop学习----源码编译,集群搭建
第一,里面有一些写的不好,我可以修改源码,这个略过。第二,软件运行需要操作系统支持,操作系统之间存在差异。Linux有很多发行版,那么之间本地库环境存在差异。Hadoop某些操作需要本地库支持,例如数据压缩,读写IO流操作。所以为了让hadoop更加稳定适应你的平台最好的是下载源码重新编译。正常情况下,非生产环境直接使用官方编译安装包即可,但是官方提供的安装包不支持本地库。再源码包根目录下,有BUILDING.txt文件,描述了你需要做哪些动作。根据以上步骤,我是安装成功了的。1、安装编译相关的依赖。原创 2022-12-17 21:46:24 · 678 阅读 · 0 评论 -
Hadoop学习----Hadoop介绍
Hadoop是Apache软件基金会的一款开源软件。底层是由java语言实现。功能:允许用户使用简单的编程模型实现跨机器集群对海量数据进行分布式计算处理。Hadoop核心组件:Hadoop HDFS(分布式文件存储系统):解决海量数据存储Haqdoop YARN(集群资源管理和任务调度框架):解决资源任务调用Hadoop MapReduce(分布式计算框架):解决海量数据计算官网:http://hadoop.apache.org/Hadoop集群包括两个集群:HDFS集群,YARN集群。原创 2022-12-16 15:43:40 · 365 阅读 · 0 评论