SharePointが遅い原因と解決策を徹底解説|パフォーマンス改善の完全ガイド

プログラミング・IT

「SharePointが遅くて仕事にならない」「ページの読み込みに時間がかかりすぎる」「ファイルのダウンロードが進まない」
こうしたSharePointのパフォーマンス問題に悩まされていませんか。

この記事では、SharePointが遅くなる主な原因から、具体的な解決策、予防のためのベストプラクティスまで詳しく解説します。

スポンサーリンク

SharePointが遅い問題の影響

SharePointのパフォーマンス問題は、単なる不便さ以上の影響を及ぼします。

ビジネスへの影響

  • 生産性の低下: ユーザーが待ち時間に費やす時間が増加
  • ユーザー離れ: SharePointの利用率が下がる
  • 業務の停滞: 重要な情報へのアクセスが遅れる
  • コスト増加: ITサポートへの問い合わせが増える

統計データ:

  • ページ読み込みが3秒を超えると、ユーザーの離脱率が大幅に上昇
  • SharePointページの最も遅い1%は、5,000ミリ秒以上かかる

SharePointが遅くなる主な原因

SharePointのパフォーマンス問題は、複数の要因が組み合わさって発生します。

1. ネットワークの問題

ネットワークは、SharePointパフォーマンスに最も影響を与える要素です。

インターネット回線の帯域不足(SharePoint Online)

症状:

  • ページ読み込みが全体的に遅い
  • ファイルのアップロード・ダウンロードに時間がかかる
  • 多数のユーザーが同時にアクセスすると極端に遅くなる

原因:

  • インターネット回線の帯域が不足
  • 利用者数に対して回線速度が不十分
  • ピーク時間帯のトラフィック集中

確認方法:

  • インターネット速度テストを実施
  • 最低でも5~10Mbpsの帯域が必要

Wi-Fi環境の問題

症状:

  • Wi-Fi接続時のみ遅い
  • 有線LAN接続だと改善される

原因:

  • 古い規格のWi-Fiルーター(Wi-Fi 4など)
  • Wi-Fi電波が弱い
  • 同時接続数が多い

解決策:

  • Wi-Fi 6対応ルーターへの更新
  • Wi-Fiアクセスポイントの増設
  • 有線LAN接続への切り替え

VPN接続による遅延

症状:

  • VPN接続時のみ極端に遅い
  • 直接接続だと問題ない

原因:

  • VPNの暗号化処理によるオーバーヘッド
  • VPNサーバーの負荷が高い
  • VPN経路の最適化不足

解決策:

  • VPN分割トンネリングの利用
  • Microsoft 365への直接接続を許可
  • VPNサーバーの増強

社内ネットワークインフラの問題

原因:

  • 古いネットワークケーブルや機器
  • ネットワークスイッチの処理能力不足
  • トラフィックの混雑

解決策:

  • ネットワーク診断の実施
  • 古いケーブル・機器の交換
  • VLANの導入
  • トラフィックシェーピング

2. 5000アイテム閾値の問題

SharePointには「5000アイテム閾値」という制限があります。

5000アイテム閾値とは

定義:
リストまたはライブラリのビューで一度に表示できるアイテムの上限が5,000件です。

影響:

  • 5,000件を超えるとビューの表示が極端に遅くなる
  • クエリがタイムアウトする
  • エラーメッセージが表示される

解決策

方法1: ビューにフィルターを適用

  1. ビューの編集を開く
  2. フィルター条件を追加
  3. 結果が5,000件以下になるように設定

例:

  • 「作成日が過去6ヶ月以内」のフィルター
  • 「ステータスが進行中」のフィルター

方法2: インデックス列を作成

  1. 頻繁にフィルターする列を選択
  2. 列の設定→「インデックス付き列」を有効化
  3. ビューのフィルター条件で、インデックス付き列を最初に指定

方法3: フォルダーで整理

  • ファイルを年度別・部門別などのフォルダーに分類
  • 各フォルダー内が5,000件以下になるように管理

方法4: アーカイブ

  • 古いアイテムを別のライブラリに移動
  • または削除して履歴を保持

3. Webパーツの過剰な使用

ページに大量のWebパーツを配置すると、読み込みが遅くなります。

