2016-01-22 67 views
0

同一个HDF5文件,我有2个Python程序:可以在两个Python程序写入和读取的同时

1)数据reciever:这是一个在龙卷风writen TCP服务器,约3000行数据会每秒发送一次。这里是左撇子:

def _on_data_rev(data_list): 
    tickstore_file=r"d:\data\2016_01_11.h5" 
    tempdf=pd.DataFrame(data_list) 
    hdf_output = pd.HDFStore(tickstore_file, complib='blosc') 
    hdf_output['_'+str(int(time.time()))]=tempdf 
    hdf_output.flush() 

的有关资料非常快,所以这个计划只做保存工作,但没有别的。

2)数据分析:计划2将分析在同一个文件的最新的数据每秒

我可以读在同一时间的HDF5文件?这会破坏HDF5文件吗?

回答

1

您要找的是HDF5的单写入多读卡器(SWMR)功能。

SWMR在1.10发布中列为new,其公平比特为documentation

它也在h5py版本2.5.0。

至于熊猫的支持,我不太确定,因为我不使用它。