We have a scenario for which we are considering using apache Cassandra for deployment for our data storage needs.The setup is to be spread across multiple data centers in different regions(physical locations). With each data center having multiple nodes. However we can afford at most 1 public IP address for each data center. With nodes inside the data center communicating over private IP. We plan to use RF=3 and OldNetworkTopologyStrategy for replica placement.
1 . This leads us to question that how will node discovery take place and how will Cassandra ring be formed between multiple data centers?
How is data partitioning to be carried on in this scenario?
If say data resides in Data center 1 node 2 and read query is sent to Data center 2 node 1, assuming it DC2 has no local replica than how is read query to be serviced? This is our biggest concern as articles relating to public/private IPs for cassandra could not be found.
As in Cassandra any node can be queried for data and same goes for write requests, cassandra is our first choice in environments we have to deploy.