DynamoDB: TTL, S3, Security, Pricing Flashcards

1
Q

В чём суть идеи TTL в DynamoDB?
Какой use-case? Какие преимущества?

A
  • Высвобождать (в НЕ срочном порядке) память от устаревших записей
    • без кастомного кода
    • без расхода WCU
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Как реализован TTL в DynamoDB?
Какой pricing у этой операции?

A
  • Можно выделить отдельную колонку типа Number (со значением Unix Epoch Timestamp)
  • И указать DynamoDB автоматически удалять запись, если дата в колонке устарела

При этом WCU НЕ расходуется, операция бесплатная.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Что можно сказать о GSI, LSI, DynamoDB Stream в плане TTL?

A

В том числе запись удаляется и из LSI, GSI
Delete операция - как обычная - отслеживается DynamoDB Stream’ом

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

В чём нюанс удаления item’а по TTL из DynamoDB?
Как это нужно учитывать?

A

Item’ы удаляются НЕ мгновенно после устаревания, а в течение 48 часов.

Поэтому может потребоваться Client Side Filtering, чтобы НЕ считывать item’ы, которые уже expired, но ещё НЕ удалены.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Какие use-cases есть для использования S3 вместе с DynamoDB?

A
  • размер item’а больше 400 KB (картинки)
  • эффективное индексирование файлов для поисковой системы
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Как устроена архитектура для
эффективного индексирования файлов для поисковой системы?

A

Application => S3 Bucket => Lambda Function => DynamoDB <= Application

Лямбда постоянно сохраняет метаинформацию S3 объектов в DynamoDB.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Почему лучше хранить метаинформацию файлов в DynamoDB вместо того, чтобы просто хранить файлы в S3?

A

Для нас гораздо проще строить запросы к DynamoDB
(в которой удобно рассортирована вся метаинформация о файлах),
чем строить запросы к S3.

Потому что S3 предназначен для хранения тяжёлых объектов и запроса по ObjectKey, а НЕ для Scan’а метаинформации.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Как работать с DynamoDB в рамках VPC?

A
  • VPC Endpoint - чтобы подключаться к DynamoDB по ПРИВАТНОЙ сети
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Какое шифрование доступно для DynamoDB?

A
  • at rest - AWS KMS
  • in-transit - SSL/TLS
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Есть множество клиентов (users), которые хотят работать с DynamoDB. Как это реализовать?

Как называется эта технология?
Как называются такие пользователи?

A

Нужно использовать Identity Provider сервис.
Например, AWS Cognito User Pools или SAML

“Fine Grained Access Control”
”Federated User”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Каков Pricing DynamoDB?
Сколько стоят дополнительные фичи (Transactions, Replications)

A

Платим за количество read/write операций (расход WCU RCU)

Фичи DynamoDB Transactions и DynamoDB Replications сами по себе бесплатны.
Но они требуют в 2 раза больше read/write операций.
Поэтому косвенно удваивают цену.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly