Я новичок в проектировании баз данных временных рядов.
Один из руководящих принципов, которые я прочитал, состоял в том, чтобы избежать большого количества временных рядов (например, рекомендации InfluxDb ) или временных рядов, которые недолговечны / вымирают.
В качестве упражнения я пытаюсь смоделировать метрики репозиториев github.Я хочу отслеживать общее количество комментариев / коммитов / измененных строк, объединенных различными атрибутами.Моя первоначальная идея состояла в том, чтобы выдвигать метрики в запросе на одно нажатие и выполнять все агрегации посредством запросов.
{
labels: {
pr: 1234,
repo: aRepo,
author: personA
}
values: {
commits: 5,
changed_files: 2,
comments: 0
status: Open
}
}
Однако, похоже, это идет вразрез с рекомендациями (запросы на включение закрываются и становятся постоянными).Альтернативой может быть предварительное вычисление агрегаций перед отправкой их в базу данных.Это, однако, приводит к менее детальным данным и потере данных.
Какова оптимальная стратегия для эфемерных временных рядов.