タグ

writebackとfilesystemに関するyassのブックマーク (3)

  • ext3とトランザクション処理

    kjournaldによるコミットとチェックポイント ext3では、トランザクションのコミット操作はカーネルスレッドである「kjournald」によって定期的に行われる。kjournaldは、Linuxに実装されているダイナミックタイマと呼ばれる時間管理のためのタイマ機構を利用し、これらのコミット操作が時系列に沿って実行されるようにする。 kjournaldは、カーネルから起動されるとインターバルが5秒ごとに実行されるタイマリストを作成する。個々のトランザクションは、このタイマリストに現在の時刻+5秒後にコミットが実行されるようにタイマをセットする。kjournaldは5秒置きに起動し、コミットが予定されているトランザクションを登録していた場合は、そのトランザクションをコミットする。ext3では、コミットとチェックポイントはkjournaldの中に一緒に実装されており、コミットが完了するとチ

    ext3とトランザクション処理
    yass
    yass 2014/06/29
    " ただし、書き込むためのバッファにデータがあることを確認してからジャーナリングを行う。また、トランザクションのコミットも、データの書き込みおよびトランザクションのコミットとシーケンシャルに行われる。"
  • mixi Engineers’ Blog » Tokyo Tyrantによる耐高負荷DBの構築

    連休中はWiiのマリオカートをやりまくってやっとVR7000越えたmikioです。愛車はマッハ・バイクとインターセプターです。さて今回は、分散ハッシュデータベースサーバTokyo Tyrantでmixiの最終ログイン時刻を管理するようにした時の苦労話を書きます。 ログイン処理は負荷地獄 mixiでは、全てのユーザについて、各々の最終ログイン時刻を管理しています。「マイミクシィ一覧」や「お気に入り」などの画面で、友人が近い時間にログインしていてコミュニケーションがとりやすい状態にあるかどうか確認できるようにするためです。 mixiのほぼ全てのページはログインしないと見られないページなので、ほぼ全てのページにアクセスされるたびにログイン確認が行われます。したがって、最終ログイン時刻はほぼ全てのページにアクセスされる度に更新されることになります。mixiの中で最も重いデータベースのひとつとして「

    mixi Engineers’ Blog » Tokyo Tyrantによる耐高負荷DBの構築
  • Linux チューニング - Ext3 のパフォーマンスを最大化させる

    じつは自宅サーバのロードアベレージが上がり続けています。分析の結果、ボトルネックは I/O 処理でした。CPU は Athlon64 X2 4400+ ですが、まだまだ当分この CPU で間に合いそうです。HDD は当時は 7200 回転で最速だった HITACHI Deskstar T7K250 SATA2 250GB を RAID1 構成にしたのですが、今思えば速度優先で RAID0 にしておけば良かったと少しだけ後悔。 I/O がボトルネックに成っている理由ですが、Drk7jp が公開しているサービスの全てがキャッシュファイルを利用した高速化手法を取っているのですが、単純にそれらファイルの write 処理が追いついていません。常に何らかのプロセスで I/O 待ち状態が発生しているような状況です。抜的な解決方法としては disk を高速なものに交換する以外ありません。 というわけで

  • 1