在 SQL Server 中加载 Python 库很慢

问题描述

我正在使用 Python 进行 sql Server 中不可用的计算。

在 Jupyter Notebooks 中,计算速度非常快(以 csv 作为源),但在 sql Server 中,单次计算需要 3 秒。由于我有成千上万的计算,这太慢了。

下面是我提供数据的存储过程的代码,这是一个波长和内插数据表。

ALTER PROCEDURE [dbo].[sp_polynomeSecondDegree] 
    @ToBeProcessed polynomeRegressionSource READONLY
AS
BEGIN
    SET NOCOUNT ON;

    IF OBJECT_ID('tempdb..##DataStart') IS NOT NULL 
        DROP TABLE ##DataStart

    SELECT * 
    INTO ##DataStart 
    FROM @ToBeProcessed 

    EXECUTE sp_execute_external_script 
                @language = N'Python',@script=N'

import pandas as pd
from sklearn.preprocessing import polynomialFeatures
from sklearn.linear_model import LinearRegression

X = InputDataSet[["WaveLength"]]
y = InputDataSet.InterPol
pre_process = polynomialFeatures(degree = 2)
X_poly = pre_process.fit_transform(X)
pr_model = LinearRegression()
pr_model.fit(X_poly,y)
theta0 = pr_model.intercept_
_,theta1,theta2 = pr_model.coef_

OutputDataSet = pd.DataFrame({''a'':[theta0],''b'':[theta1],''c'':[theta2]} )
',@input_data_1 = N'SELECT * from ##DataStart'
    WITH RESULT SETS (( a float,b float,c float))

END

经过一些消除后,我注意到如果是'普通'脚本,没有导入sklearn,它很快,但是一旦添加导入,就需要很长时间。

有没有办法永久加载这些库,或者在我开始这些计算之前加载这些库以使其更快?

或者这段代码没有意义,有没有更好(更快)的方法来处理这个问题?

提前致谢,

齐格

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...