As SharePoint user adoption increases, so does the amount of
data that must be stored in SharePoint. Although rapid adoption
indicates effective collaboration, this content explosion can
easily outstrip SharePoint's basic storage configuration.
This causes an outcry both from end users, who complain about
SharePoint's slow performance, and SQL Server DBAs, who protest
that SharePoint is taking up too much expensive server space and
processing power. All of this can lead to dissatisfaction with a
once-loved platform.
Here are five storage-related issues in SharePoint that can kill
performance, with tips on how to resolve or prevent them.
Problem #1: Unstructured data
takeover. The primary document types stored in SharePoint
are PDFs, Microsoft Word and PowerPoint files, and large Excel
spreadsheets. These documents are usually well over a
megabyte.
SharePoint saves all file contents in SQL Server as unstructured
data, otherwise known as Binary Large Objects (BLOBs). Having many
BLOBs in SQL Server causes several issues. Not only do they take up
lots of storage space, they also use server resources.
Because a BLOB is unstructured data, any time a user accesses a
file in SharePoint, the BLOB has to be reassembled before it can be
delivered back to the user - taking extra processing power and
time.
Solution: Move BLOBs out of SQL Server and into a
secondary storage location - specifically, a higher density storage
array that is reasonably fast, like a file share or network
attached storage (NAS).
Problem #2: An avalanche of large media.
Organizations today use a variety of large files such as videos,
images, and PowerPoint presentations, but storing them in
SharePoint can lead to performance issues because SQL Server isn't
optimized to house them.
Media files, especially, cause issues for users because they are
so large and need to be retrieved fairly quickly. For example, a
video file may have to stream at a certain rate, and applications
won't return control until the file is fully loaded. As more of
this type of content is stored in SharePoint, it amplifies the
likelihood that users will experience browser timeout, slow Web
server performance, and upload and recall failures.
Solution: For organizations that make SharePoint
"the place" for all content large and small, use third-party tools
specifically designed to facilitate the externalization of large
media storage and organization. This will encourage user adoption
and still allow you to maintain the performance that users
demand.
Problem #3: Old and unused files hogging
valuable SQL Server storage. As data ages, it usually
loses its value and usefulness, so it's not uncommon for the
majority of SharePoint content to go completely unused for long
periods of time. In fact, more than 60 to 80 percent of content in
SharePoint is either unused or used only sparingly in its lifespan.
Many organizations waste space by applying the same storage
treatment for this old, unused data as they do for new, active
content, quickly degrading both SQL Server and SharePoint
performance.
Solution: Move less active and relevant
SharePoint data to less expensive storage, while still keeping it
available to end users via SharePoint. In the interface, it helps
to move these older files to different parts of the information
architecture, to minimize navigational and search clutter.
Similarly, we can "unclutter" the storage back end.
A third-party tool that provides tiered storage will enable you to
easily move each piece of SharePoint data through its life cycle to
various repositories, such as direct attached storage, a file
share, or even the cloud. With tiered storage, you can keep your
most active and relevant data close at hand, while moving the rest
to less expensive and possibly slower storage, based on the
particular needs of your data set.
Problem #4: Lack of scalability. As SharePoint
content grows, its supporting hardware can become underpowered if
growth rates weren't accurately forecasted. Organizations unable to
invest in new hardware need to find alternatives that enable them
to use best practices and keep SharePoint performance optimal.
Microsoft guidance suggests limiting content databases to 200GB
maximum unless disk subsystems are tuned for high input/output
performance. In addition, huge content databases are cumbersome for
backup and restore operations.
Solution: Offload BLOBs to the file system - thus
reducing the size of the content database. Again, tiered storage
will give you maximum flexibility, so as SharePoint data grows, you
can direct it to the proper storage location, either for pure
long-term storage or zippy immediate use.
It also lets you spread the storage load across a wider pool of
storage devices. This approach keeps SharePoint performance high
and preserves your investment in existing hardware by prolonging
its useful life in lieu of buying expensive hardware. It's simpler
to invest in optimizing a smaller SQL Server storage core than a
full multi-terabyte storage footprint, including archives.
Problem #5: Not leveraging Microsoft's data
externalization features. Microsoft's recommended
externalization options are Remote BLOB Storage (RBS), a SQL Server
API that enables SharePoint 2010 to store BLOBs in locations
outside the content databases, and External BLOB Storage (EBS), a
SharePoint API introduced in SharePoint 2007 SP1 and continued in
SharePoint 2010.
Many organizations haven't yet explored these externalization
capabilities, however, and are missing out on significant storage
and related performance benefits. However, native EBS and RBS
require frequent T-SQL command-line administration, and lack
flexibility.
Solution: Use a third-party tool that works with
Microsoft's supported APIs, RBS, and EBS, and gives administrators
an intuitive interface through SharePoint's native Central
Administration to set the scope, rules and location for data
externalization.
In each of these five problem areas, you can see that offloading
the SharePoint data to more efficient external storage is clearly
the answer. Microsoft's native options, EBS and RBS, only add to
the complexity of managing SharePoint storage, however, so the best
option to improve SharePoint performance and reduce costs is to
select a third-party tool that integrates cleanly into SharePoint's
Central Administration. This would enable administrators to take
advantage of EBS and RBS, choosing the data they want to
externalize by setting the scope and rules for externalization and
selecting where they want the data to be stored.
Chris McNulty is a strategic product manager and
evangelist for SharePoint Solutions at Quest Software. He is a
MCTS, MCSE, and a member of the Microsoft Solutions Advocate and
MVTSP programs. A frequent speaker at events around the world, he's
the author of the SharePoint 2010 Consultant's Handbook,
and other books, and writes at SharePoint
For All and the KnowPoint blog.
Check out our resource centre for more
SharePoint content from Chris McNulty and other SharePoint
specialists!
Gain instant access to our SharePoint content by following us on
twitter or facebook.