Metadata — это встроенные атрибуты объекта (тип, размер, технические и бизнес-поля), которые влияют на то, как платформа хранит, кеширует и отдаёт этот объект. Tags — это дополнительные пары ключ–значение для логической группировки, поиска, отчётности, биллинга и применения политик. Условно: metadata отвечает на вопрос «что это за объект и как с ним работать», а tags — «как мы его группируем и для чего он используется».
И metadata, и tags связываются с объектом в виде пар ключ–значение, но используются по-разному. Metadata описывает сам объект и влияет на его техническую обработку системой, а tags больше нужны для логической организации ресурсов на уровне людей и управляющих сервисов.
В этом примере HTTP-заголовки вроде Content-Type, Content-Length, Content-Encoding и пользовательские X-Custom-Meta-* — это metadata. Они говорят системе, как валидировать, хранить, кешировать и отдавать файл, плюс могут содержать формальные бизнес-атрибуты (например, владелец или подразделение).
Metadata описывает характеристики объекта и правила обращения с ним: тип содержимого, размер, время создания, контрольные суммы, схему сериализации, обязательные бизнес-поля. Tags выполняют роль ярлыков для группировки по проектам, окружениям, командам, уровням критичности или типам данных.Metadata в первую очередь читает и использует сама платформа хранения и сервисы доставки — по ней принимаются технические решения (кешировать, сжимать, шифровать, как обрабатывать при загрузке/выдаче). Tags чаще используются людьми, системами учёта и политиками: фильтрация в интерфейсах, построение отчётов, выборка ресурсов по проекту, применение политик доступа или жизненного цикла «по тегам».metadata часто воспринимается как изменение описания ресурса и может требовать отдельной операции обновления, журналирования или пересчёта служебных полей. Tags обычно можно добавлять, менять и удалять более свободно, не затрагивая само содержимое объекта.metadata часто есть фиксированный набор системных полей плюс ограниченный и более формальный набор пользовательских. Эти ключи стабильны и стандартизированы. Tags намного гибче: команда может придумывать свои ключи и значения под текущие задачи (project=alpha, env=prod, pii=true), меняя схему без миграций.metadata платформа обычно задаёт жёсткие лимиты по набору полей и их размеру. Для tags тоже есть квоты (количество тегов на объект, длина ключей и значений), но они часто дополнительно индексируются, чтобы быстро находить и агрегировать объекты по этим ярлыкам.metadata. Если информация нужна в первую очередь для организации, поиска, учёта затрат и применения управленческих политик — это tags.На практике удобно думать так: metadata — это формальное описание ресурса, понятное инфраструктуре, а tags — это гибкая разметка, помогающая людям и сервисам управлять множеством ресурсов как логическими группами.
Отметьте свой прогресс