当前位置: 首页 > news >正文

Spark流式读取文件数据

流式读取文件数据

在这里插入图片描述
在这里插入图片描述

from pyspark.sql import SparkSession

ss = SparkSession.builder.getOrCreate()

# todo 注意1:流式读取目录下的文件 --》一定一定要是目录,不是具体的文件,
#       目录下产生新文件会进行读取
# todo 注意点2:csv和JSON必须指定schema   以前的JSON文件是不要指定

df_csv = ss.readStream.csv(‘hdfs://node1:8020/目录’)
df_json = ss.readStream.json(‘hdfs://node1:8020/目录’)

# todo 每个options都不一样

options2 ={
‘host’:‘192.168.88.100’,
‘port’:9999
}

options={
# 每个批次读取1个文件
‘maxFilesPerTrigger’:1,
‘latestFirst’:‘true’
}

df_json.writeStream.start(format=‘console’,outputMode=‘complete’).awaitTermination()

流式读取文件的注意点

删除已经处理的文件(文件一)
你修改了文件一的内容,不修改文件名,你再次上传会发现它不去读取
但是你不修改文件内容,修改文件名,你再上传会发现它还会去读取

场景:某天你上传一个文件,发现它不做任何读取和处理,你需要考虑,这个文件名以前是否处理过了。

文件的读取方式在实际开发中用的比较少,每生产一条数据,就要生成一个文件(单单正对流处理
但是,如果将多条数据收集之后同一写入文件,那就变成了和批处理方式一样的开发

文件读取数据的参数指定

在这里插入图片描述

当spark读不过来的时候,可以调整latestFirst,设置为True就会处理最新的文件

true时,就会将所有相同文件名认定为同一个文件,不管全部路径是否相同,这就涉及到相同的路径不会连续处理 上面刚说的

http://www.lryc.cn/news/285596.html

相关文章:

  • Leetcode 3011. Find if Array Can Be Sorted
  • Databend 开源周报第 129 期
  • python 正则表达式学习(1)
  • 安全防御-基础认知
  • 各省税收收入、个人和企业所得税数据,Shp、excel格式,2000-2021年
  • Vue记录
  • 【JavaEE进阶】 Spring Boot⽇志
  • 《GitHub Copilot 操作指南》课程介绍
  • 结构体(C语言)
  • HNU-数据挖掘-实验1-实验平台及环境安装
  • JavaEE中的监听器的作用和工作原理
  • Webpack5入门到原理1:前言
  • #vue3 实现前端下载excel文件模板功能
  • 《WebKit 技术内幕》之五(3): HTML解释器和DOM 模型
  • 136基于matlab的自适应滤波算法的通信系统中微弱信号检测程序
  • 【Linux】权限 !
  • axios原理
  • epoll
  • AEB滤镜再破碎,安全焦虑「解不开」?
  • 深度学习和机器学习中针对非时间序列的回归任务,有哪些改进角度?
  • 无限商机、拓全国、赢未来!2024上海国际轴承展重磅来袭!
  • PPT 编辑模式滚动页面不居中
  • 笨蛋学设计模式结构型模式-享元模式【13】
  • 磁盘的分区与文件系统的认识
  • 韩国访问学者如何申请?
  • MybatisPlus框架入门级理解
  • ELK 分离式日志(1)
  • <蓝桥杯软件赛>零基础备赛20周--第15周--快速幂+素数
  • Opencv小项目——手势数字刷TIKTOK
  • 【优化技术专题】「性能优化系列」针对Java对象压缩及序列化技术的探索之路