SQL Server 2008データベースのパフォーマンスとスケーラビリティ-は、Microsoftのアプローチ
2008年10月13日ミルチアGoiaで Miscellaneous 、 、 、 その他
これらは、Microsoftのホワイトペーパー"SQL Server 2008のパフォーマンスとスケール" はこちら(MyTestBox.com Microsoftからここに転載することをpermisison得た出版からの抜粋)です。
は、Microsoft SQL Server 2008では、ツールとは、システムレポート、およびエンタープライズ規模のデータウェアハウスのリレーショナルデータベースを実装するために必要な技術を搭載し、最適なパフォーマンスと応答性を提供します。 一方、サーバー統合をサポートするためにサーバーのスケールアップSQL Server 2008を使用すると、最新のハードウェア技術を活用することができます。 SQL Server 2008のもあなたの大規模なデータのソリューションをスケールアウトすることができます。
はじめに
今日の組織に簡単にアクセスし、容易にビジネスデータのようにグローバルな市場で競争することができる必要があります。 データベースのサイズは、多くの製品に組み込みデータベースの船成長を続けてこの必要性は、リレーショナルおよび分析への応答、およびでは、多くの企業管理の懸念を緩和するためのサーバーを統合します。
中には、データ環境のサイズと複雑さで成長し続ける企業は最適なパフォーマンスを維持する必要があります。
このホワイトペーパーでは、パフォーマンスおよびMicrosoft ® SQL Server ® 2008のスケーラビリティの機能について説明し、どのようにこれらの機能を使用する方法について説明します:
- ツールとは 、 データベースエンジン、分析サービス、レポートサービスをご利用される機能を使用したデータベースのすべてのサイズ * パフォーマンスの最適化、および統合サービス。
* スケールお客様のサーバーを新しいハードウェアの能力をフルに活用する。
* スケールお客様のデータベース環境をと応答性を最適化するに近いユーザーにデータを移動します。
パフォーマンスの最適化SQL Server 2008で
ので、お客様の企業データのサイズと複雑さで成長し続けて、最適なデータアクセス時間を提供するための手順を実行する必要があります。 SQL Server 2008の多くの機能と拡張機能がすべてのリレーショナル、オンライントランザクション処理(OLTP)データベース、オンライン分析処理(OLAP)データベース;などの機能をその地域全体でのレポートのパフォーマンスを最適化するに含まれています、そして、データ抽出、変換、およびロード(ETL)処理されます。
リレーショナルデータベースのパフォーマンス
ほとんどのビジネス環境では、リレーショナルデータベース、ビジネスのコアクリティカルなアプリケーションやサービスを見ている。
データの量を増やすとして、また、ユーザーやアプリケーションは、リレーショナルデータに依存しているの数を格納大きくなると、組織が一貫したパフォーマンスと応答性は、データシステムから確認することができる必要があります。
SQL Server 2008では大規模なリレーショナルデータベースとの複雑なクエリ処理をサポートする堅牢なデータベースエンジンを提供します。
測定可能な、現実世界の性能
SQL Server 2008は、業界でのビルドは、SQL Serverの以前のバージョンの主要なパフォーマンスは、組織のデータベースのパフォーマンスの可能な限り最高の標準を提供する。
はTransaction Processing Performance CouncilのTPCでは、過去に、SQL Serverの高い性能を実証持つ- Cベンチマークで、Microsoftは、新しいTCPの結果を公表する最初のデータベースベンダがメールのベンチマークは、より正確にOLTPのワークロードの種類を表していたこと近代的な組織では一般的です。
また、SQL Server用のパフォーマンス能力を示して大規模な結果、TPCを介して、データウェアハウスのワークロードは、3テラバイト、10テラバイトの種類のHの結果。 (現在のベンチマークテストの結果については、www.tpc.orgでは、TPC Webサイトを参照してください。)
ハイパフォーマンスクエリ処理エンジン
SQL Serverの高いパフォーマンスクエリ処理エンジンは、アプリケーションのパフォーマンスを最大化するのに役立ちます。 クエリ処理エンジンのクエリを評価し、インデックスの動的管理の統計情報に基づいて、最適なクエリの実行プランを生成し、キーの選択、およびデータボリューム。
は、SQL Server 2008でこれらのクエリプランが一般的に実行されるクエリの一貫したパフォーマンスを確実にロックすることができます。 クエリ処理エンジンは、複数の利点を取ることができるコアまたはマルチプロセッサシステムと実行計画は、さらなるパフォーマンス向上を実現する並列処理の活用を生成します。
通常、クエリのパフォーマンスの面では、最もコストのかかる操作のディスクI / Oを SQL Serverの動的キャッシュ機能、および物理ディスクのアクセスを取得するために、データを変更するために必要な量を減らすことは、クエリ処理エンジンを大幅に読み取りを使用して、全体のパフォーマンスを向上させることができる前にそのために必要なデータをページに期待をスキャンし、特定の実行計画と先手を打ってキャッシュにお読みください。 また、データ圧縮のためのSQL Server 2008のネイティブサポートと、それが/ Oに負荷バインドされた私のパフォーマンスが向上読み取る必要があるデータページの数を減らすことができます。
SQL Server 2008のテーブルとインデックスは、管理者は、同じテーブルまたは別の物理ストレージデバイス上の複数のファイルグループにインデックスからパーティションを割り当てることによって、データの物理的な配置を制御することができますを分割しています。 SQL Server 2008でクエリを処理エンジンへの最適化とパフォーマンスが大幅に向上分割されたデータへのアクセスを並列化することができます。
パフォーマンス最適化ツール
SQL Server 2008のSQL Serverプロファイラは、データベースエンジンチューニングアドバイザが含まれます。 あなたは、あなたのアプリケーションのための典型的なワークロードで発生するイベントのトレースをキャプチャすることのできるSQL Server Profilerを使用することで、次に再生するには、データベースエンジンチューニングアドバイザでは、これを生成し、インデックスの作成とデータのパーティション分割の推奨事項を実装するものなので、トレースするあなたのアプリケーションのパフォーマンスを最適化することができます。
インデックスとパーティションのアプリケーションに最も適したワークロードを作成したら、自動化されたデータベースメンテナンスプランのスケジュールには、SQL Serverエージェントを使用することができます。
自動化された保守を定期的に再編成し、またはインデックスを再構築し、更新プログラムのインデックスと選択性の統計情報を、一貫してデータの挿入や変更などの断片、データベースの物理的なデータページのパフォーマンスの最適化を確保する。
リソースガバナ
多くの場合、単一のサーバーで複数のデータサービスを提供するために使用されます。 いくつかの例では、多くのアプリケーションやワークロードは、同じデータソースに依存します。 これは、同じサーバー上の他のワークロードをシステムリソースの競合が、サーバ統合のための現在の傾向としては、特定のワークロードの予測可能なパフォーマンスを提供することは難しいことが続けている。
単一のサーバー上で複数のワークロードでは、管理者は、システムリソース、または優先順位の低いワークロードを別のワークロードに悪影響高に影響しますか優先順位のワークロードを餓死暴走クエリなどの問題を回避する必要があります。
SQL Server 2008のリソースガバナは、管理者は、制限を定義すると、SQL Serverのインスタンスで実行され、個々のワークロードに優先順位を割り当てることができますが含まれます。
ワークロードの要因によって、ユーザー、アプリケーションなど、ベースとなるものデータベース。 だけでなく、ワークロードには、リソースを独占使用されているリソースを制限するリソースに制限を定義することにより、管理者の暴走のクエリの可能性を最小限に抑えることができます。 中には、サーバー上の他のワークロードのための予見可能性を維持する優先順位を設定することにより、管理者の使命のパフォーマンスが重要なプロセスを最適化することができます。
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...。
データウェアハウスと分析パフォーマンス
データウェアハウス環境データとユーザの要件を維持するの成長のボリュームを最適なパフォーマンスを維持する必要があります。 データウェアハウスの詳細は、クエリの各部分が複雑になるクエリとして許容できるパフォーマンスを維持するために最適化される必要があります。 SQL Server 2008では、動的にスター結合クエリのクエリのパフォーマンスを強化するため最適化されたビットマップフィルタを導入することができます、クエリオプティマイザでは。
Analysis Servicesのアプリケーションは通常、大規模で複雑な計算が必要です。 貴重なプロセッサ時間の集計を計算することによって浪費されているNULLまたはゼロに解決します。
のSQL Server 2008 Analysis Services、および制限のセルをスキップする式の数を計算する必要が最小限にスペース全体を一度ではなく、一度は大幅に計算のパフォーマンスが向上、各セルのためのデフォルト値は、使用中のブロックの計算。
ただし、多次元OLAP(MOLAP)パーティションの大きいクエリのパフォーマンスが、それを書く必要とする組織を提供するバックアップ機能は、以前は(ROLAP)パーティションの書き戻しテーブルを維持するためにリレーショナルOLAPを使用する必要がありました。
SQL Server 2008の機能の書き込みを実行するバックアップ操作これは、ROLAPの書き戻しテーブルを維持することによって引き起こされるパフォーマンスの低下を削除MOLAPパーティションに追加されます。
Reporting Servicesのパフォーマンス
は、SQL Server 2008 Reporting Servicesのエンジンは、Reporting Servicesには高いパフォーマンスとスケーラビリティを向上するように設計されて再確認し、需要を処理します。 ため、レポートの処理がメモリ不足に適応するためのファイルシステムキャッシュを使用するレポートはもはやメモリバインドされます。 レポートの処理も、メモリを消費し、他のプロセスに適応することができます。
新しいレンダリングアーキテクチャのレンダラーの以前のバージョンからのメモリ使用量の問題を排除します。 これらの新しいレンダラは、真のデータのレンダリングなどの改善を提供してCSV形式のレンダラに追加し、ネストされたデータ領域と、ネストしたサブサポートは、Microsoft Office Excel ®のレンダラで報告します。
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...。
SQL Server 2008にアップスケーリング
サーバ統合、大規模なデータを格納し、複雑なクエリを物理的なリソースは、さまざまなワークロードは、サーバー上で実行をサポートする必要があります。 SQL Server 2008の最新のハードウェア技術をフルに活用するために機能しています。
複数のデータベースエンジンのインスタンスを複数の分析サービスのインスタンスを単一のサーバー上でハードウェアの使用状況を統合してインストールできます。 できるだけ多くの50のインスタンスを単一のサーバー上でのパフォーマンスや応答性を損なうことなくインストールすることができます。
ハードウェアサポート
SQL Server 2008の64ビットを含む近代的なハードウェアを最大限に活用し、マルチコア、マルチプロセッサシステム。 するために、分析、およびデータアクセスの負荷は、SQL Serverメモリの64 GBまでのアドレスを指定できますレポートの増加をサポートおよびAWEの動的割り当て- 32上のメモリマップされたビットのハードウェアをサポートし、メモリを8テラバイトに64をアドレス指定できるビットハードウェア。
時のプロセッサの数が多いサーバーに追加している場合のプロセッサは、プロセッサへのローカルされていないメモリにアクセスする必要があります、メモリアクセスが低下することができます。 ハードウェアの非均一メモリアクセス(NUMA)アーキテクチャに組み込まれ、ローカルメモリにアクセスするためのプロセッサを有効にし、これらのメモリへのアクセスの制限を克服します。
SQL ServerのNUMAハードウェアのため、高いスケーラビリティと高いパフォーマンスオプションを企業に提供知っている。 あなたのNUMAの利点を取ることができるアプリケーションの構成を変更せずにベースのコンピュータで。 SQL Server 2008の両方のハードウェアNUMAとソフトNUMAをサポートしています。
ホットハードウェアの追加
ただし、簡単に、メモリやCPUを追加するクリティカルなアプリケーションと2004年があなたの使命をスケールアップするハードウェアを追加するためのダウンタイムをスケジュールしてSQL Serverのインスタンスにスケールアップすることができます1時間1日、7日間の週の操作を困難にすることができます。
SQL Server 2008を使用すると、互換性のあるマシンにCPUとメモリを追加することによって、データベースサービスを停止することなく、あなたのサーバーにスケールアップすることができます。
次の要件をホットアドメモリを追加するために満たす必要があります:
- * SQL Server 2008のエンタープライズ
*は、Windows Server ® 2003のEnterprise EditionまたはWindows Server 2003 Datacenter Editionを
AWEサポートが有効* 64ビット版のSQL Serverまたは32ビット版のSQL Serverと
*ハードウェアは、メモリに加え、または仮想化ソフトウェアをサポートし、ハードウェアの製造元から
* SQL Serverは、- hオプションを開始
次の要件をホットCPUを追加するために満たす必要があります:
- * SQL Server 2008のエンタープライズ
*は、Windows Server ® 2008 Enterprise EditionのItaniumシステムまたはWindows Server 2008 Datacenter Edition向けのx64システム向け
* 64ビットのSQL Server
*ハードウェアは、CPUの追加、または仮想化ソフトウェアをサポート
高度な同時実行制御機能
あなたのデータベースサーバをスケーリングの目的は、ユーザーまたはアプリケーションの増加数をサポートすることです。 ユーザーの数が増加するにつれて、応答性、同時実行の問題によっては、複数のトランザクションが同じデータにアクセスしようとすると影響を受けることができます。
SQL Server 2008のさまざまなソリューションをサポートするために多数の分離レベルを提供して読み取りの整合性とのバランスを並行。 行の場合は?レベルのサポートバージョンは、SQL Server 2008は、READ_COMMITTED_SNAPSHOTデータベースオプションとALLOW_SNAPSHOT_ISOLATIONデータベースオプションを使用するスナップショット分離レベルを使用してコミット読取り分離レベルが含まれます。
また、ロックのエスカレーションテーブルの上に設定する場合のパフォーマンスを改善し、維持し、同時実行でき、特に照会分割されたテーブル。
スケールアウトSQL Server 2008で
非常に大規模なデータベースのパフォーマンスを向上さに近いユーザーにデータを移動するデータベースをスケールアウトする増大するデータ環境では、SQL Server 2008の提供のツールと機能をサポートするために個々のサーバのスケールアップに加えて、。
スケーラブルな共有データベース
データウェアハウスは、通常の分析およびレポートソリューションなどのデータのみ、読み取り、複数の消費者によって使用されているが応答を低減データ要求と過負荷になることができます。
これを読み上げる規模な方法は、クエリーエンジンに負荷を分散し、リソースを集中的にクエリを分離する複数のデータベースサーバインスタンス間でのみレポートデータベースを提供するサポートするスケーラブルな共有データベースは、この問題は、SQL Server 2008を克服するために。
スケーラブルな共有データベース機能は、管理者は、専用の読み取り専用の読み取りマウントのコピーのみでデータソースを、複数のレポートサーバー上でのみデータベースを作成することができます。 アプリケーションのデータにアクセスする、これには、接続は、レポートサーバーの独立した一貫性のあるコピーします。
データ依存型ルーティング
ときに、会社のフェデレーテッドデータベースにはデータベースの構造をスケールアウトすることに、どのようにサーバーを論理的に間してデータを分割するかを決定する必要がありますどのようにルート要求を適切なサーバーにする。
SQL Server 2008を使用すると、サービスとしてのルートのクエリに適切な場所には、Service Brokerを使用してデータ依存型ルーティングを実装することができます。
ピアツーピアレプリケーション
ピアツーピアレプリケーションの効果的な規模を提供することで、データベースの同一のコピーの場所には、組織全体に配布されてアウトソリューションので、その変更は、データのローカルコピーに加え、自動的に他の複製コピーに伝播されます。 SQL Server 2008の場合は、時間を実装してピアツー管理ツーピアレプリケーションソリューションに新しいピアツーピアトポロジ構成ウィザードやビジュアルデザイナで撮影を減らすのに役立ちます。
ピアツーを使用してピアレプリケーションするアプリケーションの読み取りまたはいずれかがレプリケーションに参加しているデータベース内のデータの変更を有効にすることができます。
一方、SQL Serverの以前のバージョンの管理者がすべてのノードでパブリッシュされたテーブル上の既存のノードに新しいノードを接続する前に活動を停止するために必要な、SQL Server 2008の新しいノードを追加することに接続して、レプリケーションの活動の中でも可能になります。
クエリ通知
ほとんどのエンタープライズアプリケーションを3層の(多くの場合、Webファーム)で、これに曲がるのクライアントコンピュータによってアクセスされますが、データがデータベースサーバーから1つまたは複数によって取得されたアーキテクチャは、アプリケーションサーバーに基づいています。 パフォーマンスを改善するために、多くのアプリケーションサーバーのキャッシュデータをユーザーに迅速に応答時間を提供します。
場合は、データを頻繁に更新されていないため、ユーザーは、もはや正確には古いデータを受け取ることができるキャッシュされたデータの1つの制限は、必要なデータをリフレッシュすることである。 データの更新をより頻繁に追加のオーバーヘッドは、最終的にはアプリケーションサーバー上でパフォーマンスが低下することができます。 SQL Server 2008のより効率的に自動的に中間層アプリケーションの場合、キャッシュされたデータが古くなって通知するために、クエリ通知を使用して、アプリケーションのキャッシュを使用するアプリケーションに役立ちます。
アプリケーションサーバーは、クエリ通知するように更新プログラムは、キャッシュされたデータに影響を与える通知され、データベース上で実行されます購読することができます。 アプリケーションサーバーを動的に更新されたデータを使用してキャッシュを更新することができます。
スケーラブルな共有データベース、Analysis Servicesの
ただし、SQL Server 2005の分析サーバーのキューブを通常は読み取り専用のデータベース、各インスタンスは、独自のデータディレクトリを保持します。 ただし、複数のサーバ間で同期させるキューブでは、Analysis Servicesデータベースのコピーを複数作成することができます、キューブの同期プロセスは、多くのビジネス環境では受け入れられない可能性があります遅延を紹介します。
のSQL Server 2008 Analysis Servicesのスケールを支援し、これらの問題の克服には、Analysis Servicesのデータベースを、単一の集中読み取り専用のコピーを複数のインスタンス間で共有されて、単一の仮想IPアドレスを介してアクセスをAnalysis Servicesの配置図2に示すように。
おわりに
SQL Server 2008を提供する、強力な環境のすべてのデータのニーズのための豊富な。 その先進的なリレーショナルデータベースエンジンは、Analysis Servicesは、Reporting Services、およびIntegration Servicesを使用して、最高のパフォーマンスを提供するために最適です。
新機能と同様のツールや技術を確立一緒に、データ環境の任意のサイズを展開する最適なパフォーマンスを維持するために企業を支援する仕事。
SQL Server 2008の企業の個々のサーバをスケールアップすると、これらのサーバーにワークロードを統合する柔軟性を与えるために、最新の技術動向をサポートします。 また、最大規模のデータベースをスケールアウトするために必要な技術を持つ企業を提供します。
詳細情報:
- は、Microsoft SQL Server 2008の
- SQL Serverデベロッパーセンター
- のSQL Server TechCenterの
"SQL Server 2008のパフォーマンスとスケールのホワイトペーパーから、Microsoft Corporationの許可を得て転載する。 すべての権利予約。 本文ここで見つけることができる。"
球:関連コンテンツ より多くのWebソフトウェアのレビュー、ニュースやヒントをしたい/トリック?
次に 、 私たちのRSSフィードを購読することを確認します!
タグ: データベース 、 マイクロソフト 、 パフォーマンス 、 スケーラビリティ 、 ソリューション 、SQL Server 2008では 、 ホワイトペーパー































返信コメントを残す
その他のコメントBackTypeが搭載