title: Data mining with postgres in production environment - is there a better way?
body: <p>There is a web application which is running for a years and during its life time the application has gathered a lot of user data. Data is stored in relational DB (postgres). Not all of this data is needed to run application (to do the <em>business</em>). However form time to time business people ask me to provide reports of this data data. And this causes some problems:</p>
  
  <ol>
  <li>sometimes these SQL queries are long running</li>
  <li>quires are executed against production DB (not cool)</li>
  <li>not so easy to deliver reports on weekly or monthly base</li>
  <li>some parts of data is stored in way which is not suitable for such
  querying (queries are inefficient)</li>
  </ol>
  
  <p>My idea (note that I am a developer not the data mining specialist) how to improve this whole process of delivering reports is:</p>
  
  <ol>
  <li>create separate DB which regularly is update with production data</li>
  <li>optimize how data is stored</li>
  <li>create a dashboard to present reports</li>
  </ol>
  
  <p><strong>Question:</strong> But is there a better way? Is there another DB which better fits for such data analysis? Or should I look into <em>modern</em> data mining tools?</p>
  
  <p>Thanks!</p>