原因

  • サーバー側の処理時間が増加
  • クライアント側のレンダリング時間が増加
  • 各Webパーツが個別にデータを取得

症状

  • ページの初回読み込みが遅い
  • スクロールがカクカクする
  • ブラウザがフリーズする

解決策

1. Webパーツの数を制限

推奨:

  • 1ページあたり5~10個程度
  • 複雑なWebパーツは3~5個まで

対策:

  • 必要なWebパーツのみ配置
  • 情報を複数ページに分散
  • タブやアコーディオンで情報を折りたたむ

2. iFrame Webパーツを制限

iFrame Webパーツは特に重い処理です。

推奨:

  • 1ページあたり最大3個まで
  • YouTube、Twitter、Jira、Power Appsなどの外部サービス

理由:

  • 外部サービスのパフォーマンスに依存
  • 各iFrameが独立して読み込まれる

3. 非表示のWebパーツを削除

SharePointページには、非表示のWebパーツが残っている場合があります。

確認方法:

  1. ページを編集モードにする
  2. Webパーツの数を数える
  3. 表示されているWebパーツと比較

対処:

  • 不要なWebパーツを完全に削除
  • 非表示ではなく削除する

4. 画像の最適化不足

大きな画像ファイルは、ページ読み込みを遅くします。

問題のある画像

  • 高解像度の画像を圧縮せずに使用
  • 数MB以上のファイルサイズ
  • 適切な形式でない(PNGをJPEGにすべき、など)

解決策

1. 画像の圧縮

無料ツールで画像を圧縮:

  • TinyPNG
  • Squoosh
  • ImageOptim

推奨サイズ:

  • ヒーロー画像: 200KB以下
  • サムネイル: 50KB以下
  • アイコン: 20KB以下

2. 適切な画像形式を選択

用途推奨形式理由
写真JPEGファイルサイズが小さい
ロゴ・アイコンPNG透明背景が可能
シンプルな図形SVG拡大しても劣化しない

3. レスポンシブ画像

  • 異なるデバイス向けに最適化されたサイズを用意
  • SharePointの画像レンディションを活用

5. ナビゲーションの種類

SharePointには3種類のナビゲーションがあり、パフォーマンスに差があります。

ナビゲーションの種類と特徴

1. 構造ナビゲーション(Structure Navigation)

メリット:

  • 設定が簡単
  • サブサイトが自動的に追加される
  • セキュリティトリミング対応

デメリット:

  • 複雑なサイト構造で動作不良
  • 非常に遅い

2. 管理ナビゲーション(Managed Navigation)

メリット:

  • メンテナンスが簡単
  • 手動で管理できる

デメリット:

  • セキュリティトリミングされない
  • 並び替えが面倒

3. 検索駆動型ナビゲーション(Search-driven Navigation)

メリット:

  • 最も高速
  • 複雑なナビゲーションでも快適
  • セキュリティトリミング対応

デメリット:

  • 設定が複雑(マスターページのカスタマイズが必要)

推奨

  • 小規模サイト: 管理ナビゲーション
  • 大規模・複雑なサイト: 検索駆動型ナビゲーション
  • 構造ナビゲーション: パフォーマンス問題が発生しやすいため避ける

6. カスタマイズの問題

カスタマイズは、SharePointのパフォーマンスを大幅に低下させる原因です。

問題のあるカスタマイズ

1. 非最適化されたカスタムコード

症状:

  • ページ読み込みが異常に遅い
  • 特定のページでのみ発生

原因:

  • 過剰なデータベースクエリ
  • 非効率的なループ処理
  • メモリリーク

解決策:

  • コードレビューの実施
  • パフォーマンステストの実施
  • 非同期処理の活用

2. 古いJavaScript/CSSカスタマイズ

原因:

  • SharePoint 2010や2013用のコードがモダンSharePointで動作不良
  • サポートされていないAPI使用

解決策:

  • SharePoint Framework(SPFx)への移行
  • 古いカスタマイズの削除

3. 過剰なクライアント側スクリプト

原因:

  • 大量のJavaScriptやCSS
  • 最小化されていないスクリプト

解決策:

  • スクリプトの最小化(Minify)
  • 不要なスクリプトの遅延読み込み
  • ブラウザキャッシュの活用

7. データ構造の問題

データの整理方法がパフォーマンスに影響します。

