@techreport{oai:ipsj.ixsq.nii.ac.jp:00098747, author = {高村, 成道 and 鵜川, 始陽 and 岩崎, 英哉 and Narimichi, Takamura and Tomoharu, Ugawa and Hideya, Iwasaki}, issue = {8}, month = {Feb}, note = {近年,リアルタイム性を必要とし,停止できない Web サービスが増加している.それらのメンテナンス処理はサービスを継続した状態で行う必要がある.このようなメンテナンスをオンラインメンテナンスと呼ぶ.オンラインメンテナンスの例には,データの集計や削除がある.オンラインメンテナンスを行う上で,メンテナンス処理の I/O 負荷が Web サービスに悪影響を及ぼすことが問題となっている.たとえば,データベースサーバ上の数百 GB のログファイルを削除するメンテナンスをオンラインで行う場合,大量の I/O 処理が行われデータベース処理が長時間停止するという事態が生じる.このような問題を解決するために,本研究ではメンテナンスの I/O 処理の実行をゆっくりと行う機構を提案する.Linux においては,I/O 処理の実行順序は I/O スケジューラが決定する.そこで,リアルタイム性を必要とする Web サービスのバックエンドで用いられている I/O スケジューラに,低優先度処理を指定する機能を追加した.実験用のデータベースサーバ上で本機構を評価したところ,既存の I/O スケジューラではデータベースと関係のない I/O 処理の実行中にデータベースのスループットが 30%以下に低下したのに対し,提案する I/O スケジューラでは 75%以上となった., The availablity of web services has been incresingly demanded. To achieve high availablity, database servers used in the backends of web services have to respond in a low latency. Maintenance operations (e.g., deleting log files and mining data) executed by an operator may raise a pressure on I/O subsystem, which increases the latency of database processing. To solve this problem, it is desired to execute maintenance operations in low priority. However, the deadline I/O scheduler, which is recommended for database servers on Linux cannot deal with priorities for I/O operations. In this research, we have extended the deadline I/O scheduler to enable us to assign low priority to a process, which is inherited to the children. Our I/O scheduler can suppress the increase of latency by executing the maintenance operations at low priority. We evaluated the usefulness of our I/O scheduler on a database server. While in the deadline I/O scheduler, maintenance operations degraded the throughput of database processing down to less than 30%, in our I/O scheduler they degraded that down to at most 75% by assigning low priority to maintenance operations.}, title = {低優先度処理を指定可能なリアルタイム処理向けI/Oスケジューラ}, year = {2014} }