小编mla*_*orp的帖子

开发模式下的诗歌本地依赖

我正在尝试在使用本地依赖项的项目中使用诗歌。具体来说,我还有另外两个诗歌项目作为 git 子模块包含在内,我已将它们作为路径依赖项添加到顶级诗歌项目中。

[tool.poetry.dependencies]
python = "^3.8"
pydantic = "^1.9.0"
adp-utils = {path = "../../adp-utils", develop = false}
adp-cfw = {path = "../../adp-cfw", develop = false}
Run Code Online (Sandbox Code Playgroud)

如果我使用develop = false设置我的依赖项,我可以将它们导入我的客户端代码中并且一切正常。但是,由于我在开发应用程序时对库进行了更改,因此对库的任何更改都需要我更改库版本并在顶级项目上运行诗歌更新。

当我尝试设置develop = true时,导入语句在顶级应用程序上失败。这些库仍然已安装,并且检查 venv 上的 site-packages 文件夹表明它们在那里。

python python-poetry

11
推荐指数
1
解决办法
1万
查看次数

关于使用 parquet 处理时间序列数据的问题

我正在探索以可扩展且经济高效的方式存储来自传感器的大量数据(时间序列数据)的方法。

目前,我正在为每个传感器编写一个 CSV 文件,按日期分区,因此我的文件系统层次结构如下所示:

client_id/sensor_id/year/month/day.csv

我的目标是能够对此数据执行 SQL 查询(通常获取特定客户端/传感器的时间范围、执行聚合等)我尝试将其加载到 和Postgrestimescaledb但数据量太大并且查询速度慢得不合理。

我现在正在尝试使用SparkParquet文件来执行这些查询,但我有一些问题无法从我对该主题的研究中得到解答,即:

我正在将此数据转换为镶木地板文件,所以我现在有这样的内容:

client_id/sensor_id/year/month/day.parquet

但我担心的是,当Spark加载包含许多Parquet文件的顶部文件夹时,行组信息的元数据并不像我使用包含所有数据(按client/sensor/year/month/day. 这是真的?或者拥有多个 Parquet 文件或单个分区的 Parquet 文件是否相同?我知道镶木地板文件在内部存储在像我正在使用的文件夹层次结构中,但我不清楚这如何影响文件的元数据。

我无法执行此操作的原因是我不断接收新数据,并且根据我的理解,由于页脚元数据工作的性质,我无法附加到镶木地板文件。它是否正确?现在,我只需将前一天的数据转换为镶木地板,并为每个客户端的每个传感器创建一个新文件。

谢谢。

time-series apache-spark parquet

5
推荐指数
1
解决办法
5276
查看次数