Я собираюсь вести подсчет некоторых элементов, таких как лайки и комментарии к сообщению. Скорость записи может быть высокой, например 1K лайков / сек
Использование SELECT COUNT
не представляется возможным, даже если результирующий набор проиндексирован, так как для подсчета может быть несколько миллионов строк.
Я подумываю об использовании подхода с использованием сегментированных счетчиков, где конкретный счетчик (например, для данного поста) состоит из N
осколков / строк. Увеличение счетчика будет увеличивать значение столбца строки одного сегмента, тогда как чтение счетчика будет считывать все строки сегмента и суммировать значения счетчика. Будут ли какие-либо проблемы в таком подходе с Spanner?
Я понимаю, что в Bigtable несколько обновлений одной и той же строки создадут новые версии ячеек в строке, и в результате вы можете заставить строку превысить свой предел размера. Поэтому использование строк в качестве сегментированных счетчиков в Bigtable кажется плохой идеей. У Spanner есть подобные проблемы?