Mechanizm App Engine Datastore nie może być sprawdzany pod kątem zagregowanego wyniku.Alternatywna strategia agregacji zapytań ("grupa według") w magazynie danych wyszukiwarki Google.
Przykład: Mam podmiot o nazwie "Poczta" z następujących dziedzin:
Key id, nick String, String postText, int zdobyć
Mam wiele różnych pseudonimów i wiele posty każdego pseudonimu w moim magazynie danych.
Jeśli chcę pokładzie lider pierwszej dziesiątce pseudonimów całkowitej punktacji, ja zazwyczaj mają sql następująco:
select nickname, sum(score) as sumscore
from Post
group by nickname
order by sumscore
limit 10
Ten typ zapytania nie jest możliwe w google magazynu danych App Engine Java API (JDO lub jpa).
Jakie są alternatywne strategie, które mogę zastosować, aby osiągnąć podobny rezultat?
Mogę załadować każdą jednostkę Post i całkowicie obliczyć agregację w moim kodzie aplikacji. Jest to oczywiście nieskuteczne w przypadku dużych zbiorów danych.
Jakie inne strategie mogę zastosować?
Jeśli Google zaktualizował tylko swoją wtyczkę, DataNucleus zrobi to dla ciebie w sposób "surowy i brutalny". Kod do zrobienia to tylko garstka linii do wtyczki, wniesiona rok temu ... – DataNucleus
@DataNucleus Posiadanie wbudowanej obsługi technicznej nie sprawiłoby, że byłoby szybsze lub bardziej wydajne. –
@Nick, oczywiście, że nie, ale całe doświadczenie użytkownika byłoby cholernie przyjemnym widokiem, a ilość kodu, który ludzie musieliby napisać, byłaby mniejsza - to jest nasza działalność w – DataNucleus