gsutil可以创建加速gcsfuse所需的psudeo目录条目吗?

问题描述 投票:0回答:1

尽管Google Cloud Storage是不需要目录条目的平面对象存储,但添加伪目录目录占位符(名称以/结尾的空条目)使gcsfuse更快了很多。您可以忽略gcsfuse --implicit-dirs选项,并以非常实用的性能浏览GCS目录,如果没有占位符,则情况并非如此。

Q。是否有一种方法可以像gsutil一样向gsutil cp -r your_directory gs://your-bucket/发出命令,该命令将在上传文件时创建目录占位符?

替代方法是调用GCS API,但gsutil具有许多有用的功能,包括并行上传和重试处理。

示例

制作本地树:

$ mkdir -p your_directory/subdir
$ echo hi > your_directory/hi.txt
$ echo there > your_directory/subdir/there.txt

$ ls -lR your_directory
total 8
-rw-r--r--  1 jerry  staff   3 Jan 21 17:24 hi.txt
drwxr-xr-x  3 jerry  staff  96 Jan 21 17:24 subdir/

your_directory/subdir:
total 8
-rw-r--r--  1 jerry  staff  6 Jan 21 17:24 there.txt

[gsutil将其复制到GCS:

$ gsutil cp -r your_directory gs://your-bucket/
Copying file://your_directory/hi.txt [Content-Type=text/plain]...
Copying file://your_directory/subdir/there.txt [Content-Type=text/plain]...
/ [2 files][    9.0 B/    9.0 B]
Operation completed over 2 objects/9.0 B.

$ gsutil ls -lr gs://your-bucket/your_directory
gs://your-bucket/your_directory/:
         3  2020-01-22T01:25:38Z  gs://your-bucket/your_directory/hi.txt

gs://your-bucket/your_directory/subdir/:
         6  2020-01-22T01:25:38Z  gs://your-bucket/your_directory/subdir/there.txt
TOTAL: 2 objects, 9 bytes (9 B)

[注意,gsutil仅创建了2个对象(斑点)-文本文件。它没有创建目录占位符Blob your_directory/your_directory/subdir/

gcsfuse your-bucket your-bucket装载中:

$ find your_directory
find: your_directory: No such file or directory

gcsfuse --implicit-dirs your-bucket your-bucket装载中:

$ find your_directory
your_directory
your_directory/hi.txt
your_directory/subdir
your_directory/subdir/there.txt

慢慢地。

返回到gcsfuse your-bucket your-bucket装载,我们可以通过创建目录占位符来显示文本文件:

$ mkdir your_directory
$ ls your_directory
hi.txt

$ mkdir your_directory/subdir
$ ls your_directory
hi.txt  subdir/

$ ls your_directory/subdir/
there.txt
google-cloud-storage cp gsutil
1个回答
0
投票

如果我理解正确,并且您想在创建看似空文件夹的文件时上载文件(背景中只是空文件,其路径末尾带有“ /”,则gsutil cp -r your_directory gs://your-bucket/可以解决问题。] >

供参考,这里是how subdirectories work in GCSgsutil cp command

© www.soinside.com 2019 - 2024. All rights reserved.