問題

1. 非構造化データの過剰

  • 重複ファイル
  • 分類されていないファイル
  • メタデータ不足

解決策:

  • メタデータタグの実装
  • コンテンツタイプの活用
  • 定期的なデータクリーンアップ

2. 古いデータの放置

問題:

  • データベースの肥大化
  • 検索インデックスの肥大化

解決策:

  • 定期的なデータクリーンアップ
  • アーカイブポリシーの策定
  • 不要ファイルの削除

3. 大きなリストの非最適化クエリ

解決策:

  • インデックス列の使用
  • フィルター付きビュー
  • フォルダー構造の活用

8. ブラウザとクライアントの問題

クライアント側の環境もパフォーマンスに影響します。

ブラウザの問題

1. 古いブラウザ

推奨ブラウザ:

  • Microsoft Edge(最新版)
  • Google Chrome(最新版)
  • Safari(最新版)

理由:

  • Microsoft 365向けに最適化
  • モダンWeb標準のサポート

2. ブラウザキャッシュの問題

症状:

  • 古い情報が表示される
  • ページが正しく表示されない

解決策:

  1. ブラウザのキャッシュをクリア
  2. スーパーリロード(Ctrl + F5)

クライアントPCのスペック

推奨スペック:

  • メモリ: 8GB以上
  • CPU: デュアルコア以上
  • ストレージ: SSD

理由:

  • SharePointは多くの処理をクライアント側で実行
  • 低スペックPCでは動作が遅い

9. データベースの問題(オンプレミス)

SharePointオンプレミスの場合、SQL Serverのパフォーマンスが重要です。

一般的な問題

1. SQLサーバーのリソース不足

確認方法:

  • タスクマネージャーでCPU・メモリ使用率を確認
  • 80%以上の使用率が継続している場合は不足

解決策:

  • サーバーのメモリ増設
  • CPUのアップグレード
  • SSDの導入

2. データベース設定の問題

確認項目:

  • 復旧モデル: Fullに設定
  • 並列処理の最大次数(MAXDOP): 1に設定(SharePoint推奨)
  • 最小サーバーメモリ: デフォルトの20億は多すぎ

3. データベースメンテナンス不足

必要な作業:

  • インデックスの再構築
  • 統計情報の更新
  • データベースの整合性チェック

10. SharePointスロットリング

SharePointは、システムの健全性を保つためにスロットリングを実施します。

スロットリングとは

一時的にSharePointの使用を制限する機能です。

トリガー:

  • 大量のファイルを連続アップロード
  • 大量のデータを連続ダウンロード
  • 短時間に大量のAPIリクエスト

症状

  • アップロード/ダウンロードが突然遅くなる
  • エラーメッセージが表示される
  • 一時的にアクセスできなくなる

解決策

1. 処理を分散

  • 大量のデータ処理を時間をあけて実行
  • 夜間や休日に大量アップロードを実施

2. SharePoint移行ツール(SPMT)の使用

  • 大量データ移行時に使用
  • スロットリングに配慮した設計

3. API呼び出しの最適化

  • バッチ処理の活用
  • リトライロジックの実装

パフォーマンス診断ツール

SharePointのパフォーマンス問題を診断するツールを紹介します。

1. SharePoint用ページ診断ツール

Microsoftが提供する無料のブラウザ拡張機能です。

対応ブラウザ

  • Microsoft Edge
  • Google Chrome

機能

  • ページのパフォーマンス分析
  • 問題点の特定
  • 改善提案の表示

使用方法

  1. ブラウザ拡張機能をインストール
  2. SharePointページを開く
  3. 拡張機能アイコンをクリック
  4. 「Start」をクリック
  5. 分析結果を確認

確認できる項目

  • ページ読み込み時間
  • Webパーツのパフォーマンス
  • 画像の最適化状況
  • キャッシュの利用状況
  • ネットワークリクエスト

2. ブラウザの開発者ツール(F12)

すべてのモダンブラウザに搭載されています。

使用方法

  1. SharePointページを開く
  2. F12キーを押す
  3. 「ネットワーク」タブを選択
  4. ページをリロード
  5. 各ファイルの読み込み時間を確認

重要な指標

