代码之家  ›  专栏  ›  技术社区  ›  Saturnix

以熊猫数据帧的形式远程存储和检索300个短时间序列的最快方法

  •  0
  • Saturnix  · 技术社区  · 6 年前

    我需要将这些存储在一个单独的持久性机器中,以便从其他机器访问。其他机器会频繁地读取这些数据,我需要这个读数 尽快

    最初,我将每一行存储为PostgreSQL行。

    然后我换到 arctic ,如果我使用线程,性能提升会非常显著:

    from multiprocessing.pool import ThreadPool
    p = ThreadPool(300)
    
    def read(i):
        return library.read(str(i)).data
    
    
    dataframes = p.starmap(read, [0,1,2,3...])
    

    https://github.com/manahl/arctic/issues/814

    有没有更快的办法?

    我研究过很多不同的解决方案,但它们都关注单个数据帧的大小,而不是单独数据帧的数量。我的数据帧相对来说很小,但是它们很多,我需要读所有的,很多次。

    0 回复  |  直到 6 年前