Предел 1 записи в секунду на одну группу лиц?

Я достаточно искал и не нашел ответа. Так что я спрашиваю.

По данным Google Cloud DataStore док.

Существует ограничение производительности записи в одну транзакцию в секунду в пределах одной группы объектов.

Теперь давайте просто скажем, что у меня есть Entity User и еще одна сущность Cars. У них общий родитель. Таким образом, Пользователь + Автомобиль + Их_Паратор - это одна группа объектов. Правильно?

Давайте предположим, что в хранилище данных User & Car есть миллион экземпляров / строк в каждой.

Если я запускаю транзакционный запрос, чтобы обновить экземпляр / строку в хранилище данных.

Моя путаница заключается в том, сколько экземпляров группы сущностей заблокировано для применения ограничения на запись в Google DataStore?

А. Пользователь + Автомобиль (в совокупности с двадцатью миллионами экземпляров)

B. Всего 1 экземпляр пользователя + Car? (1 пользовательский ряд и 1 автомобильный ряд)

На языке базы данных, пользователь является видом / таблицей сущностей. Так блокируется ли вся таблица / вид для одной операции записи или только один экземпляр / строка блокируется для одной операции записи?

Если случай А означает, что для 1 записи все 20 миллионов строк сущностей Пользователь + Автомобиль будут заблокированы? Это безумие. Что делать, если мне нужно обновить все 20 миллионов строк. Если операция записи обновляет только 1 строку, понадобится ли 20 миллионам строк 20 миллионов секунд, чтобы избежать конфликта?

2 ответа

Решение

Наконец-то нашел ответ здесь статья магазина

В приведенном выше примере каждой организации может потребоваться обновить запись о любом человеке в организации. Рассмотрим сценарий, в котором "ateam" насчитывает 1000 человек, и у каждого из них может быть одно обновление в секунду для любого из свойств. В результате в группе объектов может происходить до 1000 обновлений в секунду, что не может быть достигнуто из-за ограничения на количество обновлений. Это показывает, что важно выбрать подходящий дизайн группы объектов, который учитывает требования к производительности. Это одна из задач нахождения оптимального баланса между возможной последовательностью и строгой последовательностью.

группа сущностей - это совокупность сущностей, связанных через родословную с общим корневым элементом. Организация данных в группы сущностей может ограничивать то, какие транзакции могут быть выполнены:

Смотрите документы "Python" здесь. Удивил, что это не было где-то в вашей ссылке на документацию Java

Другие вопросы по тегам