我正在使用“google-api-services-storage-v1beta2-rev5-java-1.15.0-rc.zip”谷歌云存储库以及来自
我按照示例程序的设置说明设置了“client_secrets.json”和“sample_settings.json”文件。示例程序编译正常,但仅部分正常运行
我修改了“StorageSample.java”程序的“uploadObject”方法,以便它上载我创建的测试文件(而不是上载随机生成的文件)。程序按以下方法正常运行:
tryCreat
我通过Java使用GCS JSON API。我的插入对象、删除对象和复制对象的代码都非常有用。但由于某些原因,我无法使storage.objects.compose正常工作。不管怎样,我都会得到400或500的错误。即使当我在谷歌网站上使用“立即试用”功能进行撰写时,我也会遇到同样的错误。因此,我肯定缺少一些基本的东西
这是我的密码:
StorageObject metadata = new StorageObject()
.setMetadata( ImmutableMap.of("O
因此,我运行以下命令:
gsutil -m cp -R file.png gs://bucket/file.png
我得到以下错误消息:
Copying file://file.png [Content-Type=application/pdf]...
Uploading file.png: 42.59 KiB/42.59 KiB
AccessDeniedException: 401 Login Required
CommandException: 1 files/objects
我们如何使gzip能够减少静态web资源的移动用户和桌面用户的延迟?您可以上传带有gzip内容编码的Google云存储对象,这些对象将被压缩到发送Accept Encoding:gzip的客户端,大多数浏览器都会这样做
有关更多信息,请参阅。我的问题是:如何使用gzip内容编码创建文件?我认为这通常是服务器(如Apache)进行编码的工作。在这里,我们要求上传一个已经编码的文件。我建议您提出一个新问题,详细介绍您的客户机、API和用例。这是一个关于减少服务内容所需带宽的简单好问题。答案并不特定于
我可以使用gsutil下载我的文件,现在我需要自动化这个过程我的初始选择是使用C#API,这可能吗?关于如何安排每天下载.gz文件的过程(可以使用gsutil),有什么想法或最佳实践吗
我的目标是将数据导入SQL server数据库
谢谢
Leandro目前没有用于谷歌云存储的C#API
既然您说过使用gsutil是一个选项,那么您可以设置一个每天运行的cron作业吗?更具体地说,编写一个简短的shell脚本,其中包含运行gsutil的命令以及下载对象所需的选项,然后使用@daily限定符将该脚
为了生成我们正在使用的过期上传URL。
现在,我们需要限制最大文件大小(即32Mb)和接受的内容类型-只有图像文件才有效。
GCS中是否有任何内置机制允许我们强制执行此上载策略?您可以限制内容类型,它是创建上载策略时字符串的一个选项部分。当对对象发出HTTP请求时,Google云存储将返回
在准备签名的POST请求时,可以指定一个,包括预期的内容类型和内容长度范围等要求的最小和最大大小
对于策略文档支持的值不够的情况,可以使用在上载上实现自定义验证,包括按大小限制。如果上传不符合您的规则,您可以
我遇到gsutil cp问题。我遇到“OSError:[Errno 16]设备或资源繁忙”错误。我正在使用python 2.7.2。gsutil输出如下所示。我试图更改我的临时目录,但没有效果。
知道是什么导致了这个错误吗?我已经尝试过很多次了,有时文件会被上传,尽管有错误消息,但有时不会。
谢谢
Fri May 16 14:05:50 ~ > gsutil cp hello.txt gs://cg2
Copying file://hello.txt [Content-Type=text/
我正在尝试使用gsutil创建签名URL。
下面是命令
$gsutil signurl-d 10m路径/to/privatekey.p12 gs://bucket/foo
在网站中提到
我还发出了一个与我的bucket名称和对象相同的like命令,如下所示
gsutil signurl-d 10m C:\Users\Desktop\javascript\service\4e263da.p12 gs://code-sample/File1
但我犯了以下错误
“signurl命令需要pyopenss
我正试图使用谷歌云存储桶从GCE上的web服务器提供静态文件。我知道我必须手动复制文件,但我正在寻找一种方法,可以像其他CDN服务一样按需动态复制文件。这可能吗?如果你问谷歌云存储是否会自动、透明地缓存来自web服务器的频繁访问的内容,那么答案是否定的,你必须自己明确地将文件复制到存储桶中
但是,如果您询问是否可以将文件动态(即,以编程方式)复制到您的GCS存储桶中,而不是手动(例如,通过或web UI),则是的,这是可能的
我想您会使用类似以下过程的方法:
# pseudocode, not
我刚刚听说谷歌云存储有一个限制,所以你每秒只能通过一个请求访问一次。我在网上搜索了一下,但没有找到任何合适的答案
是这样,还是我可以每秒访问一次以上?我只是想知道,对于我目前编写的一个Web应用程序,它可以在存储器上安装和下载图像。如果存在限制,则如果每秒从不同用户发送更多请求,将导致延迟。您可能指的是每秒最多可以更新或覆盖同一对象一次的限制。您可以跨不同对象进行更新的次数没有限制,也可以对任何对象执行读取的次数没有限制
我认为您对数据存储中祖先组的1秒写入限制感到困惑。您是从哪里“听到”这一点
我已经失去了编辑bucket权限的能力(我想让bucket公开可读),但我似乎无法资助过去用来点击编辑权限的旧图标(3个垂直点)。在最后一次云控制台设计更新之后,它们似乎消失了
下面是我的一个测试项目的快照:
这是从
那三个小点去哪了
我以项目所有者的身份登录,似乎完全控制了项目
很抱歉,这个问题不是很以代码为中心,但它让我困惑了一段时间。如果您缺少bucket菜单选项(3个垂直点),可能是因为:
您尚未为您的项目启用计费,这是
您不必编辑bucket的权限或元数据
如果你点击bucket名
我正在使用googlecloudplatformphp客户端库()将文件上传到项目中的一个bucket中。我需要能够从另一个域使用AJAX请求获取文件,因此需要添加头
Access-Control-Allow-Origin: *
我正竭尽全力想弄明白这一点——我的谷歌搜索毫无结果。代码示例供参考:
$client = new Google_Client();
$client->setApplicationName("Test");
$client->useApplication
我正在尝试将本地目录与Google云存储桶同步,但排除某些文件类型。我可以使用以下方法很好地完成一个排除:
gsutil rsync -d -n -x ".\*\\.txt$" "localdir" gs://bucketnamehere
此命令成功运行,并且确实成功排除了txt文件
但是,如果我运行rsync常见问题解答中给出的确切示例:()
它返回错误:
The filename, directory name, or volume label syntax is incorrect.
我正在使用CloverETL Designer进行ETL操作,我想将一些csv文件从GCS加载到我的Clover图中。我使用FlatFileReader并尝试使用远程文件URL获取文件,但它不起作用。有人能在这里详细说明整个过程吗
GCS中文件的路径为
https://storage.cloud.google.com/PATH/Write_to_a_file.csv
我需要将这个csv文件放入CloverETL Designer中的FlatFileReader中您应该使用获取该文件;Clove
我在Google云存储上有超过10万个包含JSON对象的文件,我想创建一个镜像来维护文件系统结构,但从文件内容中删除一些字段。
我尝试在谷歌云数据流上使用ApacheBeam,但它会分割所有文件,我无法再维护该结构。我正在使用
我的结构类似于reports/YYYY/MM/DD/
但是数据流输出到output\u dir/records-*-of-*
如何使数据流不分割文件并以相同的目录和文件结构输出它们?
或者,是否有更好的系统对大量文件进行此类编辑?您不能直接使用TextIO,但Beam 2
在这个项目中,我看到有人错误地创建了多个区域bucket,并将其用于数据管道。应该是区域性的。建议如何将其更改为区域存储桶?您可以尝试以下命令
gsutil defstorageclass set regional gs://[BUCKET_NAME]
参考:
我编写了一个云运行应用程序来接受用户文件上传,对其进行一些处理,并用处理后的输出进行响应。它失败了,说“HTTP响应太大:50930613。限制为:33554432。”
我想把文件上传到地面军事系统,让我的应用程序重定向到地面军事系统的位置。但在我设置所有这些之前,我是否会遇到同样的问题,出口限制为32MB?我已经看到了一个AppEngine的例子。您的想法是正确的,因为Cloud Run的响应也是正确的
您需要:
1-处理数据并使用客户端LIB(取决于您使用的语言)
2.-将用户指向对象的下载
我有一个谷歌(gmail)账户,已经被授权对谷歌存储桶进行读取访问。我正在尝试使用gsutil以编程方式访问这些存储桶。我创建了一个服务帐户,该帐户将在json文件中包含项目id、密钥id、私钥、客户端电子邮件等。现在,我是否可以授权此服务帐户并通过创建此服务帐户的主谷歌帐户访问GS Bucket,或者我是否可以再次联系管理员以访问与服务帐户相关的电子邮件id?云IAM成员可以:
1.谷歌账户(针对最终用户)
2.服务帐户(用于应用程序和虚拟机)
3.谷歌集团,或可以访问资源的G套件或云标识域
在Google Data Studio中是否有一种方法可以动态地将数据源添加到可视化中
我可以通过建立谷歌云存储数据连接来创建折线图可视化
但是我可以使数据连接动态吗?如果您使用的是Google data Studio的云存储连接器,数据应该始终是最新的,尽管由于缓存的原因,您可能看不到它
如中所述,您还可以按照说明检查是否可以更改连接器的“数据新鲜度”
希望你觉得这个有用 我想使用DataStudio从云存储中生成包含不同csv文件的图形。我不完全确定我是否理解您的评论,但如果您希望一个图形包
我能够打印桶名、blob信息和文件名。但是当我试图下载图像时,它给了我一个错误
client = storage.Client()
blob = Blob.from_string("gs://current-project/images/myimage.jpeg")
print(blob.bucket.name)
fileName = blob.name.split('/')[-1]
print(fileName)
print(blob)
blob.download_to_f
我正在尝试从我的GSuite(Google Workplace)帐户下载导出的数据。我运行了数据导出工具,它就在一个桶里。我想下载所有文件,但上面说我可以下载多个文件的唯一方法是使用gsutil实用程序
我使用pip instal-U gsutil安装了它
我尝试运行以下命令:
gsutil cp -r \
gs://takeout-export-3ba9a6a2-c080-430a-bece-6f830889cc83/20201202T070520Z/ \
gs://takeout-e
我使用RAR实用程序(100GB未压缩,20GB压缩)得到了一个大的多部分压缩CSV文件,所以我有100个RAR文件部分,它们被上传到Google云存储。我需要将其解压缩到谷歌云存储。如果我能在GAE上使用Python就最好了。有什么想法吗?我不想下载、提取和上传。我想在云中完成这一切。在云中无法直接解压缩/提取RAR文件。您知道gsutil-m(多线程/多处理)选项吗?它通过并行运行来加速传输。我建议这样做:
下载压缩存档文件
就地拆包
使用gsutil-m cp file pattern
刚刚开始使用GCS及其JavaAPI。修改了Google Plus,我正在尝试检索一个bucket
我得到一个错误:
400 Bad Request
{
"code" : 400,
"errors" : [ {
"domain" : "global",
"message" : "Invalid Value",
"reason" : "invalid"
} ],
"message" : "Invalid Value"
}
这是我的相关代码:
主要内容:
获
我想使用谷歌云文件,但我想知道如何向用户显示进度条
如何监控上传进度?
所以我们可以向用户显示某种进度条
蒂亚,
tom当您使用云控制台上传文件时,您指的是什么?或者您想上传一个文件并与应用程序的用户共享状态?首先,我是一个完全的新手,我没有看过php api。我想知道是否有向最终用户显示上传进度的方法。上传到php服务器由php应用程序处理,有一些解决方案可以显示进度(我认为是php扩展、ajax、html5 api),但当文件在服务器上时,后端必须将文件上传到google云存储,后者是上传,
我正在尝试将文件夹从Google compute engine实例同步到云存储,但它只是在没有任何指针的情况下退出。它表示开始同步,然后返回提示
gsutil -m rsync -r public/ gs://mybucket/public
Building synchronization state...
Starting synchronization
我的gsutil版本
gsutil version -l
gsutil version: 4.6
checksum: 397d8391fd
我无法通过签名URL将文件放入google云服务。当我尝试从JS客户端执行PUT时,我得到:
“SignatureDesNotMatch…我们计算的请求签名与您提供的签名不匹配。请检查您的Google密钥和签名方法。”
当我尝试使用CURL发布文件时,我得到了相同的错误
我使用的curl命令是:
#!/bin/bash
URL="https://storage.googleapis.com/..."
echo $URL
curl $URL -H "Content-Type: image/jpg
我在戴尔笔记本电脑上使用Ubuntu 17.04
我正在尝试安装cloudstorage模块。
当使用sudo使用Python2安装模块时,它可以工作,但导入失败:
python storage2.py
回溯(最近一次呼叫最后一次):
文件“storage2.py”,第6行,在
将cloudstorage导入为gcs
文件“/home/maxim/.local/lib/python2.7/site packages/cloudstorage/init.py”,第56行
def get_驱动程序(
因此,在谷歌云存储中,如果你上传多个同名文件,最后一个文件将覆盖之前上传的文件
如果我想上传多个同名文件,我应该在文件名后面加上一些独特的东西,例如时间戳、随机UUID
但这样做会在下载时丢失原始文件名,因为我想直接从google提供文件。您可以打开该选项,以保留对象的旧版本
或者,您可以在上载对象时设置标题,这样可以在下载时保留所需的任何文件名。您可以打开标题,以保留对象的旧版本
或者,您可以在上载对象时设置标题,这将在下载时保留您想要的任何文件名。如果我们将唯一标识符用作文件夹,而不是将其附
我希望能够支持Brotli和Gzip编码,用于托管Google云存储的静态资产。要做到这一点,我想在上传文件之前对其进行编码,如、.gz和.br。问题是,我找不到方法将带有Accept Encoding的请求重定向到正确的文件
我已考虑使用:
云函数以某种方式重定向传入请求(类似于AWS Cloudfront Lambda),但它似乎不受支持
负载平衡器可以将请求重定向到不同的存储桶,但据我所知,它只能根据主机名/路径重定向到不同的存储桶
云CDN,但它似乎没有任何有助于实现这一点的功能
请
tsv文件包含0.4M文件名(.mp3)的列表。解析后,它读取每个mp3文件并进行一些处理。当我在tsv中使用5个文件的列表进行测试时,它工作正常。但在测试0.4M文件时,它在
正在读取第35000个文件,错误为500。它似乎重试了很多次,最后失败了
仅供参考,mp3文件位于“gs://bucket\u name/same\u subdir/id\u string.mp3”中,其中id的顺序为10000110003。请使用而不是存储客户端。
请重试您的呼叫,对于可重试的错误,请使用exponen
我需要备份一个bucket,其中每个文件都使用不同的密钥加密到Google Storage上的不同bucket
我想创建数据的每日快照,以便在数据被删除的情况下可以轻松恢复数据
我的研究:
使用gsutil cp-r——因为每个文件都有不同的密钥,所以无法工作
使用Google Transfer | cloud——出于同样的原因,在这样的bucket上不起作用
列出bucket中的所有文件,从数据库中获取所有密钥并复制每个文件-这可能会非常昂贵,因为我有很多文件,我想每天都这样做
对象版本控制-
如何设置GCS blob获取的超时
python客户机sdk中有超时选项,但我在Google上搜索了JAVA中的类似选项,没有找到。
我正在使用kotlin,下面是我如何获得内容的
val storage=StorageOptions.getDefaultInstance().service
val blob=storage.get(buckName).get(blobName)
返回blob.getContent()
您需要更改一些选项,而不是使用默认的存储选项:
val transport\
我正在使用python GCS客户端
我想列出在给定时间内属于一个bucket的所有blob,但是系统一直在向这个bucket写入新数据,而且速度比我读取的要快得多
有没有可能我的
all_blobs = list(client.list_blobs(bucket))
会永远跑吗?
它不断带来新的东西吗?
它是否在快照上运行并最终完成
非常感谢您可以使用页面令牌在API页面上进行迭代
blobs = bucket.list_blobs(max_results=1000)
for blo
尝试使用NodeJS客户端库(getFiles)时-
)
在这两种情况下,JSON API(objects/list-)响应似乎都不会返回某些文件夹。
当使用gsutil ls时,它会按预期列出所有文件夹,并使用谷歌云控制台浏览GCS bucket,同时也会按预期列出所有文件
存储API中是否有可能导致这种情况发生的更改
更新:
列出使用NodeJS客户端SDK进行存储的GCS文件夹路径的代码:
import * as functions from 'firebase-functions';
我希望在将新文件添加到存储桶时触发数据流作业,以便处理新数据并将其添加到BigQuery表中。我看到云是通过bucket中的更改来运行的,但是我还没有找到一种方法来使用
有没有一种方法可以使用云函数实现这一点,或者有没有另一种方法可以在将文件添加到存储桶时向BigQuery插入新数据以获得所需的结果?Apache Beam从2.2开始就支持这种方法。看 这篇文章可能有助于从应用程序引擎或云功能触发数据流管道
在这个答案中有一个启动数据流的例子;这有用吗?谢谢,这真的很有用。我正在使用Datafl
唯一提到的是为整个bucket设置对象生命周期。但是,我想为一个bucket中的多个路径设置生命周期,而不是为整个bucket设置生命周期
这在谷歌云存储上可能吗?如果是这样,我该怎么做呢?不可能为少于一个完整存储桶配置生命周期管理
是否有方法使用数据流读取存储在GCS存储桶中的Excel文件
我还想知道我们是否可以使用数据流访问GCS中对象的元数据。如果是,那么如何读取?您应该能够使用GCS API读取GCS文件的元数据。但是,您需要文件名。您可以通过在保存文件名的PCollection列表上执行ParDo或其他转换来完成此操作
我们没有excel文件的默认读卡器。您可以使用文本输入从CSV文件解析:()
我对excel以及文件格式的存储方式不是很了解。如果要一次处理一个文件,可以使用文件的PCollection。然后使用
我正在寻找关于如何组织大量对象的建议
假设传入率约为每天60000000个文件,我想保留180天
使用每小时分区,顶层将有4320(24*180)个目录。每个目录平均将包含约2500000个文件
如果我只需要按文件的完整路径单独获取文件,而不需要列出目录的内容,那么将所有2500000个文件保留在同一级别是否有任何问题
或者我应该散列文件名并将其存储在多个子目录中?(就像存储在传统文件系统上时通常是这样做的)存储在bucket中的对象数量没有限制,将对象拆分为更多的“子目录”不会产生任何可伸缩性
我们的子域在GCS Bucket上有多个网站:
site1.oursite.com
site2.oursite.com
site3.oursite.com
如何使www与这些子域一起工作,以便我们:
www.site1.oursite.com
www.site2.oursite.com
www.site3.oursite.com
指向右边的bucket。要使www与您的子域协同工作,您必须创建具有名称的bucket:
www.site1.oursite.com
www.site2.ou
我想用C#在不同的项目中上传一组文件到Google云存储,但是,我的一些文件上传成功,一些文件抛出异常,说:“Google云存储InsertMediaUpload服务BaseUri ArgumentNullException”。有人知道是什么导致了这个错误,以及如何修复它吗?
以下是我正在使用的代码:
static void main(string[] args)
{
string[] paths = Directory.GetFiles(@"C:\Users\Downloads\csv");
在我们的一台机器上使用gsutil工具时,我们在端口443上遇到了与www.googleapis.com的连接超时
以下是运行时的输出:
gsutil-D cp gs://somefile somefile
Retrying download from byte 0 after exception: timed out. Trace: Traceback (most recent call last):
File "/home/runner/google-cloud-sdk/platform
我想将120个文件从HTTPS网站上传到我的谷歌云存储上,每个文件大约1.2GB,总共约150GB
我真的,真的不想在本地下载,然后单独上传
这有什么办法吗?我当然可以给谷歌云存储提供一个URL,从中获取信息?我不控制HTTPS服务器
从S3上传到Google云存储似乎是可能的,但S3似乎也有同样的问题 如果您的网站允许公众访问,您可以使用地面军事系统传输服务进行访问:为什么要进行投票?当然答案就在那里,但不是用我能通过谷歌搜索到的语言。。。正是如此设计的用例!谢谢我确实看到了,但需要包含对象的
我已经使用gcsfuse(FUSE)好几个星期了,一切都很顺利,直到我的实例磁盘(10GB)不知从哪里被填满
我试图找出原因并删除一些临时文件,发现卸载存储桶解决了问题
它应该上传到云端,对吗?那么,为什么它会占用空间,就好像它被计算为本地实例空间一样
谢谢你们的帮助 以下是您看到这种行为的原因
从gcsfuse文档粘贴
本地存储:新的或修改的对象将存储在
将其全部保存在本地临时文件中,直到关闭或删除
同步。处理大型文件时,请确保有足够的本地文件
文件临时副本的存储容量,特别是在
您正在使用G
我已经使用windows server 2012在计算引擎中创建了一个实例。我看不到任何选项,采取自动备份,例如磁盘数据库每天。有快照选项,但我们需要手动操作。请建议任何自动备份的方法,只需单击一下即可恢复。如果有任何其他可能使用云SQL存储或任何其他存储,请推荐
谢谢有一个用于拍摄快照的API,请参见此处的API部分:
您可以编写一个简单的应用程序,从Cron或其他东西触发,定期拍摄快照。您没有为计算引擎磁盘提供自动备份。但是,您可以通过创建快照来进行手动磁盘备份
最好的替代方法是创建一个b
我试图在一个存储桶上使用谷歌云存储的生命周期管理功能,但我想在某些文件上绕过它(基本上是在1天后自动删除所有文件,除了我想保留的特定文件)。如果我调用将更新对象的年龄并阻止删除发生的命令?设置元数据将更改上次更新的时间,而不是创建时间。TTL被设置为关闭创建时间,因此不会阻止TTL清理
但是,您可以执行复制操作,只需将目标设置为与源相同。这将更新创建时间,这将是一个快速的操作,因为它可以在云中复制
也就是说,对这些文件使用不同的存储桶可能更安全。如果你一直接触这些文件的工作失败,它们可能会被删除
基本上,我尝试使用S3浏览器中的开发者密钥测试GET调用,通过HTTPS url访问bucket ACL。以下是网址:
但我得到了以下错误:
SignatureDoesNotMatch: The request signature we calculated does not match the signature you provided.
Check your Google secret key and signing method. TaskID: 108
我只是遵循从S3到GCS的
我正在使用Google云存储和带有缓存的Google云负载平衡器。我们将其用作我们平台的CDN。
问题是我们有很多糟糕的流量(机器人对未知文件强制请求),导致大量缓存丢失,从而增加了负载平衡器的成本。
我们想知道是否有可能在负载平衡器的禁止列表中添加IP
非常感谢 您可以对负载平衡器应用安全策略,只要它符合谷歌云平台
它不能是谷歌云CDN
它不能是Google云存储的负载平衡器
如果您的负载平衡器符合此规则,您可以这样做,并将Google云装甲安全策略应用于后端服务
下面是一个谷歌云,用于将
我正在用不同的谷歌云路径在同一份报告上创建不同数据源的图表。每个图表的数据缓存和报告的累计总数的最大限制是多少
例如,我正在为日期应用过滤器,因为图表的5年可能约为150MB,它是否能够显示/加载?同样地,对于报告的每个图表,我应用相同的日期过滤器5年,每个图表都有不同的数据源。因此,对于一份报告,Data Studio的最大数据限制是多少?根据Google Data Studio的文档,没有提到缓存大小限制。这里只提到可以使用缓存进行管理
此外,根据本文档中的注释判断,每个数据源都有自己的缓存
我刚刚创建了一个静态网站,托管在谷歌存储上。我的域名也在谷歌域名注册,我有一个商业G套件帐户
我的静态网站有一个“联系我们”表单,我想知道是否可以使用gmail或gsuite(或任何gcp服务)将表单内容作为电子邮件发送到我的gmail地址
我知道有邮枪之类的服务,但如果可能的话,我宁愿使用谷歌的工具
有人知道如何做到这一点吗?在谷歌产品范围内,有一个非常好的选择,您可以使用静态网站通过联系人表单发送电子邮件
这个选项实际上很简单,配置起来也很简单,我想说,就是使用无服务产品云功能。为了提供一些
我有一个启用了审核日志的google存储桶。每一天\两天我都会收到关于权限被拒绝的日志。日志指定请求者请求的访问类型。但是,没有给我足够的信息来回答这个问题——谁在请求
这是日志消息:
{
"insertId": "rr6wsd...",
"logName": "projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access",
上一页 1 2 ...
5 6 7 8 9 10 11 ...
下一页 最后一页 共 29 页