Обновление Google Cloud Bigtable или вставка с контролем версий - PullRequest
0 голосов
/ 08 мая 2018

Мне интересно, должен ли я использовать запрос update для обновления данных строки или использовать maxversions, включить управление версиями и просто вставить.

Я понимаю, что это может зависеть от того, какие данные мне нужно хранить, но я просто хотел узнать, есть ли разница в производительности между запросом (выбором) данных, которые имеют версии или нет версии. Или имеет разницу в производительности между insert и update.

1 Ответ

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

На производительность влияет размер строки и объем данных, возвращаемых с сервера.

Bigtable должен прочитать всю строку для каждого запроса. Это будет ограничивающим фактором для чтения. При некотором размере (100 с + МБ) производительность системы будет ухудшаться при каждой загрузке планшета с этой строкой. Когда размер строки достигнет ГБ, у вас возникнут серьезные проблемы.

Во время запроса на производительность также влияет количество данных, возвращаемых с сервера. Вы все равно можете получить приличную производительность меньшего диапазона «больших рядов», если ограничить свой Get или Scan небольшим подмножеством строки. Ограничения, такие как количество ячеек в строке и / или получение только нескольких квалификаторов, могут помочь с затратами в сети.

В общем, лучше, если можете, уменьшить размер строк. Обычно это делается с помощью комбинации «вставка» и некоторого ограничения возраста / версии для семейства столбцов.

...