在创建 mlflow 跟踪服务器并指定将 SQL Server 数据库用作后端存储时,mlflow 在 dbo 模式中创建一堆表。有谁知道是否可以指定不同的模式来创建这些表?
3 回答
可以更改mlflow/mlflow/store/sqlalchemy_store.py
以更改存储的表的架构。
很可能这对您来说是错误的解决方案,因为您将与开源不同步并失去改变这一点的新功能,除非您自己维护分叉。您能否回复您的用例?
您可以使用 postgres uri 选项:
Postgres URI 选项示例:
“postgresql://postgres:postgres@localhost:5432/postgres?options=-csearch_path%3Ddbo,mlflow_schema”
在您的 Mlflow 代码中:
mlflow.set_tracking_uri("postgresql://postgres:postgres@localhost:5432/postgres?options=-csearch_path%3Ddbo,mlflow_schema")
!不要忘记创建“mlflow_schema”模式。
我使用 MSSQLServer 作为后端存储。通过为 MLFlow 使用的 SQLServer 用户指定默认架构,我可以使用与 dbo 不同的架构。
就我而言,如果 dbo 中存在 MLFlow 表(例如:体验),那么将使用这些表。如果没有,MLFlow 将在默认模式中创建这些表。