Выбор ключа раздела в DynamoDB - PullRequest
0 голосов
/ 01 мая 2018

Я пишу сервис, который запрашивает некоторые данные о занятости с удаленных станций на автостоянках и хранит их в DynamoDB. Это примерный набор данных:

<PublicCarparksStallCount>
  <AsOf>2018-05-01T10:57:15</AsOf>
  <Carparks>
    <Carpark>
      <CarparkId>1</CarparkId>
      <CarparkName>Azrieli Sarona</CarparkName>
      <CarparkSummary>
        <Usable>1242</Usable>
        <Vacant>478</Vacant>
        <Occupied>712</Occupied>
        <Reserved>0</Reserved>
        <MedicalVacant>1</MedicalVacant>
        <MedicalOccupied>3</MedicalOccupied>
      </CarparkSummary>
      <Levels>
        <Level>
          <LevelId>1</LevelId>
          <LevelName>מפלס -2</LevelName>
          <LastValidCountTime>2018-05-01T10:57:16</LastValidCountTime>
          <LevelCount>
            <Usable>171</Usable>
            <Vacant>11</Vacant>
            <Occupied>159</Occupied>
            <Reserved>0</Reserved>
            <MedicalVacant>0</MedicalVacant>
            <MedicalOccupied>1</MedicalOccupied>
          </LevelCount>
        </Level>
      </Levels>
    </Carpark>
  </Carparks>
</PublicCarparksStallCount>

Каков наилучший способ определения ключа раздела для таких данных? Служба запускается каждую минуту и ​​сохраняет эти данные для последующего использования или для визуализации в реальном времени.

1 Ответ

0 голосов
/ 01 мая 2018

Не возможно ответить на этот вопрос. Схема вашей таблицы зависит от того, как вы собираетесь использовать свои данные, например, от типа запросов, которые вы собираетесь делать.

В качестве примера я могу сказать, что создайте атрибут UCID PublicCarparksStallCount для ключа раздела и сохраните весь документ в атрибуте с именем document, но это может быть ужасным решением в зависимости от того, что вы хотите сделать в своем приложении.

Я предлагаю прочитать этот ответ и уточнить ваш вопрос.

...