2016-10-05 2 views
0

Я сохранил пользовательские метаданные в своих объектах S3 (я хранил описание файла в мета-х-amz-метаданных-описании).Самый простой способ получить метаданные объектов S3 (NodeJS API)

Я хотел бы получить список файлов со свойствами объектов S3, включая метаданные.

Я думал, что s3.listObjectsV2 может мне помочь, но мне кажется, что этот метод не может получить мета-данные (см официальный документ here)

Я видел, что я могу получить эти medata с GetObjects, но это увеличит намного число вызова и латентность запроса.

У вас есть идея массового получения метаданных списка объектов?

Thanks, Romain.

ответ

0

вам нужно aws s3api head-object, который делает именно то, что вы хотите

Операция ГОЛОВА извлекает метаданные из объекта без возврата самого объекта. Эта операция полезна, если вас интересуют только метаданные объекта. Чтобы использовать HEAD, вы должны иметь READ-доступ к объекту.

aws s3api head-object --bucket <mybucket> --key <value> 

Она также доступна в nodeJS API см http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#headObject-property

метод вызывается один раз за ключ, если вам нужно вызвать для нескольких элементов, которые необходимо cupple, что с другим методом, позволяет сказать, в качестве примера вам нужно все метаданные для всех CSV файлов из ведра вы бы запустить

aws s3 ls --recursive <mybucket> \ 
| grep ".csv$" | cut -c 32- \ 
| xargs -I {} aws s3api head-object --bucket <mybucket> --key {} 

Первая часть списка команд все файлы с ведром, вы Grep только для определенного расширения, ул вырывайте символы, чтобы получить только ключ, и передайте этот ключ в качестве аргумента команды головного объекта.

+0

Привет! Благодарю. Можно ли использовать этот метод в объемном режиме? Если ответ будет отрицательным, мне придется выполнять много вызовов. –

+0

привет, нет, вы не можете вызывать навалом, он работает для заданного ключа (что имеет смысл), если вам нужно позвонить навалом, вам сначала нужно выбрать все элементы, которые вы хотите выполнить, - пример –

Смежные вопросы