NAS(ネットワーク接続型ストレージ,Network Attached Storage)は,増え続けるユーザー用ストレージを確保する必要があるネットワーク管理者にとって,魅力的な技術だ。しかしNASは,あらゆるネットワーク・ストレージのニーズに応えられる万能薬ではない。特に「SQL Server」のユーザーは,NAS装置の選び方に注意する必要がある。
「SQL Server 2005」は,NAS装置の利用を想定して設計されている。実際,NASベンダーの多くが「SQL ServerがNASに対応している」と主張する。しかしその一方でNASベンダーは「NAS装置から直接データベースを動かすのは好ましくない」とも明言している。彼らはNAS装置のパフォーマンスに関して,非常に正直だと言えるだろう。問題はパフォーマンスであって,互換性が問題になることは滅多にない。Windows Server市場で活躍するNASベンダーの多くが「Windows Storage Server 2003 R2」ベースのNASを提供しており,多くのWindows Server管理者は間違いなくこうしたNAS装置の運用や管理に精通している。
パフォーマンスが問題ならば,SQL Server用ストレージには,ミッドレンジからハイエンドのNAS装置が最適なようにも思える。このクラスのNAS装置は処理性能の高いハードウエアを使っていることが一般的であり,膨大なローカル・キャッシュとメモリーの搭載が可能で,より複雑なRAIDなどのフォールト・トレラント・システムを構築できるだけのハードウエア性能を備え,予備のハードウエアによる完全な耐障害性を実現できることも多い。高可用性と高いデータ処理性能をユーザーに提供するために,管理者が必要とするすべての要件を備えている。
ネットワーク性能がデータベースの性能を左右しかねない
問題は,NAS装置のI/Oが極めて低速で,データベース・サーバーの処理性能において致命的な要素となることが多いことである。アプリケーション・サーバーとストレージ間のネットワーク帯域を広げれば,SQL ServerデータベースのI/O性能は改善できる。しかし,ネットワークの混雑など,ストレージ以外の要因によって望ましくない結果がもたらされる危険性が,それでも残ることになる。アプリケーション・サーバーとストレージ間のネットワークは,SQL Serverの動作性能を低下させるボトルネックになりやすい。
そもそもNAS装置は,ネットワーク上の全ユーザーからアクセスできるので,アクセス権や,特定のストレージを特定のアプリケーションに提供するかどうかといった設定を適切に施すことが重要になる。多くのNASベンダーは,SQL ServerでNAS装置を利用する場合に,使用頻度の低い長期保存用データ・ストレージとしてのみ使うよう推奨している。NAS装置に最適なのは,データが頻繁にアクセスされなかったり,アクセス速度が問題とならないような環境だ。こうした環境には,Direct Attached Storage(DAS)やStorage Area Network(SAN)よりもNASの方が向いている。「専用のGビットEthernet(GbE)で接続されている高性能NAS装置ですら,SQL Serverと組み合わせると満足に使えない」などとは言わない。「性能と機能にはコストがかかるし,NASが最適な手段とは限らない」ということである。
どういった用途にNASを使うか
NASベンダーの多くは,使いやすくて大容量のNAS装置に,SQL Serverのバックアップとリストアを簡略化するソフトウエアを付属させた上で「当社のNAS装置はSQL Server市場で強みを発揮する」と主張している。ストレージ・コストの低下が続くことによって,テープ・バックアップ装置を使うバックアップよりも,ディスク・ベースのオンライン・バックアップの方が,コスト面で魅力的になっているからだ。「最初にディスクにバックアップして,それからテープにバックアップする」という運用を採用することによって,SQL Serverデータベースのリアルタイム性能に影響しない完全なデータ保護が可能になる。
データ保護のために,高性能なバックアップや中間的なストレージとしてNAS装置を使うのは,実用的な方法だ。管理している環境に導入できるNAS装置の種類は,予算の額,対象とするSQL Server環境の設計,SQLデータベースで利用したいストレージ機能によって決まる。以下の検討項目は,NAS装置をSQL Serverデータベース用のストレージとしてどの程度うまく利用できるか判断するのに役立つだろう。
使用するアプリケーションはI/O性能に敏感か?
使用するアプリケーションがI/O性能に敏感である場合は,NAS装置を使うとネットワーク接続で遅延が増える可能性があるため,問題が増すかもしれない。
ネットワークはトラフィックの増加に対応可能か?
NAS装置からアプリケーションを問題なく実行できるとしても,そのネットワークがNAS装置から出てくる追加の通信要求を処理できるかどうかが肝心になってくる。NAS装置からデータベースを直接実行するためには,ネットワーク環境としてギガビット・イーサネットと,優れたスイッチが最低限必要である。
使用するアプリケーションはDAS装置の方が向いていないか?
大まかなコストを比較して,NAS装置の方が目的に適していると判断する特別な理由はあるのだろうか。理由がないのならば,DASの方が基本的に導入が簡単だ。
SANは検討したか?
SANを導入するには,ネットワークとアプリケーション・インフラの再設計が必要となる。NASを導入するよりも,コストは相当高い。