title: Aggregation of large (bilions of rows) datasets over PostgreSQL database
body: <p>I'm struggling to find the right way how to aggregate large amounts of data.
  Considering a database with average expextected incoming load of about 200 (500 peak) new rows per second, we wil reach one bilion rows within first three months. The expectation is to hold the data for at least 10years. Table will be pretty much static, no UPDATEs, no DELETEs, just INSERTs.
  Is it real to expect the PostgreSQL server (with proper hardware and configuration) will manage such large amounts of data for querying or is it bad idea?</p>
  
  <p>Now the requirment is that each customer will be able to generate aggregated reports for his transactions (could be tens or even hundreds of millions, depending on his criteria), including those recently added.</p>
  
  <p>I can think of few teoretical aproaches such as views, materialized views, direct querying, precalculating using triggers to another table. Each of those have its impacts, positives, negatives. For example I can't even imagine refreshing materialized views.</p>
  
  <p>Does anyone have experience with such tasks? Any insight is apprecitiated. Even infrastructure tips, third party tools, anything helpful. My biggest concern now is the software solution to create, not HW scaling.</p>
  
  <p>Cheers.</p>