Сохранить список строк в S3 - PullRequest
0 голосов
/ 29 мая 2020

Я новичок в Amazon AWS S3. Одно из моих приложений обрабатывает 40000 обновлений в час с уникальным идентификатором для каждого обновления. Этот идентификатор в основном представляет собой строку. Во время выполнения я хочу сохранить идентификатор в корзине S3 для всех обновлений.

Но, насколько я понял, нам нужно хранить файлы в s3.

Есть ли что-то вокруг этого ? Следует ли мне сохранить файл ... Затем каждый раз читать этот файл ... добавить имя и сохранить его снова?

Любое направление было бы очень полезным. Заранее спасибо.

Я хочу, чтобы он хранился как:

Id1

Id2

Id3. . ,.

Изменить: Спасибо за ответы, я добавил то, что просят ..

  • Я хочу иметь возможность просто получить все эти идентификаторы, если и когда возникнет проблема в наша система.
  • Я также открыт для использования чего угодно, кроме s3. Я также изучал DynamoDB. С идентификатором в качестве первичного ключа. Но в 1-2% случаев эти идентификаторы могут повторяться.

1 Ответ

1 голос
/ 29 мая 2020

В S3 у вас нет понятия файлов и папок. Все, что у вас есть, - это ведро и предметы внутри него. Однако пользовательский интерфейс AWS группирует объекты с общими префиксами , так что они кажутся в одной папке.

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

Итак, в одном направлении Чтобы сделать то, что я думаю, вы пытаетесь:

Предположим, у вас есть все идентификаторы, записанные в 10:00 в объекте S3 с именем data_corresponding_to_10_00_00. В течение следующего часа (и 40000 обновлений), если у них есть все новые идентификаторы, вы можете записать их в другой объект S3 с именем data_corresponding_to_11_00_00.

Однако, если вы не хотите, чтобы в обоих файлах было несколько записей, и вам нужно обновить сам предыдущий файл, использование S3 - не лучшая идея. Лучше используйте базу данных, проиндексированную по идентификатору, чтобы повысить производительность.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...