AWS - лучший способ передачи и получения крупномасштабных данных из / в хранилище AWS - PullRequest
0 голосов
/ 23 мая 2018

У меня есть мобильное гибридное приложение Ionic, которое использует AWS в середине, как функции шлюза API, запускающие функции lamdba для простой публикации, получения запросов.

Я хочу хранить большие jsons (около 5 тыс. Элементов) в AWS, чтобы ониможет быть легко извлечен и сохранен в локальном хранилище приложения.

Я планирую создать задание ETL cron, которое будет загружать данные с моего сервера в AWS для этой цели

Предложения AWSНесколько сервисов, таких как Redis, DynamoDB, которые могут быть использованы для этого сценария, но я не совсем понимаю, каким способом это можно достичь.

Я подумал и прочитал о нескольких вариантах:

  1. APIшлюз -> DynamoDB
  2. API-шлюз -> лямбда-функция -> DynamoDB
  3. API-шлюз -> лямбда-функция -> Redis

Я также читал о S3 и pipline, но я не уверен, что они подойдут.

Пожалуйста, сообщите.

Спасибо

Ответы [ 2 ]

0 голосов
/ 23 мая 2018

Прежде всего, Redis не совсем подходит для ваших требований.Использование API-шлюза с DynamoDB или Lambda покроет ваши требования.

1.API Gateway -> DynamoDB : выберите, если вы просто пытаетесь сохранить данные JSON в DynamoDB без

2.API Gateway -> Lambda -> DynamoDB : выберите, требуется ли выполнить какую-либо операцию или модификацию данных JSON перед сохранением в DynamoDB.

Предложение : Выберите первый подход (API Gateway -> DynamoDB) для сохранения данных JSON в DynamoDB с помощью POST-запроса API-шлюза и извлечения данных JSON на основе запроса с помощью GET-запроса API-шлюза.

Как реализовать первый подход, выполните следующие действия.Блог Amazon: https://aws.amazon.com/blogs/compute/using-amazon-api-gateway-as-a-proxy-for-dynamodb/

0 голосов
/ 23 мая 2018

Если я правильно понимаю ваш вопрос, вы хотите поместить JSON-файлы данных с вашего сервера в AWS, чтобы ваш мобильный клиент (используя Lambda и т. Д.) Имел более быстрый доступ к этим данным

В этом случае достаточно AWS S3 (при условии, что вы знаете, какой JSON-файл будет передан вашему клиенту, и вам не нужно просматривать / запрашивать его содержимое).Это должно выглядеть так:

[ Server ] ==[Whatever]==> [ AWS S3 ]

[ AWS S3 ] <==[Lambda]==> [ Mobile client ]

Для этого [Что угодно], посмотрите на Документ Amazon на .Может быть sync может помочь

Редактировать: После прочтения вашего комментария я понимаю, что вы намереваетесь поместить данные, которые в настоящее время хранятся в вашей оракулярной базе данных, в базу данных на основе JSON в AWS.В этом случае DynamoDB - это путь.Вы должны следовать решению @Haresh Chhelana и отредактировать свой вопрос, чтобы сделать его более понятным

Вы также можете использовать DMS с DynamoDB в качестве цели , если вам не требуется расширенное преобразование данных перед миграциейв DynamoDB

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