我管理一个Laravel 5应用,该应用将数据存储到AWS DynamoDb表中。
它具有3列:
我使用https://github.com/baopham/laravel-dynamodb与该存储进行互动。
可以对单个记录进行CRUD操作。
但是我还需要计算/列出/删除在 id 和/或期间上过滤的记录。
伪代码:
function scope($mode) {
$scope = DynamoDbEntry::orderBy('id')->orderBy('period');
if (!empty($ids)) {
$scope->whereIn('id', $ids);
}
if (!empty($periods)) {
$scope->whereIn('period', $periods);
}
if ($mode === 'count') {
return $scope->count();
}
if ($mode === 'delete') {
$scope->delete();
return true;
}
return $scope->get();
}
这部分效果不佳:似乎查询仅“看”到数据的第一个Mb。 例如,一个不带过滤器的计数查询说该表仅包含15条记录,而不是94条。
我是NoSQL世界的新手,我想我已经了解了一些问题。
数据组织得井井有条吗?
如何过滤多个键上的记录?
任何启发都会受到感激。 谢谢:-)