Как я получаю количество всех записей данного типа, сохраненного в хранилище данных appengine's Google?

Я добавил следующий код после команды append, и все было в порядке:

$grid.imagesLoaded().progress( function() {
    $grid.masonry('layout');
});

Причина:

Загруженные изображения могут скинуть макеты масонства и вызвать предмет элементы для перекрытия. imagesLoaded решает эту проблему. imagesLoaded - это отдельный скрипт, который вы можете скачать по адресу imagesloaded.desandro.com.

источник

5
задан 21 May 2009 в 18:29
поделиться

3 ответа

Как говорит Вубл, bigtable не поддерживает подсчет строк как фундаментальную концепцию - вы можете написать функцию-оболочку, как говорит Макоттон, но, как он цитирует документы, это все равно быть ограничено не более 1000.

Чтобы преодолеть эти ограничения, вам необходимо сохранить для каждого типа объекта, который вы хотите подсчитать, счетчик, который увеличивается каждый раз, когда помещается новый объект такого типа, и уменьшается, когда объект такого рода удаляется.

Чтобы сохранить масштабируемость вашего приложения, вы, вероятно, захотите сегментировать такие счетчики, см. http://code.google.com/appengine/articles/sharding_counters.html ( к сожалению, мне неизвестен перевод этого рецепта на Java, но концепции должны быть такими же).

8
ответ дан 13 December 2019 в 05:41
поделиться

Это просто предположение, но я думаю, что они будут реализовывать метод count () в java, аналогичный их реализации на Python. ЗДЕСЬ - это метод count () для Python.

count (limit)

Returns the number of results this query fetches.

count() is somewhat faster than retrieving all of the data by a constant factor, but the running time still grows with the size of the result set. It's best to only use count() in cases where the count is expected to be small, or specify a limit.

Note: count() returns a maximum of 1000. If the actual number of entities that match the query criteria exceeds the maximum, count() returns a count of 1000.

Arguments:

limit

    The maximum number of results to count.
0
ответ дан 13 December 2019 в 05:41
поделиться

К сожалению, BigTable не может подсчитывать объекты без выполнения запросов на соответствие всем из них. Помня о том, что такие приложения, как Google Search и Google Reader, даже не дадут вам точного подсчета результатов, если у вас их больше 1000, если вы абсолютно положительно считаете, что вам нужно подсчитать все свои объекты, вы можете выполнить серию keys_only запросы ограничены 1000 объектами каждый и суммируют счетчики для всех из них.

1
ответ дан 13 December 2019 в 05:41
поделиться
Другие вопросы по тегам:

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