Forum Discussion

VeeExcelLearn's avatar
VeeExcelLearn
Brass Contributor
Oct 04, 2022
Solved

SharePoint Performance - Thinking About the Future

Not an expert by any means.  I built a SharePoint site and its growing.   Like almost all SharePoint sites it has a Document Library which contain 2 Document Libraries that are bigger, there is more in there but these are the biggest.  What I mean bigger is that each of them contain about a 1000 employment PDF contracts, average size of each file is 250KB.   I also have a SharePoint lists that are approaching 1000 lines and growing.  At what point should I be thinking about migrating to like Dataverse or other connections to make this as efficient as possible long term. Do I still have a long way to go or should I be worried?

  • VeeExcelLearn I don't see any urgent need to move to migrate data to Dataverse. I have several lists with about 15000 items in them that run perfectly well with a combination of indexed columns and filtered list views. SharePoint lists and libraries can store very large amounts of data - 31 million items! - so that's not the problem. The problem is displaying large amounts of data because the list view threshold is set at 5000 items and after that you can/will end up with error messages.

     

    With your document libraries I would probably look to split them into separate libraries . I would recommend you add indexes to your lists and libraries from the list/library settings which will improve performance and help with the list view threshold. Microsoft have said this:

     

    "An indexed column in SharePoint is used to improve the performances of the list or library view loading. If your list contains  thousand of records, and you often query (filter or sort) by a given column, you can index that column. That way, when we display a filtered/sorted view (based on this column), SharePoint does not have to loop through all the items to decide which ones to display first, it can quickly get the items or rows it needs. - This is the beauty of the indexing concept in SharePoint.
     
    Other than just performance - another reason for indexing a column is - if your list/library contains more than 5000 items and if your query just return a smaller result, even 1 row, we will get a list view threshold error if we do not index a column which we are querying."

     

    There quite a few articles across the web about the list view threshold, for example https://www.spguides.com/sharepoint-list-view-threshold/

     

    Also, create views which filter the list down to less than 5000 items.

     

    Modern SharePoint lists are far better than classic with all this because they load the next set of data as you scroll, but taking the precautions above will help to make everything run smoothly.

     

    Rob
    Los Gallardos
    Intranet, SharePoint and Power Platform Manager (and classic 1967 Morris Traveller driver)

  • VeeExcelLearn You are far away from SharePoint online limits for lists and libraries. Check below Microsoft official documentations which should help you to understand SharePoint online limits and how to manage large lists/libraries in SharePoint:

    1. SharePoint limits 
    2. Restrictions and limitations in OneDrive and SharePoint 
    3. Manage large lists and libraries 

    Please click Mark as Best Response & Like if my post helped you to solve your issue. This will help others to find the correct solution easily. It also closes the item. If the post was useful in other ways, please consider giving it Like.

  • RobElliott's avatar
    RobElliott
    Silver Contributor

    VeeExcelLearn I don't see any urgent need to move to migrate data to Dataverse. I have several lists with about 15000 items in them that run perfectly well with a combination of indexed columns and filtered list views. SharePoint lists and libraries can store very large amounts of data - 31 million items! - so that's not the problem. The problem is displaying large amounts of data because the list view threshold is set at 5000 items and after that you can/will end up with error messages.

     

    With your document libraries I would probably look to split them into separate libraries . I would recommend you add indexes to your lists and libraries from the list/library settings which will improve performance and help with the list view threshold. Microsoft have said this:

     

    "An indexed column in SharePoint is used to improve the performances of the list or library view loading. If your list contains  thousand of records, and you often query (filter or sort) by a given column, you can index that column. That way, when we display a filtered/sorted view (based on this column), SharePoint does not have to loop through all the items to decide which ones to display first, it can quickly get the items or rows it needs. - This is the beauty of the indexing concept in SharePoint.
     
    Other than just performance - another reason for indexing a column is - if your list/library contains more than 5000 items and if your query just return a smaller result, even 1 row, we will get a list view threshold error if we do not index a column which we are querying."

     

    There quite a few articles across the web about the list view threshold, for example https://www.spguides.com/sharepoint-list-view-threshold/

     

    Also, create views which filter the list down to less than 5000 items.

     

    Modern SharePoint lists are far better than classic with all this because they load the next set of data as you scroll, but taking the precautions above will help to make everything run smoothly.

     

    Rob
    Los Gallardos
    Intranet, SharePoint and Power Platform Manager (and classic 1967 Morris Traveller driver)

Resources