We have a SQL SERVER with only one table. This table contains 50 million rows. The table has 31 columns. 1 Identity column and 30 nchar columns with different sizes. The table size is of 15 GB.
The table contains information of the year 2017. Initially there's no going to be inserts in the table. But in the future the client maybe will want to add the year 2018 or maybe 2016. For the time being is for queries.
The queries need minutes to perform. So, I thought that it will be better to divide the table in 1 table per month because the table is too big. But the solution doesn't satisfy the client because he wants to query all the data.
So, given this scenario what would be the best approach to handle this table and make it possible to query fast?