News for hackers. Stuff that matters.
Re:Building a scalable time-series database on PostgreSQL by cevian on Tuesday April 04, 2017 @08:07PM (#14038496)
We actually really like (and use) Postgres inheritance. Our extensions add functionality specifically geared for time-series workloads. Namely, we add:

- Automatic table-sizing. This includes dynamically creating new tables for new data, closing old tables as soon as they get too big, etc. (more challenging than meets the eye because of deadlocking issues, etc.).

- Related to above, optimized inserts to correct chunks. In Postgres 9.6, this is slow using rules/triggers. In upcoming Postgres 10 the situation is supposed to be better (waiting for finalization of 10 to test). But in Postgres 10, auto-closing and table creation are still not supported, and implementing them would probably require the slow path. In contrast, Our inserts are very fast.

- Hash-partitioning query pruning according to partition key

- (Time based pruning supported also, but that's standard Postgres)

- Time-based query optimizations. For example, we enable the planner to group by time-intervals using indexes on time-columns. Plain postgres can't support that because it does not know that truncating/rounding time is order-preserving. Other optimizations in active development.

- Our upcoming clustered version will include distributed query optimizations. In addition our scale-out design takes advantage of many workload features unique to time-series (see white-paper for more details)

Re:Building a scalable time-series database on PostgreSQL by JimNasby on Saturday April 08, 2017 @05:11PM (#14069067)
Out of curiosity, is it inheritance you like, or just the partitioning aspect of it?

I've actually used inheritance far more than partitioning, but I know of others that would love to see inheritance die.