×

scala

FlinkSQL快速入门(flink sql教程)

luo5943 luo5943 发表于2024-06-30 浏览8821 评论0
一.FlinkSQL和TableAPI简介 Flink针对流处理和批处理,为我们提供了多种操作API。从图中可知,越上层的API抽象程度越高,门槛越低(大家都熟悉SQL),但也丧失了灵活性。 Table API 是一系列集成在Java或Scala语言中的查询API,它允许通过一些关系运算符操作进行很直观的操作。 FlinkSQL 则是基于Apache Calcite实现了标准的SQL,可以通过编写SQL的方式进行Flink数据处理。 需要引入的依赖 <dependency

scala

Spark(四)(spark四大组件)

零度 零度 发表于2024-06-30 浏览5598 评论0
5、RDD的转换算子 5.1 Value类型 5.1.1 map案例 作用:返回一个新的 RDD,该 RDD 由每一个输入元素经过 func 函数转换后组成 需求:创建一个 1-10 数组的 RDD,将所有元素*2 形成新的 RDD 1)创建 scala> var source = sc.parallelize(1 to 10) ​ source: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[8] at p

scala

SparkSQL基础操作(sparksql使用)

ℋᙚᵐⁱᒻᵉᑡᐷ鲸落 ℋᙚᵐⁱᒻᵉᑡᐷ鲸落 发表于2024-06-29 浏览7196 评论0
1、读取与保存文件 1.1、读取文本文件 读取以下文本文件 1500100001,施笑槐,22,女,文科六班 1500100002,吕金鹏,24,男,文科六班 1500100003,单乐蕊,22,女,理科六班 1500100004,葛德曜,24,男,理科三班 1500100005,宣谷芹,22,女,理科五班 1500100006,边昂雄,21,男,理科二班 1500100007,尚孤风,23,女,文科六班 1500100008,符半双,22,女,理科六班 1500100009,

scala

spark错题本(spark报错)

乔帅-域名批发 乔帅-域名批发 发表于2024-06-29 浏览7206 评论0
一,Task not serializable 原因:用了mysql的jdbc,其connect需要在各个服务器上单据创建,不能集群共享一个数据连接。 下图中的driver和excutor不在同一台服务器,connection不能共享。 第二种:使用了实现某个接口匿名内部类,这个内部类没有任何序列化的标识,所以报错,这种情况下不能使用匿名内部类,创建一个类,实现需要的接口,同时实现Serializable接口: static class MyMapFunction implement

分布式

kafka怎么保证消息顺序?(kafka怎么保证消息顺序消费)

zhuan888 zhuan888 发表于2024-06-29 浏览14786 评论0
kafka学习 1、kafka怎么保证消息的消费顺序? kafka只保证单partition有序,如果Kafka要保证多个partition有序,不仅broker保存的数据要保持顺序,消费时也要按序消费。假设partition1堵了,为了有序,那partition2以及后续的分区也不能被消费,这种情况下,Kafka 就退化成了单一队列,毫无并发性可言,极大降低系统性能。因此Kafka使用多partition的概念,并且只保证单partition有序。这样不同partiiton之间不会干扰对方。

scala

Spark序列化 & Encoders(spark序列化和反序列化)

刀贱贱 刀贱贱 发表于2024-06-29 浏览12170 评论0
spark序列化方式 分布式的程序存在着网络传输,无论是数据还是程序本身的序列化都是必不可少的。spark自身提供两种序列化方式: java序列化:这是spark默认的序列化方式,使用java的ObjectOutputStream框架,只要是实现了java.io.Serializable接口的类都可以,这种方式虽然通用但是性能差,占用的空间也比较大 kryo序列化:相比于java序列化,kryo更高效且序列化结果紧凑,占用空间小,但是不能序列化所有数据类型,且为更好的性能,需要在程序中注

scala

用户行为数据会话(session)切割及spark读写clickhouse完整实现

752557pk 752557pk 发表于2024-06-29 浏览6904 评论0
业务背景:         对采集到的埋点数据进行分析,因为埋点原始数据没有对应会话ID(sessionID),即对于一个人的一次访问超过一定时间间隔(根据业务需要进行设定,本次定为20min)没有操作则记录为一个不重复的id,超过该时间间隔后再次操作就记成另一个sessionid。 使用技术: 1.sparkSQL 2.spark读写clickhouse 3.scala 业务实现: 1.pow依赖 <properties> <spark

scala

(五)Spark广播变量,累加器(spark累加器和广播变量)

田小会 田小会 发表于2024-06-29 浏览6092 评论0
        做应用开发的时候,总会有一些计算逻辑需要访问“全局变量”,比如说全局计数器,而这些全局变量在任意时刻对所有的 Executors 都是可见的、共享的。那么问题来了,像这样的全局变量,或者说共享变量,Spark 又是如何支持的呢?         按照创建与使用方式的不同,Spark 提供了两类共享变量,分别是广播变量(Broadcast variables)和累加器(Accumulators)。接下来,我们就正式进入今天的学习,去深入了解这两种共享变量的用法、以及它们各自的适用

scala

大数据技能竞赛之Spark搭建(五)(spark大数据开发)

。 发表于2024-06-29 浏览6199 评论0
以下操作除特殊说明外都在三个节点上操作。 注意:操作前务必使三台虚拟机可以互相免密通信! 一、安装Scala软件包 使用xftp将软件包上传至三台虚拟机的/usr/package文件夹下 创建工作目录 mkdir -p /usr/scala 解压缩 cd /usr/package tar -zxvf scala-2.12.12.tgz -C /usr/scala 配置环境变量 vi /etc/profile 加入以下内容 保存后退出,使环境变量生效 source /e

scala

Spark从入门到精通02之Spark核心编程

test123 test123 发表于2024-06-29 浏览5928 评论0
Spark 计算框架为了能够进行高并发和高吞吐的数据处理,封装了三大数据结构,用于 处理不同的应用场景。三大数据结构分别是: RDD : 弹性分布式数据集 累加器:分布式共享只写变量 广播变量:分布式共享只读变量 1. RDD 1.1. 什么是RDD RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是 Spark 中最基本的数据处理模型。代码中是一个抽象类,它代表一个弹性的、不可变、可分区、里面的元素可并行计算的集合 弹性 存储