Краткая информация
Содержащит методы ввода-вывода, специфичные для облака.
Обсуждение
Этот класс не может быть запущен напрямую. Экземпляр этого класса возвращается свойством cloud объекта AIO.
Обзор метода
Метод | Описание |
clearcache (path) | Очищает списки папок в памяти, свойства файлов и кэш региона BLOB. Вызовите этот метод, когда внешний процесс обновляет папки или файлы в облачном хранилище, к которым ранее осуществлялся доступ. |
getbucketname () | Получает имя подключенного бакета или контейнера. |
getendpoint (path) | Получает облачную конечную точку, указанную в соединении. |
getfile (src, dst, {options}) | Скачивает файл из облака. |
getmetadata (path, {domain}) | Получает метаданные файла или папки. |
getobjectstorepath () | Получает корневой путь подключения. |
getproperties (path) | Получает свойства заголовка. |
getprovidername () | Получает имя поставщика облачных услуг. |
getprovideroptions () | Получает параметры поставщика, указанные в соединении. |
getregion () | Получает облачный регион, указанный в соединении. |
getsignedurl (path, expiry) |
Создает временный URL-адрес, заданный HTTP. |
putfile (src, dst, {options}) | Загружает файл в облако. |
setmetadata (path, {domain}, {metadata}, {options}) | Задает метаданные файла или папки. |
validate ({certificate}, {stat}, {list}, {read}, {modify}, {path}) | Тестирует облачное соединение на предмет различных файловых операций. Доступные разрешения могут быть детализированными в зависимости от конфигурации ACL сервера. |
Методы
clearcache (path)
Параметр | Описание | Тип данных |
path | The relative path from the current working directory or an absolute path (absolute vsi path for cloud). | String |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.clearcache(r"aio")
getbucketname ()
Тип данных | Описание |
String | Имя подключенного бакета или контейнера. |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getbucketname()
getendpoint (path)
Параметр | Описание | Тип данных |
path | The relative path from the current working directory or an absolute path (absolute vsi path for cloud). | String |
Тип данных | Описание |
String | Облачная конечная точка, если доступна. |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getendpoint()
getfile (src, dst, {options})
Параметр | Описание | Тип данных |
src | The relative path from the current working directory or an absolute vsi cloud path. | String |
dst | The local, or target, path of the file. | String |
options | Specifies the options that will be used.
Syntax—RECURSIVE=[YES|NO], SYNC_STRATEGY=[TIMESTAMP|ETAG|OVERWRITE], NUM_THREADS=(integer) CHUNK_SIZE=(integer) [x-amz-*|x-goog-*|x-ms-*=(value)] Example—{'RECURSIVE':'YES', 'SYNC_STRATEGY':'OVERWRITE', 'NUM_THREADS':'10', 'CHUNK_SIZE':'8'} (Значение по умолчанию — None) | Dictionary |
Тип данных | Описание |
Boolean | Истина, если файл загружен успешно; в противном случае — Ложь. |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getfile(r'utf8_test.json', r"c:\data\datafile.json")
getmetadata (path, {domain})
Параметр | Описание | Тип данных |
path | The relative path from the current working directory or an absolute path (absolute vsi path for cloud). | String |
domain | The metadata domain, for example, (https://gdal.org/api/cpl.html#_CPPv418VSIGetFileMetadataPKcPKc12CSLConstList). (Значение по умолчанию — None) | String |
Тип данных | Описание |
Dictionary | Словарь информации о метаданных. |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getmetadata(r'aio')
getobjectstorepath ()
Тип данных | Описание |
String | Путь vsi к хранилищу объектов. |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getobjectstorepath()
getproperties (path)
Параметр | Описание | Тип данных |
path | The relative path from the current working directory or an absolute path (absolute vsi path for cloud). | String |
Тип данных | Описание |
Dictionary | Словарь свойств заголовка. |
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getproperties(r'aio')
getprovidername ()
Тип данных | Описание |
String | Имя поставщика облачных услуг. |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getprovidername()
getprovideroptions ()
Тип данных | Описание |
List | Опции поставщика, если доступны. |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getprovideroptions()
getregion ()
Тип данных | Описание |
String | Регион облака, если доступно. |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getregion()
getsignedurl (path, expiry)
Параметр | Описание | Тип данных |
path | The relative path from the current working directory or an absolute path (absolute vsi path for cloud). | String |
expiry | The expiry time in seconds. | Integer |
Тип данных | Описание |
String | URL-адрес, подписанный HTTP. |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getsignedurl(r'data.json', 5)
putfile (src, dst, {options})
Параметр | Описание | Тип данных |
src | The local (source) path of the file. | String |
dst | The relative path from the current working directory or an absolute vsi cloud path. | String |
options | Specifies the options that will be used.
Syntax—RECURSIVE=[YES|NO], SYNC_STRATEGY=[TIMESTAMP|ETAG|OVERWRITE], NUM_THREADS=(integer) CHUNK_SIZE=(integer) [x-amz-*|x-goog-*|x-ms-*=(value)] Example—{'RECURSIVE':'YES', 'SYNC_STRATEGY':'OVERWRITE', 'NUM_THREADS':'10', 'CHUNK_SIZE':'8'} (Значение по умолчанию — None) | Dictionary |
Тип данных | Описание |
Boolean | Истина, если файл загружен успешно; в противном случае — Ложь. |
Этот метод применим только для облака.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.putfile(r"C:\data\data_file.json", r'data_folder\data_file_new.json')
setmetadata (path, {domain}, {metadata}, {options})
Параметр | Описание | Тип данных |
path | The relative path from the current working directory or an absolute path (absolute vsi path for cloud). | String |
domain | The metadata domain, for example, (https://gdal.org/api/cpl.html#_CPPv418VSISetFileMetadataPKc12CSLConstListPKc12CSLConstList). (Значение по умолчанию — None) | String |
metadata | The metadata that will be set. (Значение по умолчанию — None) | Dictionary |
options | The options that will be used to set the metadata. (Значение по умолчанию — None) | Dictionary |
Тип данных | Описание |
Boolean | True, если метаданные заданы успешно, во всех остальных случаях false. |
Этот метод применим только для облачных хранилищ.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.setmetadata(
r"cog.tif",
"HEADERS",
{
"x-amz-id-2": "HxM4BcALW+HnJ13owxzMpeQXXI59VKK3I9zujbqyLBCinCt6prnzKXR4Ixhb/AloFVJLGtuqKG7nSLCLaxObTw==",
"x-amz-request-id": "KYTDPC2WH2ZQK2D2",
"Date": "Tue, 13 Jun 2023 13:39:33 GMT",
"Last-Modified": "Wed, 16 Sep 2020 13:49:34 GMT",
"ETag": '"c220c099c46c60703de0c55763d04371"',
"x-amz-meta-s3b-last-modified": "20171213T210220Z",
"Content-Disposition": "attachment",
"Accept-Ranges": "bytes",
"Content-Range": "bytes 0-16383/4339079",
"Content-Type": "text/plain",
"Server": "AmazonS3",
"Content-Length": "4545",
},
)
validate ({certificate}, {stat}, {list}, {read}, {modify}, {path})
Параметр | Описание | Тип данных |
certificate | Verifies the SSL certificate and Online Certificate Status Protocol (OCSP) certificate check. | Boolean |
stat | Tests stat on the root container or connected folder. | Boolean |
list | Tests list directory access. | Boolean |
read | Tests read file permission | Boolean |
modify | Tests the write and delete permissions. If delete access is denied, a test file will remain on the cloud. | Boolean |
path | The path to the file that will be used for read test. If not provided, the first entry from the current directory listing is used. | String |
Тип данных | Описание |
List | Результаты теста и подробное сообщение об ошибке, если есть. |
Этот метод применим только для облака.
cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.validate(True, True, True, True)