Репликация DynamoDB по AWS учетным записям - PullRequest
1 голос
/ 27 мая 2020

Я ищу лучший способ репликации данных из одной AWS учетной записи DynamoDB в другую учетную запись. Я знаю, что это можно сделать с помощью лямбда-триггеров и потоков.

Есть ли что-то вроде глобальных таблиц в AWS, которые мы можем использовать для репликации между учетными записями?

1 Ответ

0 голосов
/ 17 июня 2020

Я думаю, что лучший способ переноса данных между аккаунтами - использовать AWS Data pipeline. По сути, этот процесс будет выполнять резервную копию (экспорт) вашей таблицы DynamoDb в учетной записи A в корзину S3 учетной записи B через DataPipeline. Затем еще одно задание DataPipeline в учетной записи B импортирует данные из S3 обратно в предоставленную таблицу DynamoDb.

Пошаговое руководство приведено в этом документе https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-importexport-ddb.html.

Также вам понадобится доступ к нескольким учетным записям для корзины S3, которую вы будете использовать для хранения данных таблицы DynamoDB из учетной записи A, поэтому корзина или (файлы), которые вы используете, должны использоваться совместно с вашей учетной записью. (A) и целевую учетную запись (B) до завершения миграции. Обратитесь к этому do c для получения разрешений https://docs.aws.amazon.com/AmazonS3/latest/dev/example-walkthroughs-managing-access-example2.html

Другой подход, который вы можете использовать, - это использование скрипта. Прямого API для миграции нет. Вам нужно будет использовать двух клиентов, по одному для каждой учетной записи. Один клиент будет сканировать данные, а другой клиент может записать эти данные в таблицу в другой учетной записи.

Также я думаю, что у них есть инструмент импорта-экспорта, упомянутый в их репозитории AWSLabs. Хотя никогда не пробовал. https://github.com/awslabs/dynamodb-import-export-tool

...