GNU/Linux >> Linux の 問題 >  >> Linux

SQLServerのパフォーマンスを向上させるための5つのクイックヒント

データベースサーバーは、Googleからセブン-イレブンに至るまでの現代のビジネスの基礎です。コンビニエンスストアや食料品店でクレジットカードを使用すると、データベースに裏打ちされたPOSシステムに購入が登録されます。クレジットカード会社は、財務記録を含むデータベースサーバーにファンドの送金を登録します。割引カードを使用すると、さらに別のデータベースサーバーが機能します。データベースを使用すると、企業は在庫の追跡、マージン分析の実行、購入の自動化、顧客の傾向の特定を行うことができ、これらすべてをこれまでになく迅速かつ効率的に行うことができます。

購入と経費を追跡するためだけに、ある種のデータベースサーバーに依存しないビジネスを訪問してから長い時間が経ちました。しかし、私はこれらのデータベースが継続的に適切に機能することを保証する計画がない企業と常に連絡を取り合っています。

Atlantic.NetデータセンターのSQLホスティングは、ITリソースの時間のかかるブラックホールではなく、データベースがビジネスインフラストラクチャの重要なコンポーネントであり続けるのに役立ちます。

最近、エンジニアリングチームと話し合い、それを実現するためのヒントをいくつかご紹介しました。

ヒント1:データセンターでホストする

電圧低下、停電、または単なる電圧変動などの単純な電力品質の問題により、サーバーの電源がオフになる可能性があります。 SQLベースのデータベースシステムは、これらの予期しないシャットダウンの影響を受けやすく、トランザクションログのエラーやデータベースの不安定性を引き起こします。同じデータベースサーバーを安全なデータセンター(訓練を受けたエンジニアが毎日毎秒電力品質を監視している)でホストすることで、100%の稼働時間を確保できます。

したがって、営業日を開始する準備ができたら、SQLデータベースも開始できるようになります!

ヒント2:IOPSを最大化する

データベースシステムの重要なパフォーマンスメトリックの1つは、1秒あたりの入出力操作(IOPS)です。ここでは、SQLなどのデータベースシステムの主要な運用指標であるストレージデバイスの読み取りと書き込みの速度を測定するために、IOPSが重要です。

データベースの読み取りと書き込みでは、ほとんどのハードディスクを物理的に移動する必要があることに注意してください。これには時間がかかります。特に、ディスクの別々の物理領域から読み取りと書き込みを行う必要がある場合はそうです。読み取りタスクと書き込みタスクを同時に実行することで、管理作業をほとんど必要とせずにこのプロセスを高速化できます。

オペレーティングシステムとアプリケーションの両方を処理する単一のディスクアレイの代わりに、別々のディスク上の各タスクを処理するために2つのアレイを選択します。データベースに高RPMのシリアル接続SCSIドライブを選択し、オペレーティングシステムにエンタープライズレベルのSATAドライブを選択すると、読み取りと書き込みのパフォーマンスが大幅に向上します。

ヒント3:RAID:バグを殺すだけではありません

サーバー管理者であれば、おそらく独立ディスクの冗長アレイ(RAID)の概念に精通しているでしょう。管理者は、RAIDアルゴリズムを使用して、データセットを複数のドライブに分散させることができます。使用するRAIDアルゴリズムに応じて、RAIDは冗長性(ミラーリングによる)、パフォーマンスの向上(ストライピングによる)、または両方の組み合わせを提供できます。

Atlantic.Netでは、SQLアプリケーションにRAID10を使用することをお勧めします。 RAID 10は、ミラーリングとストライピングを使用して、IOPSを最大化しながら、ハードウェア障害に対する重要な保護を提供します。 Microsoftは私たちに同意します。

RAID環境にSQLをデプロイするときは、常に専用のコプロセッサーを備えたハードウェアRAIDカードを使用してください。そうすることで、時間のかかるRAID計算を行うのではなく、CPUを解放してサイクル集約型のアプリケーションに集中させることができます。

ヒント4:コンピューターは1つだけ欲しい

通常、同じサーバーでさまざまな種類のアプリケーションを実行すると、サーバーの効率が低下します。

最高のパフォーマンスを得るには、サービスをセグメント化することをお勧めします。たとえば、ファイアウォールと負荷分散専用のアプライアンスを使用して、あるセットのボックスでWebサーバーを実行し、別のセットでデータベースサーバーを実行します。

ヒント5:キャッシュ

ハードディスクを物理的に移動する必要をなくし、その過程でパフォーマンスを向上させる1つの方法は、一般的に使用されるデータをメモリにキャッシュして、データベーストランザクションを完了するために必要な手順の数を減らすことです。 1つ以上のプロキシサーバーまたはSQLサーバー上のキャッシュアプ​​リケーションを実行して、キャッシュされたデータの要求を処理し、SQLベースのシステムの負荷を大幅に減らすことができます。 Memcached.orgから入手できるMemcachedなど、この機能を提供するために利用できる優れたオープンソースアプリケーションがあります。

ハードウェア対応の書き込みキャッシュは、通常、ハードディスクまたはRAIDコントローラーカードでもサポートされています。ただし、ブロックサイズ、データベースソフトウェア、RAIDアルゴリズム、および使用されているコントローラーのタイプによっては、ハードウェア書き込みキャッシュによってI/Oパフォーマンスが実際に低下する可能性があります。さらに、特定の種類のテーブルを特定の種類のハードウェア対応の書き込みキャッシュと組み合わせて使用​​すると、管理者は、予期しないアプリケーションやサーバーのシャットダウンが発生した場合に、深刻なデータベースリカバリの問題を引き起こす可能性があります。

データベースおよびSQLサーバーには高可用性が必要です。したがって、100%の稼働時間を確保することは、一般的に企業のベストプラクティスとして受け入れられています。可用性は非常に重要であるため、組織全体のスタッフ、ユーザー、および運用に悪影響を与えることにより、生産性に大きな影響を与える可能性があります。 SQL Serverに社内ホスティングソリューションを選択した場合、セキュリティ、信頼性、およびスケーラビリティがほとんどまたはまったくないことを意味する可能性があります。または、SQL Serverをサービスプロバイダーでホストすると、データベースの稼働時間、スケーラビリティ、およびパフォーマンスが向上します。 SQLホスティングサーバーソリューションは、サーバー管理をサービスプロバイダーにアウトソーシングすることで、最適なパフォーマンスを提供することもできます。最適なサーバーホスティングと適切なSQLセットアップを実現するには、100%の稼働率を保証して生産性を最大化できるサービスプロバイダーを選択してください。

1-800-521-5881までお電話ください 今後のSQLと受賞歴のあるVPSホスティングソリューションについて話し合うため。


Linux
  1. MySQLサーバーの5つの最高の無料代替品

  2. OpenShiftocクライアントのクイックヒント

  3. SQLデータベースの互換性レベルを変更する方法

  1. LAMPとLEMP–WebサーバーにApacheまたはnginxを選択するためのヒント

  2. Microsoft SQL Server for Linux (fedora) をインストールするにはどうすればよいですか?

  3. Sql Server Express は Linux で運用できますか?

  1. LinuxPCのパフォーマンスを向上させるためのオープンソースツールとヒント

  2. 初心者のためのLinuxサーバーを保護するための6つのオープンソースツールとヒント

  3. Linuxサーバーのセキュリティを開始するための5つのヒント