I have to design a database schema to provide user based tips and various analytic. These tips are based on the historical data stored in the database. I want to know that is there is any guide line which I needs to be follow so that my business rules are efficiently runs on the stored data. Also is there are any tools or Postgres extension available for analytic purpose.

regards,
Shreyansh