Повторяя ответ от here, так как кто-то прислал мне эту страницу, задав аналогичный вопрос.
Вот упрощенная версия того, что я использую для чтения данных из DynamoDB в R. Он опирается на тот факт, что R и Python могут обмениваться данными, а также библиотека называется boto в Python делает его очень легко получить данные от DynamoDB. Это было бы аккуратно, если бы это был весь пакет R, но я не буду жаловаться, учитывая 25 ГБ свободного хранилища, которое вы можете получить от Amazon.
Во-первых, вам нужен сценарий Python, как названный так query_dynamo.py:
import boto3
import time
dynamodb = boto3.resource('dynamodb',
aws_access_key_id='<GET ME FROM AWS>',
aws_secret_access_key='<ALSO GET ME FROM AWS CONSOLE>',
region_name='us-east-1')
table = dynamodb.Table('comment') ###Your table name in DynamoDB here
response = table.scan()
data = response['Items']
while 'LastEvaluatedKey' in response:
response = table.scan(ExclusiveStartKey=response['LastEvaluatedKey'])
data.extend(response['Items'])
Тогда в R вы делаете это. Если вы пытаетесь это сделать в Windows, вы можете попробовать вместо этого использовать rPython-win. Я сделал все это на Ubuntu Linux 16.04 LTS.
library(rPython)
python.load("query_dynamo.py")
temp = as.data.frame(python.get('data'))
df = as.data.frame(t(temp))
rm(temp)
Теперь вы будете иметь dataframe под названием «ДФ» с содержанием того, что вы попали в DynamoDB.
Моя компания (Analytical Flavor Systems) теперь работает над пакетом с открытым исходным кодом для запроса DynamoDB из R. Я отправлю ссылку здесь, когда пакет будет выпущен. – JayCo
любые обновления вашего пакета DynamoDB - R? –