我的目標是實現將數據庫中的數據塊複製到C函數中作爲查詢結果進行處理和返回的最高性能。使用C函數擴展PostgreSQL時實現高性能事務
我是PostgreSQL的新手,我目前正在研究移動數據的可能方法。具體而言,我正在尋找與PostgreSQL特別相關的細微差別或關鍵字來快速移動大數據。
注: 我的最終目標是速度,所以我願意接受,只要它得到很大的性能結果我提出的具體問題以外的答案。例如,我遇到了COPY關鍵字(僅限於PostgreSQL),該表將數據從表格快速移動到文件;反之亦然。我試圖遠離數據庫外部的處理,但如果它提供的性能改進超出了外部處理的明顯缺點,那就這麼做吧。
你說的是在特定記錄上運行c函數,還是在表中的所有記錄上運行函數?另外,您想要處理的數據有多大?結果有多大? – Gary
這張表擁有數百萬條記錄,在一個完美的世界裏,我會一次性轉換整個表格的一列。目前,函數每次調用都在一個記錄上運行,但是我想一次獲取多個(比如說1000,然後根據機會呈現自身或有意義的比例向上擴展),並一次對多個行執行操作。 – Zak
請注意'COPY'只能將數據加載到*表*中,而不是函數。對於大多數人來說,將「複製」數據轉換成表格是有意義的,然後用函數對其進行處理。 –