title: Django database scalability
body: <p>We have a new django powered project which have a potential heavy-traffic characteristic(means a heavy db interaction). So we need to consider the database scalability in advance. With some researches, the following questions are still not clear to us:</p>
  
  <ol>
  <li>coarse-grained: how to specify one db table(a django model) to a specific db(maybe in another server)?</li>
  <li>fine-grained: how to specify a group of table rows to a specific db(so-called sharding, also can in another db server)?</li>
  <li>how to specify write and read to different db?(which will be helpful for future mysql master/slave replication)</li>
  </ol>
  
  <p>We are finding the solution with:</p>
  
  <ol>
  <li>be transparent to application program(means we don't need to have additional codes in views.py)</li>
  <li>should be in ORM level(means only needs to specify in models.py)</li>
  <li>compatible with the current(or future) django release(to keep a minimal change for future's upgrading of django)</li>
  </ol>
  
  <p>I'm still doing the research. And will share in this thread later if I've got some fruits.</p>
  
  <p>Hope anyone with the experience can answer. Thanks.</p>