- 博客(19)
- 收藏
- 关注
原创 Spark实时流数据处理实例(SparkStreaming通话记录消息处理)
本文介绍了一个基于Spark Streaming和Kafka的手机通信计费系统实现方案。系统通过模拟基站交换机生成随机通话记录,包括主/被叫号码、通话时间等信息,并使用Kafka生产者发送到不同主题。Spark Streaming程序从Kafka消费数据,处理后将通话记录按年月分区存储到HDFS中。主要实现步骤包括:1)环境准备和Kafka主题创建;2)开发通话记录生产者模拟程序;3)实现Spark Streaming消息接收处理逻辑;4)将处理后的数据按时间维度存储到HDFS。该系统实现了分布式通信数据的
2025-05-27 15:39:07
1041
原创 Spark应用部署模式实例(Local、Spark on YARN、Spark Standalone模式)
hadoop中YARN的工作节点上的代理,负责容器生命周期管理,并监控资源使用情况(如CPU、内存、磁盘、网络等)。#hadoop中HDFS的数据存储节点,负责存储实际的数据块,并响应来自客户端或 NameNode 的读写请求。#hadoop中HDFS的名称节点(核心组件),管理文件系统的命名空间,并控制客户端对文件的访问。SparkSubmit # pyspark命令启动的进程,实际上就是启动了一个Spark应用程序。#hadoop中YARN的资源经理(主控服务),负责集群资源管理和调度应用的任务。
2025-05-07 13:55:14
582
原创 搭建spark伪分布集群
2.更改了主机名,还需要修改/etc/hosts文件,在这个文件设定了IP地址与主机名的对应关系,类似DNS域名服务器的功能。3.修改spark相关配置文件,包括spark-env.sh和slave两个文件。5.重启spark集群 出现worker和master表示成功。7.在浏览器输入:http://vm01:8080/ 查看。1.先查看虚拟机的默认名称,将其修改为vm01。4.将localhost改为vm01 保存退出。
2025-05-07 13:52:08
480
原创 pyspark、Jupter Notebook、pycharm安装和测试
在Jupyter Notebook页面中编写代码的方式,与普通的python编程环境中基本一样,唯一不同的是,在代码执行之前,必须先运行一次findspark.init()方法,只需在当前Jupyter Notebook页面中执行一次即可,不用重复执行。执行下面的命令将PyCharm安装包文件解压到/usr/local目录,然后切换到安装目录,执行bin目录下面的pycharm.sh脚本启动PyCharm集成开发环境。◇ pyspark库是通过pip命令安装的,针对的是Python3.6语言环境。
2025-05-05 00:04:40
905
原创 DStream数据源读取(文件数据流&Kafka数据流)
Spark应用程序中实时读取Kafka的消息内容,我们先切换到主目录的streaming子目录,使用vi 编辑名为KafkaStreamDemo.py的测试程序。spark-streaming-kafka-0-8-assembly_2.11-2.4. 8.jar的依赖库,并将其放在streaming文件夹。再新打开一个Linux终端窗体,切换到~/streaming目录,使用echo命令依次在logfile子目录中创建1.txt和。随后在消息生产者窗体中输入一些包含单词的字符串,这样运行的。
2025-04-23 19:50:58
733
原创 DStream输出操作
保存以上代码并退出编辑器,确保nc服务端在监听9999端口,然后在Linux终端窗体中通过spark-submit命。令将NetworkWordCountSave.py程序提交到Spark运行,然后在nc服务端输入文字内容(里面出现了很多以output-开关的子目录,其中保存的就是不同批次时间点的数据文件。ssc = StreamingContext(sc, 2) # 批处理间隔2秒。以saveAsTextFiles算子为例,将词频统计结果保存到文本文件中。# 词频统计结果保存到文件系统。
2025-04-23 15:12:18
558
原创 DStream转换操作(基于更新状态&滑动窗口)
全局的运行日志级别,或在代码中使sc.setLogLevel()方法设定当前应用程序的运行日志级别,可以是WARN、ERROR、INFO、DEBUG、ALL等几种。程序中至少需要启动两个线程,其中一个用来接收数据,另一个用来处理数据,如果只有一个线程,就无 法对数据进行处理,也就看不到任何实质性的效果。Spark Streaming接收的是一个源源不断产生数据的数据源,是不间断循环运行的。保存修改的代码并退出,确保nc服务端在监听9999端口,然后将修改后的代码提交到Spark运行,然后在。
2025-04-22 15:49:36
531
原创 Ubuntu20.04安装MySQL 8.0最新版
mysql-client_8.0.27-1ubuntu20.04_amd64.deb mysql-community-client_8.0.27-1ubuntu20.04_amd64.deb , 要安 装的是第⼀个不带 community 的这个 ( 因为之前安装了 community 版本还是报这个错,安装 mysql-community-server_8.0.27-1ubuntu20.04_amd64.deb 这个包。解压完后的 deb 包都是红⾊的,没有执⾏权限,所以给他们添加执⾏权限。
2025-03-22 18:14:02
722
原创 TopN问题分析和单元实践练习
比如,文件的原始内容是四行字符串(即"1111"、"2222"、"3333"、"4444"),得到的新 RDD 里面的元素应为(1111, 1111, 3333, 2222)。[("张婷","女",19,"2019 级"),("李婉","女",20, "2019 级")("刘思思","男",22,"2018 级")](1)有一个元组(1,2,3,4,5),请使用 Spark 的 map()将其转换为一系列元组的集合:(0,1,1), (0,4,2),提示:先 sortBy(),再 filter()。
2025-03-22 18:08:52
645
原创 RDD的创建和转换操作
如图所示,如果只有jps,而没有其他的进程,说明hdfs没有启动,如果有红圈中的相关进程,说明启动成功,不用进行此步骤。stu=["张婷,女,19,2019级","李婉,女,20,2019级","刘思思,男,22,2018级"]stu=["张婷,女,19,2019级","李婉,女,20,2019级","刘思思,男,22,2018级"]使用parallelize()方法从普通集合元素创建RDD。如果报错 可能代码错误 或超出范围 重在理解。完成后quit()回车,退出pyspark。红色代码可以直接复制。
2025-03-21 22:47:37
758
spark-streaming-kafka-0-8-assembly-2.11-2.4.8
2025-04-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人