ASP.NET, DB, SharePoint

Improving SharePoint site performance


In the history of Microsoft, SharePoint is one of the fastest growing product. Its adoption rate has been exponential with millions of documents being stored daily. With its growth critical procedures and documents are now being stored in SharePoint. It is fundamental that SharePoint maintains its healthy status as application performance is a key component for a successful deployment and adoption of SharePoint.


1. Direct Link of the performance of SharePoint to SQL Server

SharePoint settings and configurations affect your Share-point’s performance speed. However, the real engine behind SharePoint is SQL Server. Everything gets stored in your databases, the faster information can be written, stored and accessed from it the faster SharePoint will be.

2. Allocation size of the Disks and the NTFS

It is mandatory to make sure you have the right disks, before SQL Server is installed. I will not pretend to be an expert on hardware and I will let you find the best for your scenario. Even my personal laptop is running on SSDs. However, By changing the NTFS Allocation size of your drives by formatting the disks, we can actually help the speed . SQL reads and writes 64K at a time, but by default your disk allows only 4K. This change may show you improvement in speed by 30%.

3. To increase SharePoint performance, model database needs to be modified

Every time SharePoint creates a new Content Database to store your Web Application along with other task you perform. Information present in the Model Database is used by SQL. Unfortunately, Share point cannot be optimized.

Initial Size:

When the database is created, the initial size of the same should be taken into consideration for what it is being used for. Due to the small default size in the single digit MB, it doesn’t have much to do in a SharePoint scenario. As we know that the SharePoint is going to be used to store a lot, when it is created we can automatically provide a larger amount of space to the database. Performance will be enhanced as SQL will not ask for more space to store data constantly.

Auto Growth:

Eventually, the initial size of carrying the data in the database will be reached and will need to grow. Once the size has been met, this is when we can tell it by how much it should be growing. We have to make sure that the size of the SharePoint databases grows by chunks that make sense in your environment. Same changes should be done to the Temp DB SQL Database as SharePoint also as it indirectly uses the database server to store objects.

4. Instant File Initialization can help speed up SharePoint but be careful

If we talk about increasing the file sizes of SharePoint Database , how does it actual work? Well, to confirm it can be written to as it creates or grows the database, Zeroes will be written by SQL in order to validate that it can write to it and then claim it. Depending on the task Share Point asked of SQL server, the said process can be a really long. Fortunately, there is something called Instant File Initialization that allows us to skip this process.

The amount of time saved for these operations is incredible! However, this cannot be recommended in a production environment, but it can actually work amazingly for dev or demo machines.

5. Logs and Maintenance of your SharePoint

It would be meaningless to locate the Database in that big file without a log file. That’s why a right recovery model is extremely important to be present for your needs.

There are two models, one has less information also will take less space and will require less maintenance and the other one is total opposite. Regardless of the fact that which model works for you better, you have to make sure that it is properly maintained and the logs are properly truncated in order to make sure that you don’t end up with something which is even larger than the database.

6. The famous SharePoint Continuous Crawl for Search

To pick up these properties and it to work in Share Point, a crawl is required for Search . Although Continuous Crawl is latest and awesome to work, but that does not mean it should be activated everywhere you go.

I have a Search running on no fixed schedules and can run a Full or Incremental when needed for testing and demo purposes. Obviously, in a production environment you will need to schedule these crawls properly for your different Content Sources. And if the default Local SharePoint Content Source is still getting used, then it wrongly done.

7. A case of the SharePoint Service Applications

Search is a new feature for your SharePoint platform that Service applications has provided us . If these features do not exist or are not connected to the Web Applications then it will not be possible to benefit from them. However, that doesn’t mean you need all of the Service Applications.

I only have only those which I need created and are in use, unless Access and Visio services are being used for example I do not need these to exist in my farm. This applies to the services running as well, it is not unlikely to see my SharePoint farm with many services set to “stopped”.

8. SharePoint isn’t just database, it’s also a lot of IIS

There are number of things you can do to improve both management and speed of your SharePoint at the server and IIS level. Open up your Sites and Application Pools and see if you can’t add more running processes for them if you have the CPU. You can also enable BlobCache by going into the web.config file of your Web Applications and turning it on by setting it to True.

Explore these settings to set what makes sense for you and your current needs. For example, I sometimes set the recycling of application pools at a specific time in the early morning to make sure I can schedule a warm script soon after that.

9. The concerns of migration of SharePoint with Database Up-gradation

Taking in consideration the migration method, Microsoft did an amazing job. As compared to the previous migrations from 2007 to 2010, we can now move on to SharePoint 2013 and save our databases in 2010 mode. We can do this by Site Collection along with deferred Site Collection upgrade scenario.

However, It is not beneficial to use the Database Attach upgrade scenario over the the new SharePoint 2013 feature “Shredded Storage” on existing content. Shredded Storage will not save space considering the existing content but will help in case of future content created with Share-point.

Tools like Share-gate will allow you to benefit fully from Shredded Storage

obviously during your SharePoint migration but you can use whatever you want to migrate to SharePoint 2013, but be aware of the impacts it will have on your performance.

About The Author

Leave a Reply