SPRequestDuration:

  • レスポンスヘッダーに含まれる
  • サーバー側の処理時間(ミリ秒)
  • 長い場合はサーバー側の問題

X-SharePointHealthScore:

  • サーバーの正常性スコア
  • 0: 最良
  • 10: 最悪

3. Microsoft 365管理センター

SharePoint Online全体のパフォーマンスを確認できます。

確認できる項目

  • サービスの正常性
  • インシデント情報
  • パフォーマンス傾向

具体的な改善手順

SharePointのパフォーマンスを改善する具体的な手順を紹介します。

ステップ1: 現状の把握

1-1. パフォーマンス測定

  • SharePoint用ページ診断ツールで分析
  • 読み込み時間を記録
  • 問題のあるページを特定

1-2. ユーザーヒアリング

  • どのページが遅いか
  • どの操作が遅いか
  • いつから遅くなったか

ステップ2: 簡単な対策から実施

2-1. ブラウザキャッシュのクリア

  1. ブラウザの設定を開く
  2. キャッシュと Cookie をクリア
  3. ブラウザを再起動

2-2. 最新ブラウザへの更新

  • Microsoft Edge最新版を推奨
  • 自動更新を有効化

2-3. 画像の最適化

  1. 大きな画像を特定
  2. 圧縮ツールで最適化
  3. 再アップロード

ステップ3: Webパーツの最適化

3-1. Webパーツの数を減らす

  1. ページを編集モードにする
  2. 必要性の低いWebパーツを削除
  3. 情報を複数ページに分散

3-2. 非表示Webパーツの削除

  1. 編集モードでWebパーツを数える
  2. 非表示のWebパーツを特定
  3. 完全に削除

ステップ4: ナビゲーションの最適化

4-1. 構造ナビゲーションを避ける

  • 管理ナビゲーションに切り替え
  • または検索駆動型ナビゲーション

4-2. ナビゲーション項目を制限

  • 表示する項目を10個以下に
  • サブレベルは2階層まで

ステップ5: データの整理

5-1. 5000アイテム問題の解決

  1. 大きなライブラリを特定
  2. フィルター付きビューを作成
  3. インデックス列を追加

5-2. 古いデータのアーカイブ

  1. アーカイブポリシーを策定
  2. 2年以上前のデータを別ライブラリに移動
  3. 定期的にクリーンアップ

ステップ6: ネットワークの確認

6-1. インターネット速度テスト

  • 速度テストサイトで測定
  • 5~10Mbps以上を確保

6-2. Wi-Fi環境の改善

  • 有線LAN接続に切り替え
  • またはWi-Fiルーターを更新

ステップ7: カスタマイズの見直し

7-1. 古いカスタマイズの削除

  1. 使用していないカスタマイズを特定
  2. 削除または無効化
  3. パフォーマンスの変化を確認

7-2. カスタムコードの最適化

  • 専門家によるコードレビュー
  • SPFxへの移行検討

ベストプラクティス

SharePointのパフォーマンスを維持するためのベストプラクティスです。

1. 設計段階での配慮

サイト設計

  • シンプルな構造を心がける
  • 深い階層構造を避ける(3階層まで)
  • 目的別にサイトを分割

ページ設計

  • 1ページ1目的
  • Webパーツは5~10個まで
  • 重い処理を避ける

2. 定期的なメンテナンス

月次

  • パフォーマンス測定
  • ユーザーフィードバック収集
  • 画像の最適化

四半期

  • データクリーンアップ
  • 不要なWebパーツの削除
  • アーカイブの実施

年次

  • サイト構造の見直し
  • カスタマイズの棚卸し
  • ナビゲーションの最適化

3. ユーザー教育

トレーニング

  • SharePointの基本操作
  • ファイル命名規則
  • フォルダー構造

ガイドライン

  • ファイルサイズの制限(例: 100MB以下)
  • 画像のアップロード前の圧縮
  • 定期的な不要ファイル削除

4. モニタリング

継続的な監視

  • パフォーマンスメトリクスの定期確認
  • ユーザーからの報告の追跡
  • サービス正常性の確認

アラート設定

  • 閾値超過時の通知
  • インシデント発生時の通知

5. CDN(コンテンツ配信ネットワーク)の活用

Microsoft 365 CDNを有効化することで、静的コンテンツの配信を高速化できます。

