title: mysql database partition on extreme imbalance data?
body: <p>2 million customers produce 2 billion orders in 2 years, but according to history data, 50% orders are belong to 100 top customers, so the data is extreme imbalance on customer id. the customers wish search their own history orders by pay accounts(a customer has more than one pay accounts, some customers have thousands pay accounts). </p>
  
  <p>the diffcult is the top customer is always changing and you don't know which customer will have huge orders in future month.</p>
  
  <p>I need store 3 or 4 years orders data and provider a order search service for customers. how should I partition the database and tables? I mean if use hash on customer's pay account, some database will have huge data. I now have 35 servers and 600G storge on each server. </p>