Should we use a separated database for our data set? We are working in website and integrating the Drupal Commerce in our website. We are also adding multiple  product per product display to allow user to select products while adding product to cart.

The website will have large data set with more than 10 million product display (node) and more than 30 million products (drupal commerce). 

We have also integrated apache solr with search api and allowing user to keyword search and filtering the search result.

Can anyone suggest that if we would stored such large data into single database, will it effect our performance or we need to stored data into 'master/slave' concept of database?

As we have large dataset, so we are preparing architecture of our database, so it would not effect performance of our website.
Talk to your hosting provider. If they can't answer these questions, get a new hosting provider.

These really are concerns you should bring to your hosting provider. A quality hosting provider will be able to meet these needs and tailor a solution that ensures smooth operation of a site as a whole and within the individual components: Solr, MySQL, Apache/Nginx/Litespeed/etc.

How will they do this?


Benchmarking - Before launch, they'll launch a version of the site and then work to ensure that certain performance criteria are met. They'll tweak and scale to meet these numbers.
Infrastructure - Just having a master/slave DB isn't necessarily a solution. You have to have good infrastructure and equipment backing it up. It also has to be architected well. Good providers will have this.
Multiple Layers of Scalability - Having multiple strategies to handle load or large sites is key. This means not just having a huge DB but also effective content distribution (CDN) and internal Drupal caching (Redis) in addition to strong infrastructure.