メリット

  • 画像やJavaScriptファイルを高速配信
  • サーバー負荷の軽減
  • グローバル展開時に効果的

有効化方法

SharePoint管理者が設定:

  1. SharePoint Online Management Shellを起動
  2. CDNを有効化するコマンドを実行
  3. パブリックCDNまたはプライベートCDNを選択

6. モダンエクスペリエンスの活用

クラシックからモダンへ

SharePoint Onlineでは、モダンエクスペリエンスの方が高速です。

理由:

  • クライアント側レンダリング
  • 最適化されたコード
  • レスポンシブデザイン

移行方法:

  1. クラシックページをモダンページに変換
  2. クラシックWebパーツをモダンWebパーツに置き換え

7. サイトコレクションのウォームアップ

初回アクセス時の遅延を軽減する方法です。

問題

  • ASP.NETのJust-In-Timeコンパイラによる初回アクセスの遅延
  • キャッシュが空の状態

解決策

ウォームアップスクリプトの実行:

  1. 毎朝5時頃に自動実行
  2. 主要ページに自動アクセス
  3. キャッシュを事前に生成

トラブルシューティング

よくある問題と解決策です。

問題1: 特定のページだけが遅い

原因

  • そのページのWebパーツが多すぎる
  • 大きな画像が含まれている
  • カスタマイズに問題がある

解決策

  1. SharePoint用ページ診断ツールで分析
  2. Webパーツを減らす
  3. 画像を最適化
  4. カスタマイズを無効化してテスト

問題2: すべてのページが遅い

原因

  • ネットワークの問題
  • サーバーの問題
  • ブラウザの問題

解決策

  1. インターネット速度テストを実施
  2. 別のネットワークで試す
  3. ブラウザキャッシュをクリア
  4. 別のブラウザで試す

問題3: ファイルのダウンロードが遅い

原因

  • ネットワークの帯域不足
  • ファイルサイズが大きい
  • SharePointスロットリング

解決策

  1. 有線LAN接続に切り替え
  2. ファイルを圧縮
  3. 時間をあけて再試行

問題4: 検索が遅い

原因

  • 検索インデックスの肥大化
  • 検索スコープが広すぎる
  • 検索クエリが複雑

解決策

  1. 検索スコープを絞る
  2. 不要なコンテンツソースを除外
  3. 検索インデックスの再構築

問題5: 午前中だけ遅い

原因

  • ピーク時間帯のトラフィック集中
  • ネットワーク帯域不足
  • 同時アクセス数が多い

解決策

  1. インターネット回線の増強
  2. 帯域管理の実施
  3. 利用時間の分散

まとめ

SharePointのパフォーマンス問題は、複数の要因が組み合わさって発生します。

重要なポイント:

  1. 主な原因を理解する
  • ネットワーク問題(最も重要)
  • 5000アイテム閾値
  • Webパーツの過剰使用
  • 画像の最適化不足
  • カスタマイズの問題
  1. 診断ツールを活用
  • SharePoint用ページ診断ツール
  • ブラウザの開発者ツール(F12)
  • SPRequestDurationの確認
  1. 段階的に改善
  • 簡単な対策から実施
  • 効果を測定
  • 継続的に改善
  1. ベストプラクティスを実践
  • シンプルな設計
  • 定期的なメンテナンス
  • ユーザー教育
  • 継続的なモニタリング
  1. 予防が重要
  • 設計段階での配慮
  • データ整理のルール化
  • 定期的なクリーンアップ

推奨される改善順序:

  1. すぐにできること(難易度:低)
  • ブラウザキャッシュのクリア
  • 画像の最適化
  • 不要なWebパーツの削除
  1. 1週間以内(難易度:中)
  • 5000アイテム問題の解決
  • ナビゲーションの最適化
  • データのアーカイブ
  1. 1ヶ月以内(難易度:高)
  • カスタマイズの見直し
  • ネットワークインフラの改善
  • サイト構造の再設計

SharePointのパフォーマンス改善は、一度やれば終わりではありません。
継続的なモニタリングと改善を行うことで、快適なSharePoint環境を維持できます。

まずは、SharePoint用ページ診断ツールで現状を把握し、簡単にできる対策から始めることをお勧めします。

参考情報

コメント

タイトルとURLをコピーしました