24.1. Создание хранилища (metastore.add_storage) #
Перед созданием S3-хранилища необходимо создать простой секрет. Можно создать только одно S3-хранилище.
Требуемые права: только администратор Postgres Pro AXE. За подробной информацией о хранимых процедурах и правах обратитесь к Разделу 22.1.
Выполните следующую команду:
SELECT metastore.add_storage('имя_хранилища', 'URI_корневого_каталога', 'URI_временного_каталога');Где:
имя_хранилища: уникальное имя хранилища.URI_корневого_каталога: URI корневого каталога хранилища.URI_временного_каталога: URI каталога хранилища для временных файлов.
У локальных хранилищ URI простой, например file:///home/j.doe/workspace/axe/.
S3-хранилища отличаются URI с более сложной структурой и логикой разбора, например s3://premdb/team01.csv?versionId=w_B5qT8s5MkiT09.IRHay0lW.PycsHTS. Эти URI генерируются с помощью сторонних библиотек.
Postgres Pro AXE выполняет следующие действия:
Проверяет параметры ввода и права пользователя.
Проверяет, что для хранилища достаточно дискового пространства. По умолчанию требуется 10 ГБ.
Проверяет, что указанные каталоги существуют.
Создаёт новую запись в таблице метаданных
pga_storage.
Пример 24.1. Выполнение хранимой процедуры metastore.add_storage (локальное хранилище)
SELECT metastore.add_storage('local_storage_example', 'file:///tmp/local_storage_example/', 'file:///tmp/local_storage_example/tmp_dir/');Пример 24.2. Выполнение хранимой процедуры metastore.add_storage (S3-хранилище)
SELECT metastore.add_storage('s3_storage_example', 's3://demo/s3_storage_example/','s3://demo/s3_storage_example/tmp/');За сценарием подключения к S3-хранилищу обратитесь к Разделу 24.3.