有没有人想出一种方法让文件在Google的newly open sourced Colaboratory中跨会话持久化?
使用示例笔记本,我成功地验证和传输了Google驱动器实例中的csv文件,并将它们保存在/tmp、my~和~/datalab中。熊猫也可以从磁盘上很好地读取它们。但一旦会话超时,看起来整个文件系统都被删除了,一个新的VM就启动了,而没有下载文件。
考虑到谷歌的Colaboratory Faq,我想这并不奇怪:
Q: Where is my code executed? What happens to my execution state if I close the browser window?
A: Code is executed in a virtual machine dedicated to your account. Virtual machines are recycled when idle for a while, and have a maximum lifetime enforced by the system.
考虑到这一点,也许这是一个功能(即“使用谷歌云存储,这在Colaboratory中工作得很好”)?当我第一次使用这个工具时,我希望我的文件/Colab笔记本中的任何.csv文件也会加载到运行笔记本的VM实例中:/
Clouderizer可能会提供一些数据持久性,代价是设置时间长(因为您只将google colab用作主机),而且工作空间小。
但是,在我看来,这比当你忘记保存进度时让你的文件被“回收”要好得多。
不确定这是否是最好的解决方案,但是您可以在Colab和Drive之间同步数据,并使用如下自动身份验证:https://gist.github.com/rdinse/159f5d77f13d03e0183cb8f7154b170a
你的解释是正确的。vm是短暂的,在一段时间不活动后可以循环使用。现在在VM本身上没有持久数据的机制。
为了让数据持久化,您需要将其存储在虚拟机之外的某个地方,例如驱动器、GCS或任何其他云托管提供商。
在I/O example notebook中提供了一些从外部源加载和保存数据的方法。
相关问题 更多 >
编程相关推荐