实时数据收集和“脱机”处理

2024-09-27 00:17:49 发布

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

我有连续的数据流。我想对数据进行少量的实时处理(主要是压缩、从末尾滚动一些数据,无论需要做什么),然后存储数据。估计没问题。HDF5文件格式太好了!OOC数据,没问题。Pytables公司。在

现在麻烦来了。有时,作为一个完全独立的过程,数据仍在收集中,我希望执行一个涉及数据的耗时计算(订单分钟)。这包括读取我正在写的同一个文件。在

人们是怎么做到的?在

至少在过去的一些人看来,这是一个很有挑战性的解决方案。在

部分解决方案:

  1. 看起来HDF5-1.10.0有一个SWMR功能-单写多读。这似乎正是我想要的。我找不到这个最新版本的python包装器,或者如果它存在,我无法让python与hdf5的正确版本对话。欢迎在此提供任何建议。我用的是康达软件包管理器。

  2. 我可以想象写入缓冲区,缓冲区偶尔会被刷新并添加到大型数据库中。如何确保在执行此操作时不会丢失经过的数据?

这看起来也可能在计算上很昂贵,但可能无法绕过这个问题。在

  1. 收集较少的数据。有什么好玩的?在

Tags: 文件数据订单版本过程公司解决方案pytables
1条回答
网友
1楼 · 发布于 2024-09-27 00:17:49

我建议您考虑一下将^{}添加到您的管道中,它可以充当数据缓冲区,并帮助您分离对所收集的数据执行的不同任务。在

管道示例:

原始数据===>;kafka主题(原始数据)===>;小处理===>;kafak主题(轻处理)===>;从light_processing主题读取并写入数据库或文件的进程

同时,您可以使用另一个进程从light_processing topic或任何其他主题读取相同的数据,并进行繁重的处理等等。在

如果light processing和{}都使用相同的groupId连接到kafka主题,则数据将被复制,两个进程将获得相同的流

希望有帮助。在

相关问题 更多 >

    热门问题