apache-spark - 获取 TypeError:在 Apache Spark / Databricks 中尝试流数据时,路径只能是单个字符串
问题描述
我正在尝试在 Databricks 上测试 Apache Spark 中的流数据。
使用 Azure 事件中心进行流式传输相对简单,但我正在尝试流式传输一些静态数据。
我首先使用以下数据框读取存储在名为 teststream 的文件夹中的静态数据
thestream = spark.read.parquet('/mnt/lake/RAW/teststream/')
然后,我尝试通过将“teststream”文件夹中的数据转换为流式查询来读取数据,该流式查询使用以下代码在数据到达时不断更新:
streamingFlights = (spark
.readStream
.option("maxFilesPerTrigger", 1) #Treat a sequence of files as a stream by selecting one file at a time
.csv(thestream)
)
但是,当我运行上述内容时,出现以下错误:
TypeError: path can be only a single string
关于导致错误的任何想法?
解决方案
以下代码将按照文件创建的时间顺序一次读取一个文件来模拟文件中的流。
dataPath = "/mnt/lake/RAW/DummyEventData/"
static = spark.read.parquet(dataPath)
dataSchema = static.schema
deltaStreamWithTimestampDF = (spark
.readStream
.format("delta")
.option("maxFilesPerTrigger", 1)
.schema(dataSchema)
.parquet(dataPath)
)
推荐阅读
- java-8 - 带有 try catch 的 Java8 谓词
- ajax - Laravel 中的 AJAX 调用返回 Http 异常
- google-cloud-platform - IP 配置 Google Cloud VPS 和 CPanel
- oop - 如何通过修改 Ada 中的基类型返回类范围对象的副本
- python - 为什么 numpy 的左位移比 python 慢?
- python - 为什么我得到'numpy.ndarray'对象没有属性'convert'?
- javascript - 如何使用 javascript 附加和编辑选择标签?
- micropython - Flash microbit 嵌入类 .py 文件
- python - 去噪非常嘈杂的大示波器数据
- macos - 如何使用applescript计算卷大小列表?