Что такое ключ раздела в AWS Kinesis?

Вы не могли итерировать или хранить больше данных, чем длина вашего массива. В этом случае вы можете сделать так:

for (int i = 0; i <= name.length - 1; i++) {
    // ....
}

Или это:

for (int i = 0; i < name.length; i++) {
    // ...
}
26
задан Suhail Gupta 23 January 2018 в 10:52
поделиться

1 ответ

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

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

разделы настоящей причины используются, для "упорядочивания/потоковой передачи". Кинез поддерживает упорядочивание (порядковый номер) для каждого черепка.

, Другими словами, путем потоковой передачи X и впоследствии Y к черепку Z это гарантируется, который X вытянут от потока прежде Y (при получении по запросу записей от всех черепков). С другой стороны, путем потоковой передачи X к общему Z1 и впоследствии Y к черепку Z2 там не является никакой гарантией на упорядочивании (при получении по запросу записей от всех черепков). Y можно определенно вытянуть, прежде X.

возможность "потоковой передачи" черепка полезна во многих случаях.

(Например, видеосервис, передающий фильм потоком пользователю, использующему имя пользователя и фильм, называют как ключ раздела).

(Например, работающий над потоком событий от группы пользователей и применяющий агрегирование).

В случаях, где упорядочивание (потоковой передачи) не требуется, генерируя случайный ключ раздела, будет достаточен.

8
ответ дан 28 November 2019 в 03:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: