如何用 mlflow migrate-filestore 把 MLflow 文件存储(mlruns)迁移到 SQLite 数据库

发布时间:2026/9/13 2:22:12

如何用 mlflow migrate-filestore 把 MLflow 文件存储(mlruns)迁移到 SQLite 数据库 如何用 mlflow migrate-filestore 把 MLflow 文件存储mlruns迁移到 SQLite 数据库【免费下载链接】mlflowThe open source AI engineering platform for agents, LLMs, and ML models. MLflow enables teams of all sizes to debug, evaluate, monitor, and optimize production-quality AI applications while controlling costs and managing access to models and data.项目地址: https://gitcode.com/GitHub_Trending/ml/mlflow如果你的 MLflow 元数据一直存放在文件后端./mlruns目录现在想把它们迁移到数据库后端MLflow 内置了mlflow migrate-filestore迁移命令来完成这件事。文件存储后端目前处于维护模式、不再获得功能更新MLflow 建议通过这条迁移路径把已有数据无损地转入数据库。这篇文章给出从执行迁移、启动服务到验证结果的完整操作路径。前提条件需要安装 MLflow 3.10 或更高版本。用以下命令升级pip install mlflow3.10如果正在运行 MLflow tracking server迁移前必须先停掉它。执行迁移命令mlflow migrate-filestore --source /path/to/mlruns --target sqlite:///path/to/mlflow.db两个参数都需要替换为你自己的值--source包含mlruns/FileStore 数据的根目录。/path/to/mlruns替换为你的mlruns目录实际路径例如fs2db/README.md中给出的./mlruns。--target目标 SQLite URI必须以sqlite:///开头例如sqlite:///mlflow.db。URI 中数据库文件的父目录必须已经存在否则命令会直接报Parent directory does not exist错误。此外还有一个可选参数--progress/--no-progress默认开启迁移过程中按实验输出进度信息。命令会读取指定目录中的全部数据并写入指定的 SQLite 数据库。迁移对已迁移的数据是原子的如果过程中出现任何错误所有已插入的行都会回滚、不提交任何迁移数据因此你可以在修复问题后安全地重新执行该命令。需要注意两点限制见 migrate-from-file-store.mdx目标数据库必须为空。工具拒绝写入已包含数据的数据库以防冲突。如果目标文件已经存在会提示是否覆盖见 CLI 实现。只支持 SQLite 作为目标。原因是 FileStore 会生成超出 PostgreSQL 和 MySQL 32 位整数上限的大型实验 ID而 SQLite 可以原生处理这些 ID。迁移了哪些数据工具会迁移文件后端中的全部元数据类别实体Experiments实验、实验 tagsRunsrun、params、metrics、latest metrics、tagsDatasets数据集、inputs、input tagsRun I/O模型输入run → model、模型输出run → modelTracestrace 信息、trace tags、trace 请求元数据Assessments评估feedback、expectationsLogged Models日志模型及其 tagsModel Registry注册模型、模型版本、tags、别名Prompts提示词以注册模型和模型版本形式存储迁移是无损的实验、run、trace、model 等所有 ID 原样保留creation_time、start_time、end_time、last_update_time等时间戳保留原有的毫秒精度.trash目录中已删除的实验和 run 也会带着deleted生命周期阶段一并迁移artifact URI 保持不变。不会迁移的内容Artifacts模型文件、图片等留在原位置不动数据库里存储的 artifact URI 仍指向原有文件。Trace spans以 artifact 文件形式存储不进入数据库。用新数据库启动服务并验证迁移完成后显式指定新数据库启动 tracking servermlflow server --backend-store-uri sqlite:///path/to/mlflow.db这里要显式指定--backend-store-uri是有原因的如果没有显式设置tracking server 在./mlruns中检测到已有文件后端实验数据时会优先使用./mlruns否则回退到sqlite:///mlflow.db。依赖这种默认行为容易让服务继续读旧的文件存储因此迁移后应始终显式指向新数据库。启动后打开 MLflow UI确认你的实验、runs 和模型都在即表示迁移成功。边界说明与相关路径和mlflow-export-import的区别后者是另一个独立工具用于在两个运行中的 MLflow server 之间复制对象runs、实验、注册模型等。它不保留原始 ID 和时间戳且要求源和目标 server 都在运行。如果你要保留 ID 和时间戳、从文件存储迁到数据库用migrate-filestore而不是mlflow-export-import。确有必要继续用文件系统后端时的逃生口在极少数无法迁移的场景例如浏览从无法运行数据库的 HPC 集群同步过来的只读mlruns数据或用rsync在机器间共享目录快照可以在启动 server 或运行客户端代码之前设置环境变量来关闭该异常export MLFLOW_ALLOW_FILE_STOREtrue mlflow server --backend-store-uri ./mlruns这个选项仅用于确实受约束的工作流正常情况下仍应使用上面的迁移工具。源码入口可参考 迁移命令 CLI 定义 与 fs2db/README.md。如果遇到 PostgreSQL/MySQL 支持相关的问题或想反馈文档指引到 MLflow 的 GitHub issue #18534详见 migrate-from-file-store.mdx 的 Feedback 一节。【免费下载链接】mlflowThe open source AI engineering platform for agents, LLMs, and ML models. MLflow enables teams of all sizes to debug, evaluate, monitor, and optimize production-quality AI applications while controlling costs and managing access to models and data.项目地址: https://gitcode.com/GitHub_Trending/ml/mlflow创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/9/13 2:22:12

STM32信号链上的Savitzky-Golay滤波:原理、实现与ADC实战

简介:Savitzky-Golay滤波器实现包面向STM32单片机平台,用于嵌入式系统在数据采集中对信号进行平滑除噪。该算法由Savitzky与Golay于1964年提出,核心为局域多项式最小二乘拟合,能够在抑制噪声的同时保持信号形状与宽度不变&#xf…

2026/9/13 3:12:15

Arm mango是什么:嵌入式SDK成熟度评估核心机制解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/13 0:01:16

拯救者Y7000黑屏故障排查与维修实战指南

1. 项目概述:一台黑屏的拯救者Y7000,到底卡在哪一步? 联想拯救者Y7000系列笔记本,从2018年第一代搭载i5-8300H开始,到后来的i7-9750H、i7-10750H、i5-11400H,再到2023年款的R7-7840HS,它始终是学…

2026/9/13 0:01:16

拯救者Y7000黑屏故障排查与维修实战指南

1. 项目概述:一台黑屏的拯救者Y7000,到底卡在哪一步? 联想拯救者Y7000系列笔记本,从2018年第一代搭载i5-8300H开始,到后来的i7-9750H、i7-10750H、i5-11400H,再到2023年款的R7-7840HS,它始终是学…

2026/9/12 6:29:36

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/12 14:32:17

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/12 6:37:43

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码