python客户端库,抽象了存储机制(GCS /本地)

时间:2018-08-29 01:51:24

标签: google-cloud-platform google-cloud-storage google-cloud-sdk

是否有一个python客户端库可以解析路径,确定它是本地路径还是GCS路径,并相应地进行读写?例如这样我就可以传递任意路径,而我的业务逻辑可以与确切的存储机制无关?

tensorflow的gfile API是一个选项,但是仅出于使用gfile API的目的而导入tensorflow似乎是一个奇怪的设计。

2 个答案:

答案 0 :(得分:1)

如果您想不了解存储机制,可以使用PyFilesystem (fs)(用于抽象文件系统)和连接器(fs-gcsfs)。 不要与发呆的人的gcsfs库相混淆。

它们有多个差异,在特定情况下,一个可能比另一个更有用。但是,PyFilesystem似乎是更“便携式”的,因为该接口是统一的,而我在它上已经取得了更大的成功。另外,如果您足够小心,则可以让您的应用程序处理甚至不是实际文件系统(zip文件,MemoryFS等)的东西。

答案 1 :(得分:0)

您应该能够通过使用urlparse中的schema来检查URL-gsutil使用gs://来表示Cloud Storage,因此您可以从那里使用一些逻辑来确定文件发生什么处理。

或者,公共存储的GCS文件从https://storage.googleapis.com开始,可以从netloc进行比较