Объектное хранилище не поддерживает частичное обновление и имеет более высокие задержки, чем блочные системы. Следовательно, некоторые типы данных неэффективны или невозможны для размещения в S3.
1. Часто изменяемые данные
Любое изменение требует полной перезаписи объекта. Если данные обновляются чаще нескольких раз в час, объектное хранилище становится менее эффективным.
- Примеры: файлы баз данных с интенсивной записью, очереди сообщений, состояние сессий пользователей.
2. Данные, требующие сверхнизкой задержки
Задержки объектного хранилища составляют десятки–сотни миллисекунд. Для задач, требующих отклика в единицы миллисекунд или микросекунд, S3 не подходит.
- Примеры: кэш веб-приложений, высокочастотные транзакции (платежные системы, биржевые стаканы).
3. Системные файлы операционных систем
Операционные системы требуют произвольной записи в любые сектора и поддержки файловых блокировок. Объектное хранилище не предоставляет интерфейс блочного устройства.
- Примеры: файлы ядра, библиотеки загрузчика, образы подкачки (swap), конфигурации ОС.
4. Данные, требующие сложного поиска по содержимому
S3 позволяет искать объекты только по ключам (префиксам) и тегам. Полнотекстовый или семантический поиск внутри объектов невозможен без выгрузки во внешние системы.
- Примеры: большие коллекции текстовых документов, требующие поиска по фразам; архивы изображений с поиском по визуальному содержанию.
5. Данные, требующие строгой иерархии и блокировок
Плоское пространство имён объектного хранилища не поддерживает физические каталоги. Отсутствуют блокировки для координированной записи несколькими узлами.
Примеры: общая офисная файловая папка с одновременным редактированием; система управления версиями (Git, SVN), где требуется атомарность набора файлов.