Я довольно плохо знаком с моделированием моей модели данных для эффективных запросов с GAE, но имею обширные знания с RDBMS.
Вот проблема: Я получил примерно миллион условий (строки) и потребность запросить и сравнить связанные численные значения как временной ряд с еженедельными точками данных. Думайте о нем как о графике со временем на оси X и линейной оси Y, показывающей числовые меры.
До сих пор я понял мысли дискретных данных на термин и день в хранилище данных, и я ищу способ агрегировать данные к неделе и хранить данные так, чтобы я мог запросить хранилище данных эффективно. Я думал о предварительном вычислении многих временных рядов другой длины (4 недели, 5 недель, 6 недель и т.д.) на термин, и сохраните каждую запись как {term, start_week, [time series]}
С RDBMS я мог легко сгруппироваться к неделе и создать ряд данных программно, или как хранимая процедура или в бэкэнде приложения. Из-за ограничений GAE и природы BigTable как очень распределенная система, это не опция.
Любые идеи высоко ценятся!
Подход, к которому вы идете, кажется разумным, но все зависит от типа запросов, которые вам нужно выполнить. Если предположить, что вам нужно искать временные ряды по имени (строке) и неделе, и вы, как правило, хотите получить от 1 до 100 последовательных недель данных, я бы предложил следующее: