【问题标题】:Mahout - FileDataModel: Delete file(s) after refresh?Mahout - FileDataModel:刷新后删除文件?
【发布时间】:2012-05-09 09:38:37
【问题描述】:
我使用FileDataModel 作为 Mahout 中的推荐数据模型。我首先生成基本文件(例如 prefs.txt)。时不时有一些变化,写来更新文件(prefs.1.txt, prefs.2.txt, ...)。
我可以在将旧的更新文件加载到模型后删除它们吗?当我尝试删除它们(在 Windows 中)时,资源管理器说该文件当前由 Java 使用。为什么不允许删除原始文件?我相信数据现在存储在内存中,因此 Mahout 不再需要该文件。
【问题讨论】:
标签:
refresh
mahout
datamodel
mahout-recommender
【解决方案1】:
它不会重新读取旧文件,只会重新读取新的更新数据。但是,它确实希望“主”数据文件始终存在,因为它一直在寻找其最后修改时间。
一般的想法是,您有时会推送数据文件的完整副本,在此期间,更频繁地推送小型更新文件。如果您这样做,它应该会按预期工作,并且,是的,您可以在读取更新文件后删除它们。
(当然,如果您重新启动服务器,它必须从最后一个主数据文件和剩下的任何更新文件重新开始,这可能不完整或不一致。我只会在您推送后删除更新一个新的主数据文件。)
我不知道为什么您不能删除它们,因为它们从未保持打开状态。也许这是一个奇怪的 Windows 事情。