Сканирование может дать разные результаты в GSI по сравнению с базовой таблицей, поскольку GSI может быть разреженным .
GSI имеет другой ключ, установленный для базовой таблицы.Элементы записываются в GSI только в том случае, если на элементе присутствуют ключи GSI.В противном случае он опускается, то есть в GSI может быть меньше данных, чем в базовой таблице.
Допустим, базовая таблица имеет атрибут разделения A
и ключ сортировки B
.GSI в этой таблице имеет атрибут раздела C
и не имеет ключа сортировки.Если элемент имеет значения только для атрибутов A
и B
, но не C
, этот элемент не будет отображаться в GSI.
РЕДАКТИРОВАТЬ: пример использования AWS в предоставленной мной ссылке -БИС.Я использовал пример GSI, как это было в вопросе.Принцип тот же.