Как запрашивать данные на основе ключа раздела и сортировать ключи в Dynamodb, оставляя несколько элементов между
У меня есть таблица DynamoDb с именем Track с ключом раздела 'id' (String) и ключом сортировки 'timestamp' (Number) в миллисекундах. Данные вставляются каждые 5 секунд.
Теперь я хочу получить данные таким образом, чтобы у результата был один элемент из каждого часа вместо всех.
Как сделать запрос к базе данных?
Я использую Python и библиотеку Boto3.
Моя таблица выглядит так:
table = dynamodb.create_table(
TableName='Track',
KeySchema=[
{
'AttributeName': 'gpsid',
'KeyType': 'HASH' # Partition key
},
{
'AttributeName': 'timestamp',
'KeyType': 'RANGE' # Sort key
}
],
AttributeDefinitions=[
{
'AttributeName': 'gpsid',
'AttributeType': 'S'
},
{
'AttributeName': 'timestamp',
'AttributeType': 'N'
}
],
ProvisionedThroughput={
'ReadCapacityUnits': 10,
'WriteCapacityUnits': 10
}
)
И данные выглядят так: