One of my applications requires to create a cluster with more than 100 nodes, I've read documents recommended to use clusters with less than 50 or 100 nodes (Netflix got hundreds of clusters with less 100 nodes on each).
Is it a good idea to use multiple clusters for a single application, just to decrease maintenance problems and system complexity/performance?
If So, which one of below policies is more suitable to distribute data among clusters and Why?
1. each cluster' would be responsible for a specific partial set of tables only (table sizes are almost equal so easy calculations here) for example inserts to table X would go to cluster Y
2. shard data at loader level by some business logic grouping of data, for example all rows with some column starting with X would go to cluster Y
I would appreciate sharing your experiences working with big clusters, problem encountered and solutions.
Thanks in Advance