Your SlideShare is downloading. ×
0
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Share pointを支えるsql server2014最新情報 tokyo_公開用
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Share pointを支えるsql server2014最新情報 tokyo_公開用

1,053

Published on

Published in: Data & Analytics
0 Comments
10 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,053
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
31
Comments
0
Likes
10
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. SharePointを支える SQL Server2014最新情報 Copyright© CSK WinTechnology Corporation 2014.5.31 株式会社 CSK Winテクノロジ 技術フェロー特別役員 熊澤 幸生
  • 2. Agenda  SQL Server のこれまでと今後  SharePoint の基盤設計と設定  本稼働後の性能監視  まとめ 1Copyright© CSK WinTechnology Corporation
  • 3. 2 Copyright© CSK WinTechnology Corporation
  • 4. 自己紹介 3Copyright© CSK WinTechnology Corporation  1977年に富士通メインフレームで初めてデータベースと出会う  自動車会社 割賦販売システム用DB移行プロジェクト  1979年-1983年米国駐在 日系企業全米オンラインシステム構築に従事  データ主導型アーキテクチャを学ぶ(リポジトリによるメタデータ管理:IDMS/R)  メインフレーム上で大規模DB設計とチューニングを数多く経験  運送会社 貨物追跡システム等を構築  1994年アスキーNT(現 ㈱CSK Winテクノロジ)設立に参加  株主 : アスキー、マイクロソフト、NTT データ、CSK 、みずほ銀行  Windows Server と SQL Server に特化し、教育、構築に従事  現在  SQL Server 上のDBコンサルティングとチューニングに従事  ㈱CSK Winテクノロジ 技術フェロー特別役員  Microsoft MVP – SQL Server (2007.4 – 2015.3)  Microsoft Press インサイド SQL Server 2005 シリ-ズ監修  日本マイクロソフト株式会社 SQL Server 技術顧問 (2008.7 - )
  • 5. SQL Server の歴史  第一世代 1994 - 1998  SQL Server 4.2 / 6.0 / 6.5  Sybase 社から技術提供を受け、Windows NT Server 上に移植  2KB/ページ 16KB/エクステント ページロック  第二世代 1998 - 2005  SQL Server 7.0 / 2000  Dr. Jim Gray / Dave Campbell 氏らを迎えアーキテクチャを刷新  8KB/ページ 64KB/エクステント 行ロックの導入  SQLOSの採用  Analysis Service / ETL の提供開始 / XML のサポート  第三世代 2005 - 2012  SQL Server 2005 / 2008 / 2008R2  IA32 から x64 への移行  NUMA アーキテクチャの拡張  クエリー並列処理機能の強化  動的管理ビューによる内部動作と問題点の可視化  ラージオブジェクト格納への対応  BI 機能の強化  パラレル・データ・ウェアハウス  第四世代 2012 -  SQL Server 2012  Non Clustered ColumnStore Index  Read Only  Always On : HA DR 機能の強化  Power View : Self Service BI 機能の強化  FileTable : NTFSファイルとディレクトリの統合  SQL Server 2014  Clustered Columnstore Index  Insert / Update / Delete を透過的に処理可能  インメモリー OLTP (Hekaton)  SSD バッファープール拡張機能 Copyright© CSK WinTechnology Corporation 4
  • 6. Dr. Jim Gray 行方不明に Copyright© CSK WinTechnology Corporation 1966年カルフォルニア大学バークレー校卒業 1995年 IBM / タンデム を経てマイクロソフトに入社 1998年 DB と トランザクション処理に関して、チューリング賞を受賞 1998 年、2005 年に来日 5
  • 7. Dr. Jim Gray  2007年1月28日 サンフランシスコ沖で、ヨット “TENACIOUS” に乗り行方不明になる。 衛星写真を用いた懸命な捜査が行われる。  2012年5月16日死亡認定  He said  Disk is Tape  Disk is Flash  Memory is King 6Copyright© CSK WinTechnology Corporation
  • 8. Database Server Bricks  2006 年 2 月  Microsoft TechReady Database Server Bricks Using SQL Server 2005 x64 NUMA Dr. Jim Gray – Researcher  2007 年 8 月  日本経済新聞社 DL585 4P8C AMD Opteron を株価検索 Web サイトに採用 7Copyright© CSK WinTechnology Corporation
  • 9. Dr. Jim Gray の後継者出現  Dr. David J. DeWitt Technical Fellow, Data and Storage Platform Division Microsoft Corp. 2008.3 入社  University of Wisconsin – Madison 校 Computer Sciences Department 教授  Teradata を開発し、NCRに売却  Microsoft Jim Gray Systems Lab 創設者  大規模リレーショナル型DHWのアーキテクチャを設計 (パラレル DWH)  SQL Server 2008 R2 PDWH 開発に貢献  カラム・ストアー インデックスを実装 8
  • 10. バランスド システムとは  SQL Server リレーショナルエンジンに最適化された ハードウエア構成  リファレンス アーキテクチャ  考慮すべき構成要素 (共有リソース)  プロセッサ  メモリ  ストレージ サブシステム  ネットワーク  SQL Server 専用サーバー上に配置する  トランザクション処理用と、DWH系は、分離したサーバー上に 配置する  将来のトランザクション ベースラインを明確化する  SQLOS の内部動作を理解する 9Copyright© CSK WinTechnology Corporation
  • 11. プロセッサの選定  主流は、x 64 アーキテクチャ  NUMA アーキテクチャ サポートの有無  NUMA 対応 CPU  Intel Xeon E3 / E5 / E7 シリーズ  AMD Opteron  CPU ソケット内にローカル メモリ コントローラーと複数の 高速インターコネクトを内蔵  マルチコア化が今後も加速  Intel Xeon E3 4 Core/ソケット  Intel Xeon E5 v2 10 Core/ソケット  Intel Xeon E7 v2 15 Core/ソケット  AMD Opteron 16 Core/ソケット  クロック数と、キャッシュサイズも重要  CPU 占有率の監視より、コア数不足 (SQLOS スケジューラと 1: 1) を監視する 10Copyright© CSK WinTechnology Corporation
  • 12. 必要なメモリサイズの考え方  SQL Server 2000 では、最もクリティカルな共有リソースだった  現在 x64 64 ビットアドレス方式が主流  SQL Server 2012 Enterprise Edition は、最大 4TB のメモリ空間を 利用可能  SQL Server 2012 からメモリーの利用方法が変更  8 KB Page vs Large page  リソースガバナーを利用してインメモリー OLTP と ColumnStore Index に対応  必要な物理メモリサイズは?  NUMA アーキテクチャの場合  NUMA ノードあたり 32–64 GB を推奨  SMP アーキテクチャの場合  CPU 物理コアあたり、4 GB をスタートラインに  OLTP の場合、ユーザー DB 容量の 10% を目安に メモリ見積もりを実施する 11Copyright© CSK WinTechnology Corporation
  • 13. Flash Memory SSD の適用分野  仮想環境基盤のストレージサブシステム  データベース アプリケーション基盤 DWH スタースキーマ 多次元データベース 商品点数と顧客数の多いコマースサイト用 データベース 生産管理用 BOM と MRP バッチ処理の短縮化 データベースの論理設計と物理設計ノウハウが 重要となる 12Copyright© CSK WinTechnology Corporation
  • 14. SQL Server 2008 R2 と NUMA 13Copyright© CSK WinTechnology Corporation 13 インターコネクト Windows Node No Node 0 Node 1 Node 2 Node 3 SQLOS Node No Node 1 Node 0 Node 2 Node 3 OS グローバル・ リソース SQLOS ユーザノード SQLOS グローバル・ リソース システムノード SQLOS ユーザノード SQLOS ユーザノード メモリー コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU メモリー コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU メモリー コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU メモリー コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU
  • 15. SQL Server 2012 と NUMA 14Copyright© CSK WinTechnology Corporation インターコネクト Windows Node No Node 0 Node 1 Node 2 Node 3 SQLOS Node No Node 0 Node 1 Node 2 Node 3 Windows OS グローバル・ リソース SQLOS グローバル・ リソース システムノード SQLOS ユーザノード SQLOS ユーザノード SQLOS ユーザノード メモリ コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU メモリ コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU メモリ コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU メモリ コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU
  • 16. 2/19 Xeon E7 V2 発表 15Copyright© CSK WinTechnology Corporation
  • 17. 検証環境 16Copyright© CSK WinTechnology Corporation DB Storage Violin Memory V-6000 Series Model : V-6606- HA24-8xFC 24x 256GB SLC VIMM DB Server NEC NX7700x 4x Intel® Xeon® Processor E-4890V2 (2.80GHz, 37.5MB L3 cache, 15 processor cores) 1024GB Memory 2x 2port 8Gbps FC HBA 4x 8Gbps FC 4x 8Gbps FC Windows Server 2012 Data Center 8Gbps FCHBA Slot03 8Gbps FCHBA Slot03 MG-BMG-A 仮想OS#1 Server 2012 0.5 TB 0.5 TB 0.5 TB 0.5 TB HYPER-V 仮想OS#2 Server 2012 4x 8Gbps FC
  • 18. Xeon E7 v1 NUMA とノード間結合 17Copyright© CSK WinTechnology Corporation メモリ コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU メモリ コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU メモリ コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU メモリ コント ローラ CPU CPU CPU CPU メ モ リ CPU CPU CPU CPU I / O バスI / O バス
  • 19. Xeon E7 v2 NEC NX7700x A2010M 18Copyright© CSK WinTechnology Corporation
  • 20. 2,300 Thread Hyper Thread off 19Copyright© CSK WinTechnology Corporation
  • 21. SQL Server サービス起動ログ Configuration option 'max degree of parallelism' changed from 0 to 15. Run the RECONFIGURE statement to install. Configuration option 'show advanced options' changed from 0 to 1. Run the RECONFIGURE statement to install. Starting up database 'Northwind'. Configuration option 'show advanced options' changed from 0 to 1. Run the RECONFIGURE statement to install. Service Broker manager has started. The Database Mirroring endpoint is in disabled or stopped state. The Service Broker endpoint is in disabled or stopped state. Starting up database 'tempdb'. Clearing tempdb database.'. The resource database build version is 11.00.2100. Starting up database 'mssqlsystemresource'. Starting up database 'msdb'. Resource governor reconfiguration succeeded. CLR version v4.0.30319 loaded. Lock partitioning is enabled. Using dynamic lock allocation. Initial allocation of 2500 Lock blocks and 5000 Lock Owner blocks per node. Node configuration: node 3: CPU mask: 0x0fffe00000000000:0 Active CPU mask: 0x0fffe00000000000:0. This message provides a description of the NUMA configuration for this computer. Node configuration: node 2: CPU mask: 0x00001fffc0000000:0 Active CPU mask: 0x00001fffc0000000:0. This message provides a description of the NUMA configuration for this computer. Node configuration: node 1: CPU mask: 0x000000003fff8000:0 Active CPU mask: 0x000000003fff8000:0. This message provides a description of the NUMA configuration for this computer. Node configuration: node 0: CPU mask: 0x0000000000007fff:0 Active CPU mask: 0x0000000000007fff:0. This message provides a description of the NUMA configuration for this computer. Machine supports memory error recovery. SQL memory protection is enabled to recover from memory corruption. Large Page Allocated: 32MB Large Page Allocated: 32MB Large Page Allocated: 32MB Large Page Allocated: 32MB Using locked pages in the memory manager. Detected 1,048,419 MB of RAM. SQL Server detected 4 sockets with 15 cores per socket and 15 logical processors per socket<c/> 60 total logical processors; using 60 logical processors based on SQL Server licensing. The service account is 'NX7700X¥Administrator'. Authentication mode is WINDOWS-ONLY. System Manufacturer: 'NEC'<c/> System Model: 'Express5800/A2040b [NE3400-001S]'. Server process ID is 5304. Microsoft SQL Server 2012 - 11.0.2100.60 (X64) <nl/> Feb 10 2012 19:39:15 <nl/> Copyright (c) Microsoft Corporation<nl/> Enterprise Edition: Core-based Licensing (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) 20Copyright© CSK WinTechnology Corporation
  • 22. NUMA ノード上の Windows Server と Hyper-V (1)  メモリーアクセスが、ローカルとリモートにまたがり、効率が悪い  SQL Server は、SMP マシンとして認識する 21Copyright© CSK WinTechnology Corporation CPU ソケット 1 物理 コア 1 物理 コア 2 物理 コア 3 物理 コア 4 物理 コア 5 物理 コア 6 物理 コア 7 物理 コア 8 物理 コア 1 物理 コア 2 物理 コア 3 物理 コア 4 物理 コア 5 物理 コア 6 物理 コア 7 物理 コア 8 CPU ソケット 2 NUMA ノード 0 NUMAノード1 ローカルメモリー ローカルメモリー Windows Server & Hyper-V Host 仮想 Windows Server & Hyper-V Guest SQL Server
  • 23. 22Copyright© CSK WinTechnology Corporation NUMA ノード上の Windows Server と Hyper-V (2)  メモリーアクセスは、ローカルのみで効率が良い  Aligned on NUMA Node boundary 機能を提供  SQL Server は、SMP マシンとして認識する CPU ソケット 1 物理 コア 1 物理 コア 2 物理 コア 3 物理 コア 4 物理 コア 5 物理 コア 6 物理 コア 7 物理 コア 8 物理 コア 1 物理 コア 2 物理 コア 3 物理 コア 4 物理 コア 5 物理 コア 6 物理 コア 7 物理 コア 8 CPU ソケット 2 NUMA ノード 0 NUMAノード1 ローカルメモリー ローカルメモリー Windows Server & Hyper-V Host 仮想 Windows Server & Hyper-V Guest SQL Server 仮想 Windows Server & Hyper-V Guest SQL Server
  • 24. 23Copyright© CSK WinTechnology Corporation NUMA ノード上の Windows Server と Hyper-V (3)  Windows Server 2012 からHyper-V V-NUMA で実現  SQL Server は Win32 API でHyper-V 上でNUMAを認識する  VMware は ? CPU ソケット 1 物理 コア 1 物理 コア 2 物理 コア 3 物理 コア 4 物理 コア 5 物理 コア 6 物理 コア 7 物理 コア 8 NUMA ノード 0 ローカルメモリー Windows Server & Hyper-V Host CPU ソケット 2 NUMA ノード 1 ローカルメモリー CPU ソケット 3 物理 コア 1 物理 コア 2 物理 コア 3 物理 コア 4 物理 コア 5 物理 コア 6 物理 コア 7 物理 コア 8 NUMA ノード 0 ローカルメモリー CPU ソケット 4 NUMA ノード 1 ローカルメモリー 仮想 Windows Server & Hyper-V Guest SQL Server 仮想 Windows Server & Hyper-V Guest SQL Server
  • 25. V-NUMA SQL Server 起動ログ 24Copyright© CSK WinTechnology Corporation Lock partitioning is enabled. Using dynamic lock allocation. Initial allocation of 2500 Lock blocks and 5000 Lock Owner blocks per node. Node configuration: node 1: CPU mask: 0x000000003fff8000:0 Active CPU mask: 0x000000003fff8000:0. This message provides a description of the NUMA configuration for this computer. Node configuration: node 0: CPU mask: 0x0000000000007fff:0 Active CPU mask: 0x0000000000007fff:0. This message provides a description of the NUMA configuration for this computer. This instance of SQL Server last reported using a process ID of 2696 at 2014/02/24 16:19:46 (local) 2014/02/24 7:19:46 (UTC). Machine supports memory error recovery. SQL memory protection is enabled to recover from memory corruption. Large Page Allocated: 32MB Large Page Allocated: 32MB Using locked pages in the memory manager. Detected 449,999 MB of RAM. SQL Server is starting at normal priority base (=7). SQL Server detected 2 sockets with 15 cores per socket and 15 logical processors per socket<c/> 30 total logical processors; using 30 logical processors based on SQL Server licensing. Command Line Startup Parameters:<nl/> -s "SQLSERVER2012" Registry startup parameters: <nl/> -d E:¥MSSQL11.SQLSERVER2012¥MSSQL¥DATA¥master.mdf<nl/> -e E:¥MSSQL11.SQLSERVER2012¥MSSQL¥Log¥ERRORLOG<nl/> E:¥MSSQL11.SQLSERVER2012¥MSSQL¥DATA¥mastlog.ldf The service account is 'WIN-DVUOFCD25CV¥Administrator'. Logging SQL Server messages in file 'E:¥MSSQL11.SQLSERVER2012¥MSSQL¥Log¥ERRORLOG'. Authentication mode is WINDOWS-ONLY. System Manufacturer: 'Microsoft Corporation'<c/> System Model: 'Virtual Machine'. Server process ID is 4860. Microsoft SQL Server 2012 - 11.0.2100.60 (X64) <nl/> Feb 10 2012 19:39:15 <nl/> Copyright (c) Microsoft Corporation<nl/> Enterprise Edition: Core-based Licensing (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) (Hypervisor)
  • 26. Hyper-V の V-NUMA 設定 25Copyright© CSK WinTechnology Corporation
  • 27. V-NUMA 830 Thread 並列稼働 600 秒 26Copyright© CSK WinTechnology Corporation 0 500 1,000 1,500 2,000 2,500 3,000 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 830 Threads VNUMA_1 Hyper Thread_off 830 Thread VNUMA_2 Hyper Thread_off 830 Threads Hyper Thread_off
  • 28. PASS Summit 2013 at Charlotte 27Copyright© CSK WinTechnology Corporation
  • 29. ハードウエアトレンド (CPU と Memory) 28Copyright© CSK WinTechnology Corporation  キーワード  メニーコアを念頭においた並列処理化  NUMA を最大限に活用する RDB エンジン  インメモリーテクノロジの活用  ColumnStore Index とインメモリー OLTP エンジン 1 100 10000 1000000 1990 1991 1992 1993 1994 1994 1995 1996 1997 1998 1999 2000 2000 2001 2002 2004 2005 2007 2008 2009 2011 US$/GB $ per GB of PC Class Memory RAM コストの低下 クロック当たりの処理能力 (ILP) は伸びず 発熱対策は限界 ムーアの法則 トランジスタ数/コア 頭打ち クロック数増加の失速 Chart reference http://www.gotw.ca/publications/concurrency-ddj.htm
  • 30. 第四世代 SQL Server RDB (1)  インメモリー機能の活用  インメモリー OLTP エンジン  インデックス情報とデータをメモリー上に保持する  従来のバッファーキャッシュとは異なる  カラムストアーインデックス  DWH の不定型検索処理や集計処理に最適  ビットマップインデックスの採用  データ圧縮機能によりインメモリー化に貢献  カラム(列)単位の検索処理と集計処理を、インメモリーテクノロジーを活用し 、高速化する  バッチ処理モード  従来の統計情報を利用しない実行プランの生成  導入されたテクノロジー  SQL Server 2012  従来型の行ストア型テーブルに、非クラスタカラムストアインデックスを付与する  SQL Server 2014  ヒープ構造のテーブルを、直接クラスタカラムストアインデックスに変換する 29Copyright© CSK WinTechnology Corporation
  • 31. カラムストアインデックスの進化  SQL Server 2012 で非クラスタ化カラムストアインデックスを提供  従来型のクラスタ化インデックスを持つテーブルに設定可能  DWH 業務の非定型型の集計や検索処理が飛躍的にスピードアップ  非クラスタ化カラムストアインデックスを付与したテーブルは、検索処理専用で、 直接更新処理はできない  バッチ処理等でデータ追加後に、非クラスタ化カラムストアインデックスの再作成が必要  テーブル使用領域が大きくなる  従来のクラスタ化インデックス領域 + 非クラスタ化カラムストアインデックス領域  SQL Server 2014 でクラスタ化カラムストアインデックスを提供  ヒープ構造のテーブルをクラスタ化カラムストアインデックスに変換  データ圧縮機能によりテーブル使用領域が小さい  リアルタイムに透過的な更新処理が可能  Insert 処理 : 新たなパーティション内に追加  Update 処理 : Delete + Insert 処理  Delete 処理 : 行に削除フラグを設定する  定期的にインデックスの再構築を実施する  カラムストアインデックスは、ビットマップインデックスを利用  インデックスの格納は BLOB 領域を利用  カラムストアインデックスは統計情報を持たない 30Copyright© CSK WinTechnology Corporation
  • 32. カラム・ストアーの考え方 31Copyright© CSK WinTechnology Corporation カラム・オリエンテッド データストアー 行・オリエンテッド データストアー コア・キャッシュ・インターコネクト 30MB L3 Cache キー1 a1 b1 c1 d1 キー2 a2 b2 c2 d2 a1 a2 a3 ……. an b1 b2 null ……. bn CPU Core2 CPU Core1 CPU Core3 CPU Core4 CPU Core5 CPU Core6 CPU Core7 CPU Core8 L1 L2 L1 L2 L1 L2 L1 L2 L1 L2 L1 L2 L1 L2 L1 L2 Intel Xeon E7 シリーズの例 CPU Core9 CPU Core10 L1 L2 L1 L2
  • 33. bigTransactionHistory14 の DDL 32Copyright© CSK WinTechnology Corporation  CREATE TABLE [dbo].[bigTransactionHistory14]( [TransactionID] [int] NOT NULL, [ProductID] [int] NOT NULL, [TransactionDate] [datetime] NULL, [Quantity] [int] NULL, [ActualCost] [money] NULL ) ON [PRIMARY]  CREATE CLUSTERED COLUMNSTORE INDEX [ClusteredColumnStoreIndex_BigTranHistory] ON [dbo].[bigTransactionHistory14] WITH (DROP_EXISTING = OFF) ON [PRIMARY]  ヒープ構造のベーステーブルは、 TransactionID 列の値で昇順にソート済み  テーブル内データ件数 31,263,601 / インデックス作成時間 1 分 23 秒
  • 34. sys.column_store_segments  min_data_id と max_data_id を参照し、検索セグメントを決定する 33Copyright© CSK WinTechnology Corporation column_id segment_id version encoding_type row_count has_nulls base_id min_data_id max_data_id on_disk_size 1 0 1 1 1,048,576 0 -2 1 31,263,601 4,194,888 1 1 1 1 1,048,576 0 29,478,774 29,478,777 31,245,824 2,796,792 1 2 1 1 1,048,576 0 28,112,318 28,112,321 30,197,248 2,796,792 1 3 1 1 1,048,576 0 27,060,751 27,060,754 29,148,672 2,796,792 1 4 1 1 1,048,576 0 26,154,758 26,154,761 28,100,096 2,796,792 1 5 1 1 1,048,576 0 24,975,944 24,975,947 27,051,520 2,796,792 1 6 1 1 1,048,576 0 23,916,675 23,916,678 26,002,944 2,796,792 2 0 1 2 1,048,576 0 -1 1,001 50,999 2,097,736 2 1 1 2 1,048,576 0 -1 1,001 50,999 2,097,736 2 2 1 2 1,048,576 0 -1 1,001 50,999 2,097,736 2 3 1 2 1,048,576 0 -1 1,001 50,999 2,097,736 2 4 1 2 1,048,576 0 -1 1,001 50,997 2,097,736 2 5 1 2 1,048,576 0 -1 1,001 50,999 2,097,736 2 6 1 2 1,048,576 0 -1 1,001 50,999 2,097,736 3 0 1 2 1,048,576 0 -1 164,716,290,768,896 173,508,088,823,808 1,408 3 1 1 2 1,048,576 0 -1 172,996,987,715,584 173,503,793,856,512 1,728 3 2 1 2 1,048,576 0 -1 172,571,785,953,280 173,198,851,178,496 1,760 3 3 1 2 1,048,576 0 -1 172,258,253,340,672 172,893,908,500,480 1,800 3 4 1 2 1,048,576 0 -1 171,966,195,564,544 172,567,490,985,984 1,784 3 5 1 2 1,048,576 0 -1 171,601,123,344,384 172,253,958,373,376 1,840 3 6 1 2 1,048,576 0 -1 171,274,705,829,888 171,914,655,956,992 1,800 4 0 1 2 1,048,576 0 -1 1 100 191,600 4 1 1 2 1,048,576 0 -1 1 100 320,600 4 2 1 2 1,048,576 0 -1 1 100 361,488 4 3 1 2 1,048,576 0 -1 1 100 370,952 4 4 1 2 1,048,576 0 -1 1 100 388,768 4 5 1 2 1,048,576 0 -1 1 100 379,240 4 6 1 2 1,048,576 0 -1 1 100 402,056 5 0 1 4 1,048,576 0 0 0 7,014,151,213 4,125,176 5 1 1 4 1,048,576 0 0 0 7,156,143,655 5,035,760 5 2 1 4 1,048,576 0 0 0 7,027,283,306 5,068,400 5 3 1 4 1,048,576 0 0 0 7,144,141,920 5,050,616 5 4 1 4 1,048,576 0 0 0 7,126,428,747 5,030,512 5 5 1 4 1,048,576 0 0 0 7,137,000,989 5,054,416 5 6 1 4 1,048,576 0 0 0 7,096,266,811 5,056,520
  • 35. Row Mode と Batch Mode 処理 34Copyright© CSK WinTechnology Corporation  処理時間 : Row Mode 22 秒 vs Batch Mode 2 秒
  • 36. テーブル領域サイズの比較 35Copyright© CSK WinTechnology Corporation データ領域 サイズ (KB) インデックス領域 サイズ (KB) 合計 (KB) ヒープ構造 1,269,592 8 1,269,600 クラスタ化インデックス設定 1,147,296 1,864 1,149,160 クラスタ化インデックス設定 + 非クラスタ化カラムストアインデックス 1,147,296 308,648 1,455,944 クラスタ化カラムストアインデックス 307,288 0 307,288 • クラスタ化カラムストアインデックスの領域サイズは、データ圧縮機能 により、ヒープ構造領域サイズの 24.2 % (圧縮率 約 4 倍 ) • クラスタ化インデックスの付与されたテーブルに、非クラスタ化カラム ストアインデックスを定義すると、26.7 % の領域が増加する クラスタ化カラムストアインデックスの領域サイズと比較すると、 領域サイズは 21.1 % (圧縮率 約 5 倍 )
  • 37. 第四世代 SQL Server RDB (2)  ラッチ処理の見直し  ラッチ処理  三種類のラッチから構成される  PageIOLatch  PageLatch  Latch  ストレージエンジン内の処理のシリアライズ処理  ディスクからバッファープールへのデータ転送非同期処理の完了待ち  更新のロストの防止  データ領域の動的拡張処理の完了待ち  次世代データ格納構造の採用  従来型データ格納構造  B-Tree or Heap 構造  64KB エクステントと 8KB ページ  データの追加・削除によりページ分割が発生する  データページとインデックスページの両方  次世代データ格納構造 (SQL Server 2012 - 2014)  ファイルストリーム型  インメモリー OLTP (Hekaton)  インデックス構造の排除  メモリー展開時に、動的なインデックス情報を付加する  BLOB型  ColumnStore Index セグメント構造 36Copyright© CSK WinTechnology Corporation
  • 38. PageLatch のメカニズム 37Copyright© CSK WinTechnology Corporation  なぜ Lock では不十分か? 4 400 96 1 Page 100 m_freedata=126 100 2 200 111 m_freedata=126 IX Page 100 INSERT VALUES (3,300) INSERT VALUES (4,400) 96 1 Page 100 100 2 200 111 3 126 300 4 PageLatch_ EX PageLatch_ EX 141 400 141 156 ページヘッダ内の 情報の変更が必要 (例 Checksum, torn page bits)
  • 39. ラッチ不要なアーキテクチャ  データベース格納構造は、1970 年代から同じアーキテクチャを採用  従来の階層型格納構造とページ構造  データベース データファイル  格納制御用ビットマップ領域 (PFS / GAM)  インデックスアロケーションマップ (IAM)  エクステント ( 8 KB Page * 8)  ページ (8 KB)  インデックスページ  データページ  階層型格納構造の整合性を維持するためにラッチ処理を採用  トランザクション処理とは無関係な、ストレージエンジン内部の短時間 排他制御  該当するトランザクションが異常終了しても、ロールバック処理は実施しない  これらの処理を排除するには、データベース格納構造の見直しが必要  インメモリー OLTP は、ファイルストリーム機能を利用  カラムストアインデックスは、BLOB ページに格納 38Copyright© CSK WinTechnology Corporation
  • 40. 第四世代L Server RDB (3)  ロック処理の見直し  トランザクションの ACID プロパティの担保  ANSI トランザクション分離レベルの提供  行バージョニングと Read Committed Isolation Level の採用  ペシミスティック (悲観的)同時実行制御とオプティミスティック (楽観的)同時実行制御  従来の SQL Server は、ペシミスティック同時実行制御をコンセプト にデザイン  データ検索時に共有ロックを取得する  SQL Server 2005 から、オプティミスティック同時実行制御と 読み取り行のバージョニング機能を提供し、ユーザが選択可能  SQL Server 2014 インメモリー OLTP は、オプティミスティック 同時実行制御と読み取り行のバージョニング機能を、標準アーキ テクチャとして採用 39Copyright© CSK WinTechnology Corporation
  • 41. 3 種類のアーキテクチャにより実現  オプティミスティック (楽観的)同時実行制御  コンフリクト(更新の競合)の発生確率は多くない  トランザクションは排他制御(ロック)を発行しない  コンフリクト(更新の競合)発生検出メカニズムを実装する  同一データに対して複数のバージョンを保持する  データの更新と追加時には、新たなバージョンの行を作成する  コミット処理後、コンフリクト(更新の競合)が発生していないことを確認する までは、他のトランザクションからはイン・ビジブル  データはマルチ・バージョニングで管理する  それぞれのバージョンの行は、開始と終了のタイムスタンプを持つ  トランザクション開始時には、開始時間により該当するバージョンの行を取得 する  タイムスタンプは、行の作成された順序 (FIFO) でポインターにより検索可能 である  最後にコミットされた行の終了時間は無限大となる 40Copyright© CSK WinTechnology Corporation
  • 42. ロック不要なアーキテクチャ 41Copyright© CSK WinTechnology Corporation  通常トランザクション処理  RCSI によりコミットされた最新の行を検索  更新したデータは仮の行バージョンとなり、他のトランザクションからは イン・ビジブル  コンフリクトの検出  他のトランザクションでコンフリクトの有無を検出  コンフリクトを検出した場合はロールバックを行いアプリケーションに通知  トランザクション後処理  トランザクションが更新した最後の行バージョンを他のトランザクションから 参照可能な状態に変更する(非同期処理)  CMPXCHG : Compare and Exchange 命令を利用 Time Begin 通常の トランザクション処理 コンフリクト の検出 トランザクション 後処理 Pre-Commit Commit Terminate
  • 43. 一般のデータ検索機能  一般のデータ検索機能  OLTP とバッチ処理  マルチユーザによる多頻度更新処理  トランザクション属性を保障したリアルタイムデータを保持  正規化された構造化データを扱う  ETL と DWH  ペタバイト (10の15乗) のデータをスタースキーマ形式で格納する  大量データ追加更新を短時間で  定型検索  データ反映の即時性の有無  多次元検索機能  事前集計された多次元データのドリルダウン検索  大量データ追加更新を短時間で 42Copyright© CSK WinTechnology Corporation
  • 44. SharePoint のデータベース要件  ドキュメントの管理 所有者と変更管理 アクセス権の設定  ファイルサーバー機能の提供 マルチバージョン形式の大量データの保存 フルテキスト検索機能  マルチユーザへのアクセス基盤提供  SharePoint Online によりブラックボックス化 43Copyright© CSK WinTechnology Corporation
  • 45. SharePoint 用に追加された機能  非構造型データの格納と検索機能  BLOB  ファイルストリーム  ファイルテーブル  Update 処理  Delete / Insert で処理  Delete は削除フラグを設定し、削除処理は非同期処理  コンテンツのインデックス検索  Fast Index Search  バックアップ・リストアをどう扱うか? 44Copyright© CSK WinTechnology Corporation
  • 46. SharePoint 用データベース 45Copyright© CSK WinTechnology Corporation
  • 47. SQL Server の設定・管理は必要 ?  データ格納基盤のサイジング  仮想化基盤利用の是非  利用ユーザ数と格納容量見積もり  必要なサーバー数は  コンテンツ DB / Index / DWH / MOLAP / Reporting Service  CPU コア数、メモリーサイズ、ネットワーク帯域  tempdb 同時実行性の向上  CPU リソースの並列処理設定  SQL Server が使用するメモリーの固定化  ストレージサブシステム設計  どのファイルをどの論理デバイス上に配置するか  データファイルとトランザクションログファイルの初期サイズと 拡張増分指定の設定  データ格納領域の断片化とインデックス再構築 46Copyright© CSK WinTechnology Corporation
  • 48. tempdb 同時実行性の向上  物理CPUコア数 < 8  Tempdb データファイル数 = 物理CPUコア数  物理CPUコア数 > 8  Tempdb データファイル数 => 8 47Copyright© CSK WinTechnology Corporation
  • 49. CPU リソースの並列処理設定  並列処理の最大限度 (Max DOP)  NUMA の場合  ソケット内の物理コア数を設定  SMP の場合  (物理コア数 / 4) の値を設定 48Copyright© CSK WinTechnology Corporation
  • 50. SQL Server が使用するメモリーの固定化  SQL Server の利用するメモリーを固定化する  ただし、仮想環境の場合は注意が必要 49Copyright© CSK WinTechnology Corporation
  • 51. SQLOS 内部待ち事象の監視  select * from sys.dm_os_wait_stats 50Copyright© CSK WinTechnology Corporation wait_type waiting_tasks_count wait_time_ms max_wait_time _ms signal_wait_time_ms PAGELATCH_EX 299,490 62,458,812 1,714 286,201 PAGELATCH_SH 269,656 46,166,230 1,002 367,886 SOS_SCHEDULER_YIELD 5,296,104 12,631,779 136 12,627,863 LATCH_SH 24,716 2,012,683 9,722 31,067 LATCH_EX 4,612 1,588,947 9,726 2,768 WRITELOG 216,300 610,175 105 299,788 DIRTY_PAGE_POLL 4,615 465,679 147 21 HADR_FILESTREAM_IOMGR_IOCOMPLETION 926 465,509 520 1,604 ASYNC_NETWORK_IO 51,075 109,771 84 103,399 LCK_M_S 11,962 49,165 60 9,917 IO_COMPLETION 49,491 38,471 52 898 LCK_M_U 7,167 27,350 82 5,126 PAGEIOLATCH_EX 305 754 27 162 CMEMTHREAD 614 509 4 507 LCK_M_IX 31 409 33 41 PAGELATCH_UP 244 370 8 151 ASYNC_IO_COMPLETION 1 277 277 0 SOS_PHYS_PAGE_CACHE 43 150 8 144 THREADPOOL 17 96 16 0 PAGEIOLATCH_UP 27 67 5 0 LOGMGR_FLUSH 26 43 2 0 LOGBUFFER 27 17 4 16
  • 52. データベース I/O 監視  select * from sys.dm_io_virtual_file_stats(null, null) 51Copyright© CSK WinTechnology Corporation db file_id size_on_disk_byt es num_of_read s num_of_bytes_read io_stall_read_ ms num_of_write s num_of_bytes_writte n io_stall_write_ ms io_stall tempdb 1 387,579,904 494,102 28,318,130,176 2,734,719 877,889 54,112,444,416 70,618,588 73,353,307 tempdb 2 328,794,112 278 2,048,000 1,167 937,537 54,502,727,680 15,282,463 15,283,630 SharePoint_Config 1 267,649,024 114,089 2,539,479,040 1,586,791 59,323 2,496,454,656 837,480 2,424,271 SharePoint_Config 2 1,271,267,328 349 2,142,208 7,477 4,037,399 5,839,324,672 36,102,091 36,109,568 SharePoint_AdminContent_1f19041d-da52-4f3c-95fa-b210e3f13eec 1 485,752,832 83,498 1,406,263,296 897,916 18,871 224,714,752 875,943 1,773,859 SharePoint_AdminContent_1f19041d-da52-4f3c-95fa-b210e3f13eec 2 7,929,856 72 757,760 1,341 34,343 206,451,200 448,906 450,247 WSS_Content 1 241,041,408 148 1,417,216 2,098 1 8,192 34 2,132 WSS_Content 2 3,997,696 18 434,176 358 5 15,872 75 433 WordAutomationServices_15d5d7ba4d7f4c79ae700f2e63d58f59 1 2,359,296 1,477 12,099,584 13,941 1 8,192 84 14,025 WordAutomationServices_15d5d7ba4d7f4c79ae700f2e63d58f59 2 589,824 6 385,024 184 5 10,752 180 364 Search_Service_Application_DB_abce596e166849578d153755368f7ec4 1 71,565,312 76,858 1,984,864,256 962,210 16,201 188,170,240 314,107 1,276,317 Search_Service_Application_DB_abce596e166849578d153755368f7ec4 2 8,716,288 131 1,298,432 1,467 946,496 665,256,448 10,279,494 10,280,961 Search_Service_Application_PropertyStoreDB_c36b8a83d0244e7990e86263e68aa00b 1 3,744,727,040 1,073,755 10,879,672,320 14,161,763 198,769 4,224,253,952 5,701,409 19,863,172 Search_Service_Application_PropertyStoreDB_c36b8a83d0244e7990e86263e68aa00b 2 251,330,560 197 1,273,856 3,899 71,299 830,382,080 1,282,807 1,286,706 Search_Service_Application_CrawlStoreDB_5a34fac31a4e4e5296cb8f1333112097 1 4,327,800,832 21,460,055 231,891,591,168 421,480,138 13,028,579 277,537,669,120 249,127,838 670,607,976 Search_Service_Application_CrawlStoreDB_5a34fac31a4e4e5296cb8f1333112097 2 1,538,260,992 314 3,334,144 6,731 12,575,486 302,634,040,320 159,112,357 159,119,088 WSS_Search_CWTSPF01 1 427,032,576 180,729 2,463,965,184 3,644,510 7,960 95,346,688 278,077 3,922,587 WSS_Search_CWTSPF01 2 538,968,064 234 1,445,888 4,965 87,180 337,313,792 816,927 821,892 StateService_ddbdde39f3df44d48fa68b27a54b8891 1 2,359,296 1,004 8,224,768 9,272 1 8,192 26 9,298 StateService_ddbdde39f3df44d48fa68b27a54b8891 2 851,968 7 389,120 50 5 13,824 237 287 Managed Metadata Service_464c6e4388ae43beb5c8e9e5c583a404 1 3,407,872 2,538 20,791,296 18,919 1 8,192 8 18,927 Managed Metadata Service_464c6e4388ae43beb5c8e9e5c583a404 2 589,824 6 206,336 94 6 72,704 250 344 WebAnalyticsServiceアプリケーション_StagingDB_4029d037-239c-4125-857f-ba74e39d784b 1 66,781,184 30,261 1,467,113,472 588,075 9,830 188,014,592 525,000 1,113,075 WebAnalyticsServiceアプリケーション_StagingDB_4029d037-239c-4125-857f-ba74e39d784b 2 188,809,216 180 983,552 5,167 87,333 237,562,880 1,127,142 1,132,309 WebAnalyticsServiceアプリケーション_ReportingDB_8d1f02f0-8a63-4c1a-b0a0-ce43e627ffe5 1 395,575,296 190,969 10,335,289,344 5,352,568 213,873 2,242,215,936 12,385,991 17,738,559 WebAnalyticsServiceアプリケーション_ReportingDB_8d1f02f0-8a63-4c1a-b0a0-ce43e627ffe5 2 37,158,912 120 970,752 2,280 13,367 350,702,080 235,236 237,516 WSS_Logging 1 1,951,924,224 113,462 8,239,308,800 1,486,240 36,655 1,893,670,912 846,464 2,332,704 WSS_Logging 2 188,809,216 250 1,609,216 5,210 156,707 2,778,958,336 2,056,932 2,062,142 ProfileDB 1 77,791,232 53,301 577,060,864 318,685 10,539 119,504,896 218,526 537,211 ProfileDB 2 4,390,912 812 33,588,224 7,640 48,493 233,288,192 664,243 671,883 TONODB 1 41,186,164,736 10,712,827 2,180,261,675,008 122,846,847 68,361 808,173,568 1,960,397 124,807,244 TONODB 2 789,250,048 321 3,061,760 6,281 109,693 566,663,168 1,533,852 1,540,133 UPSApp_SyncDB_db675b72-ec7e-46a0-a85d-931f9a53753c 1 900,988,928 73,552 1,167,491,072 798,153 9,638 128,589,824 407,694 1,205,847 UPSApp_SyncDB_db675b72-ec7e-46a0-a85d-931f9a53753c 2 45,023,232 166 1,314,816 3,279 1,316,174 758,588,416 13,896,723 13,900,002 UPSApp_SocialDB_bd2d1ac3a7114262ab9efa0ef2a452c1 1 3,407,872 5,948 48,726,016 49,388 1 8,192 22 49,410 UPSApp_SocialDB_bd2d1ac3a7114262ab9efa0ef2a452c1 2 851,968 7 389,120 221 5 17,408 221 442 Bdc_Service_DB_ff0ed6c74ee94daea5f9902448edb1c2 1 3,407,872 604 4,947,968 5,275 1 8,192 24 5,299 Bdc_Service_DB_ff0ed6c74ee94daea5f9902448edb1c2 2 589,824 6 295,424 87 5 12,288 146 233 WSS_Content_cwtspf01 1 21,233,664 141 1,335,296 2,460 1 8,192 36 2,496 WSS_Content_cwtspf01 2 5,963,776 24 108,032 321 5 15,360 420 741 DocAveCache 1 2,359,296 136 1,114,112 2,494 3 24,576 270 2,764 DocAveCache 2 851,968 7 389,120 223 7 14,336 402 625 WSS_Content_RBS 1 21,233,664 146 1,409,024 2,630 1 8,192 36 2,666 WSS_Content_RBS 2 5,963,776 24 197,120 296 5 45,056 321 617 Secure_Store_Service_DB_405b13cb-0cdb-42da-bdae-4c32a6cae31f 1 2,359,296 695 5,693,440 6,131 1 8,192 22 6,153 Secure_Store_Service_DB_405b13cb-0cdb-42da-bdae-4c32a6cae31f 2 851,968 7 98,304 24 5 35,328 294 318 DocAve_ControlDB 1 6,553,600 1,229 10,084,352 15,463 40 327,680 1,617 17,080 DocAve_ControlDB 2 1,900,544 11 405,504 131 218 141,312 3,681 3,812 DocAve_AuditDB 1 2,359,296 114 933,888 1,693 1 8,192 36 1,729 DocAve_AuditDB 2 589,824 6 361,472 57 4 9,728 186 243 DocAve_ReportDB1 1 2,359,296 943 7,725,056 6,920 4,292 35,160,064 41,689 48,609 DocAve_ReportDB1 2 589,824 95 1,114,112 557 294,709 158,908,928 2,673,298 2,673,855 DocAve_ReportDB2 1 521,404,416 1,258 10,305,536 10,537 39,350 480,329,728 372,246 382,783 DocAve_ReportDB2 2 589,824 13 385,024 610 2,801,085 1,511,337,472 28,740,888 28,741,498 WSS_Content_RBS2 1 23,330,816 140 1,318,912 1,916 1 8,192 41 1,957 WSS_Content_RBS2 2 6,553,600 26 314,368 449 5 15,872 268 717 WSS_Content_mailtest 1 46,399,488 15,803 143,269,888 116,884 381 4,849,664 11,425 128,309 WSS_Content_mailtest 2 117,178,368 140 937,984 2,976 16,050 12,248,064 163,507 166,483
  • 53. バッファーキャッシュの内容  sys.dm_os_buffer_descriptors 52Copyright© CSK WinTechnology Corporation objname index_id buffer_count AllDocs 1 2,641 2 1,733 23 237 4,611 AllUserData 1 3,140 2 340 3,480 Solutions 1 2,266 AllLists 1 1,940 AllWebParts 2 468 1 336 804 sysobjvalues 1 784 EventReceivers 1 702 AllDocStreams 1 622 syscolpars 1 507 Webs 1 297 AllListsPlus 1 260 UserInfo 1 64 2 58 3 8 4 4 134 Perms 1 120 WebMembers 1 107 ContentTypes 1 104 AllListsAux 1 103 NavNodes 1 84 Perms 2 80
  • 54. SQL Server の監視  select * from sys.dm_os_performance_counters 53Copyright© CSK WinTechnology Corporation カウンター名 問題点・閾値・推奨値 Physical disk Avg. Disk Queue Length ディスクサブシステム / 限りなく 0 (瞬間的は可) Physical disk Current Disk Queue Length このドライブレター上の DB 物理ファイル Processer % Processer Time 平均値 80% 以上多くの潜在的問題点がある System Processer Queue Length CPU プレッシャーの発生 SS Access Method Full Scans/sec 適切なインデックス不足 SS Access Method Page Split/sec デフラグの発生 / 適切な Index 設定と fill factor 値 SS Buffer Manager Page Life expectancy この値が低い場合メモリー不足 SS Database Log Flush Wait time この値が高い場合ログファイル I/O 帯域不足 SS Memory Manager Memory Grants pending クエリー実行時のメモリー不足 SS Latches Latch Waits/sec クラスタ化 Index が不適切 / tempdb 帯域不足 SS Lock requests/sec 適切なロックヒント不足 / Index が不適切 SS Lock Wait Time (ms) トランザクション間のリソース競合 SS SQL Statistics Batch requests/sec アプリケーションから受け取った T-SQL バッチ数 SS SQL Statistics SQL Compilations/sec バッチ数と比較しアドホッククエリの比率を確認 SS SQL Statistics SQL Re-Compilations/sec バッチ数と比較しリコンパイルの比率を確認
  • 55. 共有資源とクエリーの調査  内部の待ち事象からの考察  sys.dm_os_wait_stats  SQLOS の待ち事象からシステムの状況を把握する  処理の通常日、高負荷日の日別の待ち事象を測定する  何が把握できるか  アプリケーションアーキテクチャの問題点  メモリー不足 / CPU ボトルネック / ディスクサブシステム帯域不足  適切なインデックスの欠落  データベース I/O 負荷の把握  sys.dm_io_virtual_file_stats  データベース物理ファイルとログファイルの I/O 発生状況を把握する  OLTP 処理の通常日、高負荷日の日別の I/O 発生状況を測定する  パフォーマンスカウンターの値  sys. dm_os_performance_counters  CPU コア(スケジューラ)のボトルネック  sys.dm_os_schedulers  プロシージャ・キャッシュの調査  sys.dm_exec_cached_plans  sys.dm_exec_sql_text 54Copyright© CSK WinTechnology Corporation
  • 56. まとめ 55Copyright© CSK WinTechnology Corporation SAP ERP データ発生 OLTP B2C B2B 基幹系 システム データ抽出 転送・ロード ETL データ クレンジング Master Data Service Data Quality Service DWH データマート 多次元 データベース ColumnStore Index FileTable Fast Track SSD Appliance パラレル DWH SQL Azure Hadoop MOLAP ROLAP Cube MDX Query Power Pivot Power View Power BI Excel データ分析 マイニング SharePoint Reporting Service ダッシュボード スコアカード
  • 57. 56Copyright© CSK WinTechnology Corporation http://www.cskwin.com/

×