This should ideally depend on your ingestion data and the querying needs. Partitioning by month would allow a better pruning during the query time, however in case there is less data for a month, it would lead to a blowup in the amount of segments. From the query given, I think that the data would be identically distributed across the months, and it might make more sense to partition by month, if there is not much historic data. Ideally, the segment sizes are kept around 5mn rows (or 3mn for SQL based ingestion), so if there is a lot less data than this, then it would make sense to increase the granularity to a YEAR.