過去事例から学ぶ sharepoint パフォーマンス問題とその対策
DESCRIPTION
TRANSCRIPT
![Page 1: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/1.jpg)
過去事例から学ぶ
SharePoint パフォーマンス問題とその対策
Community Open Day 2012
荒川 剛史 日本マイクロソフト株式会社 コマーシャルテクニカルサポート オフィスシステムサーバー サポートエスカレーションエンジニア
![Page 2: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/2.jpg)
Agenda
• 過去事例の紹介その1「SQL ブロッキング問題」
• 過去事例の紹介その2「セキュリティ クロール問題」
• 問題を未然に防止するための Tips
![Page 3: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/3.jpg)
過去事例の紹介その1
SQL ブロッキング問題
![Page 4: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/4.jpg)
ある日の朝・・・
• 社長:いつものように役員向けのサイト を開いたら、真っ白なページのまま固まってしまった!
• 管理者:複数のユーザーで同様の事象が報告されているようです。 ・・・想定外です。
![Page 5: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/5.jpg)
想定される原因
• ハードウェア障害
• ネットワーク障害 (通信、DNS 等)
• 認証の問題 (DC 障害等)
• IIS 障害 (w3wp.exe)
• カスタム ソリューション (Web パーツ等)
• SQL Server 障害 (デッドロック、ブロッキング等)
問題の切り分けポイントについて考える
![Page 6: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/6.jpg)
SQL ブロッキングの問題
• 一般的にパフォーマンス問題の原因となる可能性が最も高い
• ユーザーのオペレーションとデータ量に依存
• 一度に大量のレコードに対して更新を行うような処理 (ワークフローや SharePoint 内部動作) に注意
問題の傾向
![Page 7: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/7.jpg)
SQL ブロッキングの問題 ロック エスカレーションの仕組み
SQL Server
SQL ステートメント
大量の行ロックを生成
![Page 8: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/8.jpg)
SQL ブロッキングの問題 ロック エスカレーションの仕組み
SQL Server
SQL ステートメント
テーブルロックにエスカレーション
![Page 9: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/9.jpg)
SQL ブロッキングの問題 ロック エスカレーションの仕組み
SQL Server
SQL ステートメント
テーブルロックにエスカレーション
メモリの節約
![Page 10: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/10.jpg)
SQL ブロッキングの問題 ロック エスカレーションの仕組み
SQL Server
SQL ステートメント
テーブルロックにエスカレーション
後続の処理
ロック解除まで待たされる (ブロッキング)
![Page 11: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/11.jpg)
SQL ブロッキングの問題
• デッドロックとは異なりブロック元の処理の完了を待てばいずれは利用可能
• SQL Server 側でデッドロックが検出されない為ロールバックされない
デッドロックとの違い
![Page 12: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/12.jpg)
SQL ブロッキングの問題
• ブロックの要因となり得る処理を中断する
• IIS リセット
• タイマー サービスの再起動
• トレースフラグ 1224 の設定
実際に発生した場合の対処
![Page 13: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/13.jpg)
SQL ブロッキングの問題
ロックエスカレーションの条件
• 使用メモリ (既定:データベース エンジンによって使用されるメモリの 24%)
• ロックの数 (既定:1テーブルで 5000 個のロック)
詳細については以下の資料参照
ロック エスカレーションの仕組み
MSDN ライブラリ:ロックのエスカレーション (データベース エンジン) http://msdn.microsoft.com/ja-jp/library/ms184286(v=SQL.105).aspx
![Page 14: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/14.jpg)
SQL ブロッキングの問題
1) [Microsoft SQL Server 2008] -> [構成ツール] -> [SQL Server 構成マネージャ]を起動します。
2) SQL Server のサービス -> SQL Server (MSSQLSERVER) を右クリックし、プロパティを開きます。
3) 詳細設定タブ -> 起動時のパラメータの先頭に、次の文字列を追加します。
-T1224;
4) OK を押して完了します。
5) SQL Server を再起動します。
トレースフラグ 1224 の設定
MSDN ライブラリ:トレース フラグ (Transact-SQL) http://msdn.microsoft.com/ja-jp/library/ms188396(v=sql.105).aspx
![Page 15: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/15.jpg)
SQL ブロッキングの問題
• 一つのリストに格納するアイテム数を制限する (≦ 5000 件目安)
• 一度に大量のアイテムを更新するワークフローを実装しない
• 大量のデータを扱うときはアーカーブ用のサイトとデータ更新用のサイトを分ける
• サイト コレクションごとにコンテンツ データベースを分割する
問題を未然に防止するための対策
TechNet ライブラリ:大きなリストを設計し、リストのパフォーマンスを最大限に高める (SharePoint Server 2010) http://msdn.microsoft.com/ja-jp/library/ms188396(v=sql.105).aspx
![Page 16: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/16.jpg)
SQL ブロッキングの問題
Demo
![Page 17: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/17.jpg)
![Page 18: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/18.jpg)
過去事例の紹介その2
セキュリティ クロールの問題
![Page 19: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/19.jpg)
ある日の午後・・・
• 社長:今朝自分が投稿した社長ブログの記事が検索結果にヒットしない。どうなってるんだ!!
• 管理者:本来であれば1時間程度で完了するはずの増分クロールに10時間以上かかっています。・・・想定外です。
![Page 20: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/20.jpg)
想定される原因
• クロール停止 (プロパゲート失敗、インデックス破損、検索サービスハング等)
• ネットワーク障害 (プロキシタイムアウト等)
• フルクロール (コンテンツ DB アタッチ、デタッチ)
• 既知の不具合 (KB956056, KB930887 等)
• セキュリティ クロール
問題の切り分けポイントについて考える
![Page 21: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/21.jpg)
セキュリティ クロールの問題
• 一般的に増分クロール パフォーマンス問題の原因となる可能性が最も高い
• ユーザーのオペレーションとデータ量に依存
• コンテンツ量が多く、SharePoint サイトの権限変更を頻繁に行う環境では要注意
問題の傾向
![Page 22: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/22.jpg)
セキュリティ クロールの問題 セキュリティ クロールの仕組み
![Page 23: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/23.jpg)
セキュリティ クロールの問題 セキュリティ クロールの仕組み
アクセス権が親から継承されたコンテンツ
![Page 24: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/24.jpg)
セキュリティ クロールの問題 セキュリティ クロールの仕組み
親のアクセス権の変更
![Page 25: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/25.jpg)
セキュリティ クロールの問題 セキュリティ クロールの仕組み
継承されたアクセス権も変更される
![Page 26: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/26.jpg)
セキュリティ クロールの問題 セキュリティ クロールの仕組み
変更されたコンテンツのアクセス権情報のみを内部クロール
![Page 27: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/27.jpg)
セキュリティ クロールの問題
• 検索管理画面から見たとき、クロールのステータスが「増分クロール中」となっている。
• mssearch.exe プロセスを見る限り、CPU 使用率は変動しているのでどうやら動作しているように見える。
• クロール ログを見ても殆ど何も更新されていないように見える。
• IIS ログでクローラーがコンテンツを取得した形跡が無い。
現象発生時の特徴
![Page 28: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/28.jpg)
セキュリティ クロールの問題
• パフォーマンスカウンタの確認
• クロール履歴の確認
• 診断ログの確認
クロールが正常に動作しているかの判断
![Page 29: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/29.jpg)
セキュリティ クロールの問題
パフォーマンス カウンタの確認
• Office Server Search Gatherer オブジェクト
• Document Entries カウンタ
• Documents Successfully Filtered カウンタ
※MOSS 2007 では Office Server Search Gatherer オブジェクトの Document Entries カウンタおよび Documents Successfully Filtered カウンタ
クロールが正常に動作しているかの判断
![Page 30: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/30.jpg)
セキュリティ クロールの問題
パフォーマンス カウンタの確認
クロールが正常に動作しているかの判断
![Page 31: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/31.jpg)
セキュリティ クロールの問題
クロール履歴の確認
クロールが正常に動作しているかの判断
![Page 32: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/32.jpg)
セキュリティ クロールの問題
診断ログの確認
--- 診断ログの例 ---
04:21.0 mssearch.exe (0x092C) 0x09A8 Search Server Common GathererSql 0 Medium CGatherer::CommitTransaction succeeded, URL sts3://site/siteurl=/siteid={ee7f629c-a36c-4327-b5f1-0652878fa4a3}/weburl=docs/webid={ba2b56ba-27d1-4cfb-90b4-e638d3f3b0ed}/listid={4d587236-3886-440f-a0d7-0d33622724cd}/folderurl=/itemid=27, CrawlID 51, SourceDocID 229 - File:d:¥office¥source¥search¥search¥gather¥server¥gatherobj.cxx Line:9449
------
※既定では上記ログは出力されないため、サーバーの全体管理の診断ログの設定において「MS Search 詳細トレース」のトレース ログのレベルを「中」に変更する必要がある。
クロールが正常に動作しているかの判断
TechNet ブログ:セキュリティ クロールについて http://blogs.technet.com/b/sharepoint_support/archive/2011/10/14/3459245.aspx
![Page 33: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/33.jpg)
セキュリティ クロールの問題
• アクセス権の付与を AD グループ経由で実施する
• コンテンツ ソースを分割して異なるスケジュールでクロールする
• 大量のデータを扱うときはアーカーブ用のサイトとデータ更新用のサイトを分ける
問題を未然に防止するための対策
TechNet ライブラリ:クロールとフェデレーションの計画を立てる (SharePoint Server 2010) http://technet.microsoft.com/ja-jp/library/cc262926.aspx
![Page 34: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/34.jpg)
セキュリティ クロールの問題
Demo
![Page 35: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/35.jpg)
![Page 36: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/36.jpg)
まとめ
問題を未然に防止するために
![Page 37: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/37.jpg)
問題を未然に防止するために 運用環境における潜在的な問題を探る
ベストプラクティスに沿ったキャパシティプランニング
ユーザー数
コンテンツに加える変更とその影響
ハードウェア性能
パフォーマンスベースライン
コンテンツ量
![Page 38: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/38.jpg)
セキュリティ クロールの問題
- OS 全般
• Memory
• Process
• Processor
• System
• PhysicalDisk
• Network Interface
• Server
標準パフォーマンスカウンター
- SharePoint 関連
• OSS Search Gatherer
• OSS Search Gatherer Database
• ASP.NET
• ASP.NET Applications
• .NET CLR Memory
- SQL Server 関連
• SQLServer:Buffer Manager
• SQLServer:Memory Manager
• SQLServer:Databases
• SQLServer:SQL Statistics
• SQLServer:General Statistics
![Page 39: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/39.jpg)
問題を未然に防止するために
• 1コンテンツDBあたり200GBを目安にする =>これを超える場合はデータを適度に静的に維持するよう心掛ける
• 一つのリストに5000件を超えるアイテムを格納しない =>これを超える場合は一度に大量のコンテンツに対する変更を加えないように工夫する
• コンテンツのアクセス権に 1000 を超えるユーザー、グループを付与しない =>可能な限り AD グループを経由してアクセス権を付与するように工夫する
コンテンツ量のガイドライン
![Page 40: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/40.jpg)
問題を未然に防止するために
• コンテンツ量が多い環境では事前にトレースフラグ 1224 の設定を検討する
• アーカイブ サイトの活用 =>データが静的に維持されるアーカイブ サイトを計画する
• コンテンツソースを適切に分割する =>サイト コレクション単位で分割が可能
運用のガイドライン
![Page 41: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/41.jpg)
問題を未然に防止するために 参考資料
Technet ライブラリ:SharePoint Server 2010 の容量管理: ソフトウェアの境界と制限 http://technet.microsoft.com/ja-jp/library/cc262787.aspx Technet ライブラリ:パフォーマンスと容量のテスト結果と推奨事項 (SharePoint Server 2010) http://technet.microsoft.com/ja-jp/library/ff608068.aspx Technet ライブラリ:パフォーマンスと容量に関する技術的なケース スタディ (SharePoint Server 2010) http://technet.microsoft.com/ja-jp/library/cc261716.aspx Technet ライブラリ:SharePoint 2010 による数テラバイトのコンテンツ データベースの管理 (ホワイト ペーパー) http://technet.microsoft.com/ja-jp/library/hh307867.aspx
![Page 42: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/42.jpg)
ある日の夕方・・・
• 社長:今日は色々とトラブルが起きたが、今後はこのような事が無いよう、きちんと対策するように。・・・じゃ、とりあえず飲みに行く?
• 管理者:・・・想定外です。
![Page 43: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/43.jpg)
Q&A
Q&A
![Page 44: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/44.jpg)
Thank you!!
ありがとうございました!! ご意見、ご感想、その他ご不明点はこちらまで!!
tarakawa@microsoft.com
想定外のご相談もOK!!
![Page 45: 過去事例から学ぶ SharePoint パフォーマンス問題とその対策](https://reader035.vdocuments.net/reader035/viewer/2022081716/546ff84aaf7959d0528b4600/html5/thumbnails/45.jpg)