DynamoDB добавляет глобальный индекс второго дня в существующую таблицу - PullRequest
0 голосов
/ 13 января 2020

У меня есть таблица DynamoDB, в которой хранится информация о запланированном задании. В моей базовой таблице у меня есть partionKey из userId и sortKey из jobId.

Список атрибутов:

[streetAddress, streetAddress2, city, propertyState, zipCode, propertySqft, packageSelected, createdAt, startDate, totalPrice, invoiceNumber, status]

Я хочу создать глобальный вторичный индекс, чтобы иметь его в качестве «очереди заданий» "поэтому я могу сделать запрос API для запроса и фильтрации через атрибут zipCode(number) и атрибут packageSelected(string), чтобы получить информацию о местоположении и сервисе. Я буду передавать несколько почтовых индексов и указывать c служебную информацию для фильтрации атрибутов.

Как создать индекс для репликации информации базовой таблицы?

1 Ответ

0 голосов
/ 14 января 2020

UpdateTable

Изменяет настроенные параметры пропускной способности, глобальные вторичные индексы или параметры DynamoDB Streams для данной таблицы. info

 {
    TableName: 'job',
   AttributeDefinitions: [ 
      { 
     "AttributeName": "zipCode",
     "AttributeType": "N"
      },
     { 
     "AttributeName": "packageSelected",
     "AttributeType": "S"
      }
      ],
    GlobalSecondaryIndexUpdates: [{ 
            Create: { 
    IndexName: 'index_zip', 
    KeySchema: [
        { // Required HASH type attribute
            AttributeName: 'zipCode',
            KeyType: 'HASH',
        },
        { // Optional RANGE key type for HASH + RANGE secondary indexes
            AttributeName: 'packageSelected', 
            KeyType: 'RANGE', 
        }
    ],
    Projection: { // attributes to project into the index
        ProjectionType: 'ALL', // (ALL | KEYS_ONLY | INCLUDE)

    },
    ProvisionedThroughput: { // throughput to provision to the index
        ReadCapacityUnits: 1,
        WriteCapacityUnits: 1,
    },
    },
    },

    ],
  }
...