DynamoDB, способ разбить на страницы 100 000 документов со смещением / лимитом? - PullRequest
2 голосов
/ 07 марта 2019

У меня есть 100 000 документов, успешно сохраненных в таблице.В настоящее время я просто использую первичный ключ (не хэш / сортировка комбо).Нет хорошего способа разбить их на полезные разделы для чтения, потому что в первую очередь клиенты будут просто извлекать всю базу данных, а затем просто извлекать все обновленные элементы.Кроме того, я хотел бы вернуть результаты в разбивке по страницам, используя метод смещения / предела.

Мне интересно, как лучше всего это сделать.Пример элемента, который я сохранил в таблице, выглядит следующим образом (id - это первичный ключ):

{
        "id": 11299,
        "name": "plugin1",
        "attributes": {
            "plugin_version": "1.30",
            "exploit_available": false,
            "in_the_news": false,
            "exploited_by_malware": false,
            "exploited_by_nessus": false,
            "risk_factor": "Medium",
            "plugin_type": "remote",
            "exploitability_ease": "No known exploits are available",
            "plugin_publication_date": "2003-03-01T00:00:00Z",
            "plugin_modification_date": "2018-07-16T00:00:00Z",
            "vuln_publication_date": "2003-01-23T00:00:00Z"
            "cvss_temporal_vector": {
                "raw": "E:U/RL:OF/RC:C",
                "ReportConfidence": "Confirmed",
                "Exploitability": "Unproven",
                "RemediationLevel": "Official-fix"
            }
        }
    }

Мне также нужно отфильтровать по plugin_modification_date, поэтому не уверен, будет ли полезно сделать этоключ сортировки.Что до сих пор огорчает, когда мы исследуем это, так это то, что все, кажется, каким-то образом полагается на использование ключа раздела, когда это бесполезно, когда у вас есть отдельный первичный ключ, который уникален для всех элементов.

...