タグ

fsyncとioに関するyassのブックマーク (2)

  • Overwriting is much faster than appending

    Writing small volume of data (Bytes-MBs) with sync (fsync()/fdatasync()/O_SYNC/O_DSYNC) is very common for RDBMS and is needed to guarantee durability. For transactional log files, sync happens per commit. For data files, sync happens at checkpoint etc. Typically RDBMS does syncing data very frequently. In this case, overwriting is much faster than appending for most filesystems/storages. Overwrit

  • 「ディスク」への書き込み性能を上げるには - (ひ)メモ

    ユーザランドのプロセスから見たwrite(2)は、ページキャッシュのおかげで(メモリが潤沢にある環境下では)ブロックされない(待たされない)というのは id:naoya さんの丁寧な解説のおかげでわかると思うのですが、一方、fsync(2)などの実際にディスクに書き込む処理、 あと id:hirose31 さんがコメントしてますが、アプリケーションが SYNC モードでファイルを開いてたり、明示的に fsync() してたりするとそこで wait が発生するのは言わずもがな、です。 Linux I/O のお話 write 編 - naoyaのはてなダイアリー The fsync() function does not return until the system has completed that action or until an error is detected. fsync

    「ディスク」への書き込み性能を上げるには - (ひ)メモ
    yass
    yass 2012/03/09
    " ユーザランドのプロセスから見たwrite(2)は、ページキャッシュのおかげでブロックされない / fsync(2)などの実際にディスクに書き込む処理は「ディスク」自身が『書き込みが終わったよ』というまでブロック "
  • 1