Max регистрирует на каталог в S3

Если вы находитесь в системе Unix, вы, вероятно, захотите использовать sed , например, чтобы добавить текст в середину файла:

#!/bin/sh
text="Text to add"
file=data.txt

lines=`wc -l $file | awk '{print $1}'`

middle=`expr $lines / 2`

# If the file has an odd number of lines this script adds the text
# after the middle line. Comment this block out to add before
if [ `expr $lines % 2` -eq 1 ]
then
  middle=`expr $middle + 1`
fi

sed -e "${middle}a $text" $file

Примечание: выше пример из здесь .

С NodeJS кажется, что есть некоторые пакеты npm , которые могут помочь, например sed.js или заменить .

84
задан Powerlord 26 December 2008 в 20:05
поделиться

2 ответа

S3 не уважает иерархические пространства имен. Каждый блок просто содержит много отображений от ключа до объекта (наряду со связанными метаданными, ACLs и так далее).

Даже при том, что ключ Вашего объекта мог бы содержать '/', S3 рассматривает путь как простую строку и помещает все объекты в плоское пространство имен.

, По моему опыту, операции СПИСКА действительно берут (линейно) дольше, когда число объектов увеличивается, но это - вероятно, признак увеличенного ввода-вывода, требуемого на серверах Amazon, и вниз проводе Вашему клиенту.

Однако времена поиска, кажется, не увеличиваются с числом объектов - это - по всей вероятности своего рода O (1) реализация хеш-таблицы на их конце - также - много объектов в том же блоке должны быть столь же производительными как маленькие блоки для нормального использования (т.е. не СПИСКИ).

Что касается ACL, предоставления могут быть установлены на блоке и на каждом отдельном объекте. Как нет никакой иерархии, они - Ваши только две опции. Очевидно, устанавливая, поскольку много предоставлений всего блока в широком масштабе уменьшат Ваши администраторские головные боли, если Вы будете иметь миллионы файлов, но будете помнить, что можете [только 118] предоставление полномочия, не отменяют их, таким образом, предоставления всего блока должны быть максимальным подмножеством ACL для всего его содержания.

я рекомендовал бы разделить на отдельные блоки для:

  • полностью различное содержание - имеющий отдельные блоки для изображений, звуковые и другие данные делает для более нормальной архитектуры
  • существенно отличающийся ACLs - если Вы можете иметь один блок с каждым объектом, получающим определенный ACL или два блока с различным ACLs и никаким определенным для объекта ACLs, взять эти два блока.
117
ответ дан James Brady 5 November 2019 в 16:19
поделиться

Я использую структуру каталогов с корнем тогда по крайней мере один подкаталог. Я часто использую "дату импорта документа" в качестве каталога под корнем. Это может сделать руководящие резервные копии немного легче. Безотносительно файловой системы, которую Вы используете, Вы обязаны поразить предел количества файла (практическое если не физический предел) в конечном счете. Вы могли бы думать о поддержке нескольких корней также.

-3
ответ дан Jim Blizard 5 November 2019 в 16:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: