如何将许多经常更新的文件存储在可以实时访问的集中位置

2024-04-29 05:44:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我在谷歌云中有很多服务器实例,它们整天都在运行,从各种边缘设备收集数据。我有大约100台服务器,每个服务器收集大约50台设备的数据

每个数据源的数据以不同的频率更新,有些可以是每秒更新,有些可以是每分钟、5分钟、半小时、每小时、4小时、半天,直到每天更新

数据通常是两列,一列是日期+时间,另一列是数据点,所以它可以是温度数据,或者土壤湿度数据,风向之类的数据

现在,每台服务器都将数据收集到python pandas数据帧中,并实时更新,然后在一天结束时,将数据更新或保存到csv文件(2列csv文件)中。每个收集数据的设备都有自己的csv文件。我不会将它们更新到一个大数据帧中,因为由于更新频率的不同,其中会有很多空白

它可能是这样的:

DateTime              Device-19-Location-27-Temperature
01-June-2020 1:00p.m. 21.4
01-June-2020 1:01p.m. 21.5
....

当我需要访问数据时,我必须一个接一个地SSH到服务器,然后将文件下载到我的计算机中,然后处理数据

我对数据库的了解几乎没有,所以我一直这样做

我的第一个问题是,将它们存储在单独的csv文件中是最好的方式吗?我想这样做是因为不同的更新频率

我的第二个问题是,谷歌云或其他地方是否有一个集中的位置或数据库,我可以在那里存储所有这些文件,访问它们,使用某种python API更新它们,这样我只需要访问一个位置就可以获取所有数据


Tags: 文件csv数据实例服务器数据库时间温度
1条回答
网友
1楼 · 发布于 2024-04-29 05:44:37

根据您的描述,我认为NoSQL数据库是一个不错的选择,您可以检查以下选项:Cloud FirestoreFirebase Realtime Database

关于存储文件的其他问题,请访问它们,并使用某种python API更新它们。在GCP上,选项可以是Cloud Storage buckets。您可以将文件存储在那里,下载以使用它们,并在完成使用Client Libraries时更新版本。此选项不用于直接在存储桶上(动态)使用文件

相关问题 更多 >