是否有关于可以在azure blob存储上传的文件类型的规则?
我尝试上传Maxmind二进制数据库,但是当我尝试使用AZcopy上传时似乎没有发生任何事情,它甚至没有回到提示但是在第一行之后停留.. 0文件完成..
尝试使用Azure存储资源管理器上传时,在一段时间内声明命令被取消后会抛出错误
真心感谢任何帮助
由于
更新:当我尝试使用PowerShell时,它发出错误'客户端无法在指定的超时内完成操作'。
所以我添加了1小时的超时时间,这又引发了一个错误说明.. Set-AzureStorageBlobContent:远程服务器返回错误:(400)错误请求。 HTTP状态代码:400 - HTTP 错误消息:指定的blob或块内容无效。
我上传的代码:
Set-AzureStorageBlobContent -Container "eventenrichhelpers" -File ".\GeoLite2-City.mmdb" -Blob "GeoLite2-City.mmdb" -ClientTimeoutPerRequest 3600
答案 0 :(得分:0)
没有文件类型限制。但是存在文件大小限制。对于块Blob,文件大小应为< = 200GB。使用AzCopy或Set-AzureStorageBlobContent时,如果未指定blob类型,则默认情况下会将文件上载为Block Blob。如果文件大于200GB,则上传将失败。
如果您的文件大于200GB,则可以将其作为Page Blob上传。页面Blob文件大小可以是<= 1TB。要将blob类型指定为页面blob,请使用AzCopy或Set-AzureStorageBlobContent中的BlobType参数,并将值指定为Page。
答案 1 :(得分:0)
使用powershell进行另一次超时的第二次上传失败是出于另一个原因。
如果您有一个无效的块,请将其替换为有效,最后将其删除。
# create temp dummy file
$tempFileName = [System.IO.Path]::GetTempFileName()
"delete me" >> $tempFileName
$tempFile = Get-ChildItem -Path $tempFileName
# overwrite blob with dummy file
$tempFile | Set-AzureStorageBlobContent `
-Container $containerName `
-Blob $blobName `
-Context $storageContext `
-Force
# remove dummy blob
Remove-AzureStorageBlob `
-Container $containerName `
-Blob $blobName `
-Context $storageContext `
-Force
允许您重试上传。但我不知道为什么上传速度太快以至于超时。我有一个50MB的文件的行为。