Postgresql

從 UDF 或 SP 呼叫 python 機器學習模型

  • January 10, 2017

我想在更新後通過機器學習模型從我的數據庫(Postgres)中執行記錄。該模型位於 model.py 文件中。

除了簡單地將 python 模型移植到 SP 或 UDF 之外(如果有的話,我不知道哪個最好用)。

我如何呼叫這個 python 模型並將記錄參數傳遞給模型並返回所需的結果?

你基本上有三個選擇:

  1. 有一個用 Python 編寫的程序,它使用PsycoPGPyGreSQL其他具有等效功能的驅動程序PostgreSQL中獲取數據並在 Python 中處理它。或者你可以使用像SQLAlchemy這樣的工具包,它作為對象關係映射器工作。
  2. 使用PL/Python編寫使用者定義函式,這意味著您實際上使用 Python 語言PostgreSQL 中編寫 UDF。如果您的模型適用於某個函式model_predict(a, b, c),您可以以類似於以下方式呼叫它:

SELECT a, b, c, model_predict(a, b, c) AS prediction FROM table WHERE <condition> 3. 將 PostgreSQL中的數據(使用COPY FROM…,或使用任何工具,例如pgAdmin)導出為合適的格式(例如 CSV),然後將其導入並在 Python 中處理(例如,您可以使用Pandas 讀取 csv)。

引用自:https://dba.stackexchange.com/questions/160620